@cesium/engine 8.0.0 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Build/ThirdParty/Workers/z-worker-pako.js +1 -5
- package/Build/Workers/{chunk-UEXTBDBE.js → chunk-24YTYWNB.js} +10 -10
- package/Build/Workers/{chunk-2A75IWRS.js → chunk-2632RVPI.js} +7 -7
- package/Build/Workers/{chunk-TTUZP4BO.js → chunk-2KACWKS4.js} +4 -4
- package/Build/Workers/{chunk-YJEBABKH.js → chunk-2XPLH3JY.js} +7 -7
- package/Build/Workers/{chunk-7TC63SJW.js → chunk-2ZBL3MVO.js} +8 -8
- package/Build/Workers/{chunk-GRC2ZTAF.js → chunk-3NCVAGDA.js} +14 -14
- package/Build/Workers/{chunk-PGSJK77E.js → chunk-5R6VWLMH.js} +6 -6
- package/Build/Workers/{chunk-BROJAZRZ.js → chunk-5TIV3L26.js} +13 -13
- package/Build/Workers/{chunk-MDWEGWPA.js → chunk-6WF3KIF5.js} +10 -10
- package/Build/Workers/{chunk-BIKA3NRA.js → chunk-73FKKY52.js} +5 -5
- package/Build/Workers/{chunk-FJKNFAKQ.js → chunk-7COR472O.js} +10 -10
- package/Build/Workers/{chunk-OGXZVPPM.js → chunk-ADOVHYWO.js} +5 -5
- package/Build/Workers/{chunk-HU6N6EXB.js → chunk-BCU2LH5T.js} +12 -11
- package/Build/Workers/{chunk-I46ZRR5W.js → chunk-C3XBUYBO.js} +17 -17
- package/Build/Workers/{chunk-EHWHNOEX.js → chunk-C6OI26DR.js} +1 -1
- package/Build/Workers/{chunk-EERJKOAF.js → chunk-CO35JNNE.js} +4 -4
- package/Build/Workers/{chunk-SH5USDPI.js → chunk-DGDUKCJJ.js} +6 -6
- package/Build/Workers/{chunk-2UPKWTMJ.js → chunk-DPUSFA7S.js} +6 -6
- package/Build/Workers/{chunk-Z3TIFFGF.js → chunk-E6WXPSJS.js} +7 -7
- package/Build/Workers/{chunk-4H7PY4U5.js → chunk-EOXYZ34O.js} +2 -2
- package/Build/Workers/{chunk-FZRIVR7Y.js → chunk-EPKE7GE3.js} +5 -5
- package/Build/Workers/{chunk-VOXYEYJT.js → chunk-GFA4SMXV.js} +11 -11
- package/Build/Workers/{chunk-F3YA3Y2Z.js → chunk-GXUXEOE2.js} +1 -1
- package/Build/Workers/{chunk-X4356LRH.js → chunk-HBQPB6IH.js} +12 -12
- package/Build/Workers/{chunk-SOWMRMWA.js → chunk-I37B3MZ2.js} +1 -1
- package/Build/Workers/{chunk-2FRVPMCS.js → chunk-L4BW3RUA.js} +7 -7
- package/Build/Workers/{chunk-34FXV7D7.js → chunk-LAQP3SCC.js} +2 -2
- package/Build/Workers/{chunk-FNIRWHJB.js → chunk-LQJ5FFFR.js} +10 -10
- package/Build/Workers/{chunk-Y2ME2IJV.js → chunk-M2AYBTNH.js} +13 -13
- package/Build/Workers/{chunk-DDUQAJ4P.js → chunk-MWV7IZK4.js} +7 -7
- package/Build/Workers/{chunk-STW2DGFI.js → chunk-N4KXMWQU.js} +2 -2
- package/Build/Workers/{chunk-Y5UQJLYE.js → chunk-NP2GYYE5.js} +6 -6
- package/Build/Workers/{chunk-PPH7OFP3.js → chunk-NZWNZA6S.js} +5 -5
- package/Build/Workers/{chunk-EG6PTBY2.js → chunk-P2YAAMT2.js} +15 -15
- package/Build/Workers/{chunk-LPR3YNP2.js → chunk-P4XKB3QZ.js} +5 -5
- package/Build/Workers/{chunk-4DO5W5XZ.js → chunk-PXB7T27O.js} +6 -6
- package/Build/Workers/{chunk-5QULIR53.js → chunk-QCQUZGXI.js} +4 -4
- package/Build/Workers/{chunk-7ZFGPDJA.js → chunk-QKBGRKKG.js} +4 -4
- package/Build/Workers/{chunk-3VAZEH7M.js → chunk-RMOEYCZW.js} +2 -2
- package/Build/Workers/{chunk-GATZHF3K.js → chunk-RSJXEO2A.js} +2 -2
- package/Build/Workers/{chunk-M7ERACJJ.js → chunk-RV7ZOSS6.js} +13 -13
- package/Build/Workers/{chunk-JURN7NPV.js → chunk-SE4PXOEA.js} +17 -17
- package/Build/Workers/{chunk-XGI5BXZY.js → chunk-SS4ESNE3.js} +2 -2
- package/Build/Workers/{chunk-G43QFN4Q.js → chunk-TJBU6GML.js} +6 -6
- package/Build/Workers/{chunk-BBWDMCVU.js → chunk-TZORKRNK.js} +1 -1
- package/Build/Workers/{chunk-23UFSGND.js → chunk-VR5RBW52.js} +7 -7
- package/Build/Workers/{chunk-A5DWLWCY.js → chunk-WHUSTDIB.js} +10 -10
- package/Build/Workers/{chunk-T3XIFPYR.js → chunk-X2F6BEPY.js} +13 -13
- package/Build/Workers/{chunk-BG4UCVXN.js → chunk-X6XOMPWL.js} +3 -3
- package/Build/Workers/{chunk-YWTJ2B4B.js → chunk-YDVSBWEO.js} +1 -1
- package/Build/Workers/{chunk-2FWRMUTY.js → chunk-YV4H2Y7M.js} +4 -4
- package/Build/Workers/{chunk-ZT7KWISZ.js → chunk-Z7FQLK6N.js} +4 -4
- package/Build/Workers/{chunk-F4HFJMGM.js → chunk-ZNVSKMQ2.js} +6 -6
- package/Build/Workers/{chunk-KKCR2YOP.js → chunk-ZYPTP7GS.js} +11 -11
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +25 -25
- package/Build/Workers/createGroundPolylineGeometry.js +22 -22
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +33 -33
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +12 -12
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +22 -22
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +19 -19
- package/Build/Workers/createWallGeometry.js +24 -24
- package/Build/Workers/createWallOutlineGeometry.js +23 -23
- package/Build/Workers/decodeDraco.js +11 -11
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +11 -11
- package/Build/Workers/transcodeKTX2.js +7 -7
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Source/Core/Check.d.ts +127 -0
- package/Source/Core/Check.js +0 -1
- package/Source/Core/Geometry.js +1 -1
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/PolygonGeometry.js +1 -1
- package/Source/Core/VerticalExaggeration.js +2 -1
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/Billboard.js +32 -0
- package/Source/Scene/BillboardCollection.js +1 -1
- package/Source/Scene/BingMapsImageryProvider.js +4 -0
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +2 -9
- package/Source/Scene/Cesium3DTileset.js +4 -39
- package/Source/Scene/Globe.js +0 -67
- package/Source/Scene/Label.js +33 -0
- package/Source/Scene/LabelCollection.js +2 -1
- package/Source/Scene/Primitive.js +0 -3
- package/Source/Scene/SensorVolumePortionToDisplay.js +1 -1
- package/Source/Scene/VoxelBoxShape.js +0 -15
- package/Source/Scene/VoxelCylinderShape.js +14 -131
- package/Source/Scene/VoxelEllipsoidShape.js +136 -227
- package/Source/Scene/VoxelPrimitive.js +106 -14
- package/Source/Scene/VoxelRenderResources.js +9 -3
- package/Source/Scene/VoxelShape.js +0 -10
- package/Source/Scene/processVoxelProperties.js +1 -0
- package/Source/Shaders/Voxels/IntersectBox.glsl +21 -47
- package/Source/Shaders/Voxels/IntersectBox.js +21 -47
- package/Source/Shaders/Voxels/IntersectClippingPlanes.glsl +1 -1
- package/Source/Shaders/Voxels/IntersectClippingPlanes.js +1 -1
- package/Source/Shaders/Voxels/IntersectCylinder.glsl +66 -96
- package/Source/Shaders/Voxels/IntersectCylinder.js +66 -96
- package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +226 -154
- package/Source/Shaders/Voxels/IntersectEllipsoid.js +226 -154
- package/Source/Shaders/Voxels/IntersectionUtils.glsl +33 -11
- package/Source/Shaders/Voxels/IntersectionUtils.js +33 -11
- package/Source/Shaders/Voxels/Megatexture.glsl +1 -2
- package/Source/Shaders/Voxels/Megatexture.js +1 -2
- package/Source/Shaders/Voxels/Octree.glsl +14 -9
- package/Source/Shaders/Voxels/Octree.js +14 -9
- package/Source/Shaders/Voxels/VoxelFS.glsl +93 -43
- package/Source/Shaders/Voxels/VoxelFS.js +93 -43
- package/Source/Shaders/Voxels/VoxelUtils.glsl +31 -0
- package/Source/Shaders/Voxels/VoxelUtils.js +33 -0
- package/Source/Shaders/Voxels/convertUvToBox.glsl +24 -3
- package/Source/Shaders/Voxels/convertUvToBox.js +24 -4
- package/Source/Shaders/Voxels/convertUvToCylinder.glsl +50 -8
- package/Source/Shaders/Voxels/convertUvToCylinder.js +50 -8
- package/Source/Shaders/Voxels/convertUvToEllipsoid.glsl +82 -53
- package/Source/Shaders/Voxels/convertUvToEllipsoid.js +82 -53
- package/Source/ThirdParty/Workers/z-worker-pako.js +1 -1
- package/Source/Workers/createGeometry.js +1 -1
- package/index.d.ts +251 -34
- package/index.js +77 -76
- package/package.json +2 -2
|
@@ -96,9 +96,8 @@ function VoxelCylinderShape() {
|
|
|
96
96
|
* @readonly
|
|
97
97
|
*/
|
|
98
98
|
this.shaderUniforms = {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
cylinderUvToRenderRadiusMin: 0.0,
|
|
99
|
+
cylinderRenderHeightMinMax: new Cartesian2(),
|
|
100
|
+
cylinderRenderRadiusMinMax: new Cartesian2(),
|
|
102
101
|
cylinderRenderAngleMinMax: new Cartesian2(),
|
|
103
102
|
cylinderUvToShapeUvRadius: new Cartesian2(),
|
|
104
103
|
cylinderUvToShapeUvHeight: new Cartesian2(),
|
|
@@ -113,10 +112,7 @@ function VoxelCylinderShape() {
|
|
|
113
112
|
*/
|
|
114
113
|
this.shaderDefines = {
|
|
115
114
|
CYLINDER_HAS_RENDER_BOUNDS_RADIUS_MIN: undefined,
|
|
116
|
-
CYLINDER_HAS_RENDER_BOUNDS_RADIUS_MAX: undefined,
|
|
117
115
|
CYLINDER_HAS_RENDER_BOUNDS_RADIUS_FLAT: undefined,
|
|
118
|
-
CYLINDER_HAS_RENDER_BOUNDS_HEIGHT: undefined,
|
|
119
|
-
CYLINDER_HAS_RENDER_BOUNDS_HEIGHT_FLAT: undefined,
|
|
120
116
|
CYLINDER_HAS_RENDER_BOUNDS_ANGLE: undefined,
|
|
121
117
|
CYLINDER_HAS_RENDER_BOUNDS_ANGLE_RANGE_EQUAL_ZERO: undefined,
|
|
122
118
|
CYLINDER_HAS_RENDER_BOUNDS_ANGLE_RANGE_UNDER_HALF: undefined,
|
|
@@ -143,17 +139,6 @@ function VoxelCylinderShape() {
|
|
|
143
139
|
}
|
|
144
140
|
|
|
145
141
|
const scratchScale = new Cartesian3();
|
|
146
|
-
const scratchBoundsTranslation = new Cartesian3();
|
|
147
|
-
const scratchBoundsScale = new Cartesian3();
|
|
148
|
-
const scratchBoundsScaleMatrix = new Matrix3();
|
|
149
|
-
const scratchTransformLocalToBounds = new Matrix4();
|
|
150
|
-
const scratchTransformUvToBounds = new Matrix4();
|
|
151
|
-
|
|
152
|
-
const transformUvToLocal = Matrix4.fromRotationTranslation(
|
|
153
|
-
Matrix3.fromUniformScale(2.0, new Matrix3()),
|
|
154
|
-
new Cartesian3(-1.0, -1.0, -1.0),
|
|
155
|
-
new Matrix4()
|
|
156
|
-
);
|
|
157
142
|
|
|
158
143
|
/**
|
|
159
144
|
* Update the shape's state.
|
|
@@ -339,11 +324,7 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
339
324
|
epsilonAngleDiscontinuity
|
|
340
325
|
);
|
|
341
326
|
|
|
342
|
-
const renderIsDefaultMaxRadius = renderMaxRadius === defaultMaxRadius;
|
|
343
327
|
const renderIsDefaultMinRadius = renderMinRadius === defaultMinRadius;
|
|
344
|
-
const renderIsDefaultHeight =
|
|
345
|
-
renderMinHeight === defaultMinHeight &&
|
|
346
|
-
renderMaxHeight === defaultMaxHeight;
|
|
347
328
|
const renderIsAngleReversed = renderMaxAngle < renderMinAngle;
|
|
348
329
|
const renderAngleRange =
|
|
349
330
|
renderMaxAngle - renderMinAngle + renderIsAngleReversed * defaultAngleRange;
|
|
@@ -376,22 +357,16 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
376
357
|
shaderDefines["CYLINDER_HAS_RENDER_BOUNDS_RADIUS_MIN"] = true;
|
|
377
358
|
shaderDefines["CYLINDER_INTERSECTION_INDEX_RADIUS_MIN"] = intersectionCount;
|
|
378
359
|
intersectionCount += 1;
|
|
379
|
-
|
|
380
|
-
shaderUniforms.cylinderUvToRenderRadiusMin =
|
|
381
|
-
renderMaxRadius / renderMinRadius;
|
|
382
|
-
}
|
|
383
|
-
if (!renderIsDefaultMaxRadius) {
|
|
384
|
-
shaderDefines["CYLINDER_HAS_RENDER_BOUNDS_RADIUS_MAX"] = true;
|
|
385
360
|
}
|
|
361
|
+
shaderUniforms.cylinderRenderRadiusMinMax = Cartesian2.fromElements(
|
|
362
|
+
renderMinRadius,
|
|
363
|
+
renderMaxRadius,
|
|
364
|
+
shaderUniforms.cylinderRenderRadiusMinMax
|
|
365
|
+
);
|
|
366
|
+
|
|
386
367
|
if (renderMinRadius === renderMaxRadius) {
|
|
387
368
|
shaderDefines["CYLINDER_HAS_RENDER_BOUNDS_RADIUS_FLAT"] = true;
|
|
388
369
|
}
|
|
389
|
-
if (!renderIsDefaultHeight) {
|
|
390
|
-
shaderDefines["CYLINDER_HAS_RENDER_BOUNDS_HEIGHT"] = true;
|
|
391
|
-
}
|
|
392
|
-
if (renderMinHeight === renderMaxHeight) {
|
|
393
|
-
shaderDefines["CYLINDER_HAS_RENDER_BOUNDS_HEIGHT_FLAT"] = true;
|
|
394
|
-
}
|
|
395
370
|
if (!shapeIsDefaultRadius) {
|
|
396
371
|
shaderDefines["CYLINDER_HAS_SHAPE_BOUNDS_RADIUS"] = true;
|
|
397
372
|
|
|
@@ -442,42 +417,11 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
442
417
|
shaderUniforms.cylinderUvToShapeUvHeight
|
|
443
418
|
);
|
|
444
419
|
}
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
1.0 / renderMaxRadius,
|
|
451
|
-
1.0 / (heightScale === 0.0 ? 1.0 : heightScale),
|
|
452
|
-
scratchBoundsScale
|
|
453
|
-
);
|
|
454
|
-
// -inverse(scale) * translation // affine inverse
|
|
455
|
-
// -inverse(scale) * 0.5 * (minHeight + maxHeight)
|
|
456
|
-
const translateLocalToBounds = Cartesian3.fromElements(
|
|
457
|
-
0.0,
|
|
458
|
-
0.0,
|
|
459
|
-
-scaleLocalToBounds.z * 0.5 * (renderMinHeight + renderMaxHeight),
|
|
460
|
-
scratchBoundsTranslation
|
|
461
|
-
);
|
|
462
|
-
const transformLocalToBounds = Matrix4.fromRotationTranslation(
|
|
463
|
-
Matrix3.fromScale(scaleLocalToBounds, scratchBoundsScaleMatrix),
|
|
464
|
-
translateLocalToBounds,
|
|
465
|
-
scratchTransformLocalToBounds
|
|
466
|
-
);
|
|
467
|
-
const transformUvToBounds = Matrix4.multiplyTransformation(
|
|
468
|
-
transformLocalToBounds,
|
|
469
|
-
transformUvToLocal,
|
|
470
|
-
scratchTransformUvToBounds
|
|
471
|
-
);
|
|
472
|
-
shaderUniforms.cylinderUvToRenderBoundsScale = Matrix4.getScale(
|
|
473
|
-
transformUvToBounds,
|
|
474
|
-
shaderUniforms.cylinderUvToRenderBoundsScale
|
|
475
|
-
);
|
|
476
|
-
shaderUniforms.cylinderUvToRenderBoundsTranslate = Matrix4.getTranslation(
|
|
477
|
-
transformUvToBounds,
|
|
478
|
-
shaderUniforms.cylinderUvToRenderBoundsTranslate
|
|
479
|
-
);
|
|
480
|
-
}
|
|
420
|
+
shaderUniforms.cylinderRenderHeightMinMax = Cartesian2.fromElements(
|
|
421
|
+
renderMinHeight,
|
|
422
|
+
renderMaxHeight,
|
|
423
|
+
shaderUniforms.cylinderRenderHeightMinMax
|
|
424
|
+
);
|
|
481
425
|
|
|
482
426
|
if (shapeIsAngleReversed) {
|
|
483
427
|
shaderDefines["CYLINDER_HAS_SHAPE_BOUNDS_ANGLE_MIN_MAX_REVERSED"] = true;
|
|
@@ -501,7 +445,7 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
501
445
|
shaderUniforms.cylinderRenderAngleMinMax = Cartesian2.fromElements(
|
|
502
446
|
renderMinAngle,
|
|
503
447
|
renderMaxAngle,
|
|
504
|
-
shaderUniforms.
|
|
448
|
+
shaderUniforms.cylinderRenderAngleMinMax
|
|
505
449
|
);
|
|
506
450
|
}
|
|
507
451
|
|
|
@@ -716,67 +660,6 @@ VoxelCylinderShape.prototype.computeOrientedBoundingBoxForSample = function (
|
|
|
716
660
|
);
|
|
717
661
|
};
|
|
718
662
|
|
|
719
|
-
const scratchOrientedBoundingBox = new OrientedBoundingBox();
|
|
720
|
-
const scratchVoxelScale = new Cartesian3();
|
|
721
|
-
const scratchRootScale = new Cartesian3();
|
|
722
|
-
const scratchScaleRatio = new Cartesian3();
|
|
723
|
-
|
|
724
|
-
/**
|
|
725
|
-
* Computes an approximate step size for raymarching the root tile of a voxel grid.
|
|
726
|
-
* The update function must be called before calling this function.
|
|
727
|
-
*
|
|
728
|
-
* @param {Cartesian3} dimensions The voxel grid dimensions for a tile.
|
|
729
|
-
* @returns {number} The step size.
|
|
730
|
-
*/
|
|
731
|
-
VoxelCylinderShape.prototype.computeApproximateStepSize = function (
|
|
732
|
-
dimensions
|
|
733
|
-
) {
|
|
734
|
-
//>>includeStart('debug', pragmas.debug);
|
|
735
|
-
Check.typeOf.object("dimensions", dimensions);
|
|
736
|
-
//>>includeEnd('debug');
|
|
737
|
-
|
|
738
|
-
const shapeTransform = this.shapeTransform;
|
|
739
|
-
const minRadius = this._minimumRadius;
|
|
740
|
-
const maxRadius = this._maximumRadius;
|
|
741
|
-
const minHeight = this._minimumHeight;
|
|
742
|
-
const maxHeight = this._maximumHeight;
|
|
743
|
-
const minAngle = this._minimumAngle;
|
|
744
|
-
const maxAngle = this._maximumAngle;
|
|
745
|
-
|
|
746
|
-
const lerpRadius = 1.0 - 1.0 / dimensions.x;
|
|
747
|
-
const lerpHeight = 1.0 - 1.0 / dimensions.y;
|
|
748
|
-
const lerpAngle = 1.0 - 1.0 / dimensions.z;
|
|
749
|
-
|
|
750
|
-
// Compare the size of an outermost cylinder voxel to the total cylinder
|
|
751
|
-
const voxelMinimumRadius = CesiumMath.lerp(minRadius, maxRadius, lerpRadius);
|
|
752
|
-
const voxelMinimumHeight = CesiumMath.lerp(minHeight, maxHeight, lerpHeight);
|
|
753
|
-
const voxelMinimumAngle = CesiumMath.lerp(minAngle, maxAngle, lerpAngle);
|
|
754
|
-
const voxelMaximumRadius = maxRadius;
|
|
755
|
-
const voxelMaximumHeight = maxHeight;
|
|
756
|
-
const voxelMaximumAngle = maxAngle;
|
|
757
|
-
|
|
758
|
-
const voxelObb = getCylinderChunkObb(
|
|
759
|
-
voxelMinimumRadius,
|
|
760
|
-
voxelMaximumRadius,
|
|
761
|
-
voxelMinimumHeight,
|
|
762
|
-
voxelMaximumHeight,
|
|
763
|
-
voxelMinimumAngle,
|
|
764
|
-
voxelMaximumAngle,
|
|
765
|
-
shapeTransform,
|
|
766
|
-
scratchOrientedBoundingBox
|
|
767
|
-
);
|
|
768
|
-
|
|
769
|
-
const voxelScale = Matrix3.getScale(voxelObb.halfAxes, scratchVoxelScale);
|
|
770
|
-
const rootScale = Matrix4.getScale(shapeTransform, scratchRootScale);
|
|
771
|
-
const scaleRatio = Cartesian3.divideComponents(
|
|
772
|
-
voxelScale,
|
|
773
|
-
rootScale,
|
|
774
|
-
scratchScaleRatio
|
|
775
|
-
);
|
|
776
|
-
const stepSize = Cartesian3.minimumComponent(scaleRatio);
|
|
777
|
-
return stepSize;
|
|
778
|
-
};
|
|
779
|
-
|
|
780
663
|
/**
|
|
781
664
|
* Defines the minimum bounds of the shape. Corresponds to minimum radius, height, angle.
|
|
782
665
|
*
|