Skip to content

Commit

Permalink
Merge pull request #5089 from AnalyticalGraphicsInc/i3dm-rtc
Browse files Browse the repository at this point in the history
3D Tiles - i3dm RTC_CENTER
  • Loading branch information
pjcozzi committed Mar 10, 2017
2 parents 999f233 + fefab7b commit 8ec5bc0
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 0 deletions.
9 changes: 9 additions & 0 deletions Source/Scene/Instanced3DModel3DTileContent.js
Expand Up @@ -372,6 +372,12 @@ define([

var eastNorthUp = featureTable.getGlobalProperty('EAST_NORTH_UP');

var rtcCenter;
var rtcCenterArray = featureTable.getGlobalProperty('RTC_CENTER');
if (defined(rtcCenterArray)) {
rtcCenter = Cartesian3.unpack(rtcCenterArray);
}

var instances = collectionOptions.instances;
var instancePosition = new Cartesian3();
var instancePositionArray = new Array(3);
Expand Down Expand Up @@ -411,6 +417,9 @@ define([
}
}
Cartesian3.unpack(position, 0, instancePosition);
if (defined(rtcCenter)) {
Cartesian3.add(instancePosition, rtcCenter, instancePosition);
}
instanceTranslationRotationScale.translation = instancePosition;

// Get the instance rotation
Expand Down
Binary file not shown.
29 changes: 29 additions & 0 deletions Specs/Data/Cesium3DTiles/Instanced/InstancedRTC/tileset.json
@@ -0,0 +1,29 @@
{
"asset": {
"version": "0.0"
},
"properties": {
"Height": {
"minimum": 20,
"maximum": 20
}
},
"geometricError": 70,
"root": {
"refine": "add",
"boundingVolume": {
"region": [
-1.3197004795898053,
0.6988582109,
-1.3196595204101946,
0.6988897891,
0,
30
]
},
"geometricError": 0,
"content": {
"url": "instancedRTC.i3dm"
}
}
}
7 changes: 7 additions & 0 deletions Specs/Scene/Instanced3DModel3DTileContentSpec.js
Expand Up @@ -35,6 +35,7 @@ defineSuite([
var oct16POrientationUrl = './Data/Cesium3DTiles/Instanced/InstancedOct32POrientation/';
var scaleUrl = './Data/Cesium3DTiles/Instanced/InstancedScale/';
var scaleNonUniformUrl = './Data/Cesium3DTiles/Instanced/InstancedScaleNonUniform/';
var rtcUrl = './Data/Cesium3DTiles/Instanced/InstancedRTC';
var quantizedUrl = './Data/Cesium3DTiles/Instanced/InstancedQuantized/';
var quantizedOct32POrientationUrl = './Data/Cesium3DTiles/Instanced/InstancedQuantizedOct32POrientation/';
var withTransformUrl = './Data/Cesium3DTiles/Instanced/InstancedWithTransform/';
Expand Down Expand Up @@ -188,6 +189,12 @@ defineSuite([
});
});

it('renders with RTC_CENTER semantic', function() {
return Cesium3DTilesTester.loadTileset(scene, rtcUrl).then(function(tileset) {
Cesium3DTilesTester.expectRenderTileset(scene, tileset);
});
});

it('renders with feature defined quantized position', function() {
return Cesium3DTilesTester.loadTileset(scene, quantizedUrl).then(function(tileset) {
Cesium3DTilesTester.expectRenderTileset(scene, tileset);
Expand Down

0 comments on commit 8ec5bc0

Please sign in to comment.