cesium icon indicating copy to clipboard operation
cesium copied to clipboard

Large ellipsoid causes DeveloperError: All attribute lists must have the same number of attributes.

Open stewienj opened this issue 2 years ago • 5 comments

I am getting an error that stops rendering. The message is "DeveloperError: All attribute lists must have the same number of attributes."

Sandcastle example: Simple large ellipsoid example

Browser: Microsoft Edge version 107

Operating System: Windows 10 x64 21H2

Cesium version: 1.99

Reproducing this error depends on the position and orientation of the ellipse, and the number of slice partions. For example below is the code from the sandcastle example above, if you set slicePartitions to 141 the error goes away, but setting it to 146 brings the error back.

const viewer = new Cesium.Viewer("cesiumContainer");

viewer.entities.add({
  name: "Top and bottom cut out",
  position: Cesium.Cartesian3.fromDegrees(-102.0, 40.0, 140000.0),
  ellipsoid: {
    radii: new Cesium.Cartesian3(39000000.0, 39000000.0, 39000000.0),
    innerRadii: new Cesium.Cartesian3(3.0, 3.0, 3.0),
    minimumCone: Cesium.Math.toRadians(60.0),
    maximumCone: Cesium.Math.toRadians(140.0),
    material: Cesium.Color.DARKCYAN.withAlpha(0.3),
    outline: true,
  },
});

viewer.zoomTo(viewer.entities);

Call stack:

DeveloperError: All attribute lists must have the same number of attributes.

Error
    at new DeveloperError (https://sandcastle.cesium.com/CesiumUnminified/Workers/Check-40d84a28.js:64:13)
    at Geometry.computeNumberOfVertices (https://sandcastle.cesium.com/CesiumUnminified/Workers/GeometryAttribute-51d61732.js:326:17)
    at updateGeometryAfterSplit (https://sandcastle.cesium.com/CesiumUnminified/Workers/GeometryPipeline-576f16cd.js:2444:57)
    at updateInstanceAfterSplit (https://sandcastle.cesium.com/CesiumUnminified/Workers/GeometryPipeline-576f16cd.js:2489:20)
    at splitLongitudeTriangles (https://sandcastle.cesium.com/CesiumUnminified/Workers/GeometryPipeline-576f16cd.js:3042:5)
    at GeometryPipeline.splitLongitude (https://sandcastle.cesium.com/CesiumUnminified/Workers/GeometryPipeline-576f16cd.js:3703:9)
    at geometryPipeline (https://sandcastle.cesium.com/CesiumUnminified/Workers/PrimitivePipeline-27f11d3f.js:261:45)
    at PrimitivePipeline.combineGeometry (https://sandcastle.cesium.com/CesiumUnminified/Workers/PrimitivePipeline-27f11d3f.js:458:20)
    at combineGeometry (https://sandcastle.cesium.com/CesiumUnminified/Workers/combineGeometry.js:32:57)
    at callAndWrap (https://sandcastle.cesium.com/CesiumUnminified/Workers/createTaskProcessorWorker.js:63:25)

I initially reported this error on the community pages.

stewienj avatar Nov 15 '22 05:11 stewienj