Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash in Cesium3DTilesetTraversal #5353

Open
SunBlack opened this issue May 24, 2017 · 2 comments
Open

Crash in Cesium3DTilesetTraversal #5353

SunBlack opened this issue May 24, 2017 · 2 comments

Comments

@SunBlack
Copy link

SunBlack commented May 24, 2017

On current dev I'm getting a exception in Cesium3DTilesetTraversal, introduced with #5254. If I ook at point cloud without zooming in all is okay. But If I zoom in it crashes - maybe if I see last level of tree.

Error message:

TypeError: Cannot read property 'insert' of undefined
TypeError: Cannot read property 'insert' of undefined
    at loadTile (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:635:30)
    at InternalSkipTraversal.leafHandler (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:568:21)
    at DFS (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:764:25)
    at InternalSkipTraversal.execute (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:479:9)
    at SkipTraversal.getChildren (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:453:26)
    at BFS (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:788:40)
    at SkipTraversal.execute (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:436:9)
    at Object.selectTiles (http://localhost:8080/Source/Scene/Cesium3DTilesetTraversal.js:88:40)
    at Cesium3DTileset.update (http://localhost:8080/Source/Scene/Cesium3DTileset.js:1577:34)
    at PrimitiveCollection.update (http://localhost:8080/Source/Scene/PrimitiveCollection.js:366:27)
    at updatePrimitives (http://localhost:8080/Source/Scene/Scene.js:2421:27)
    at executeCommandsInViewport (http://localhost:8080/Source/Scene/Scene.js:2287:13)

tile._requestHeap is still undefined at crashing line.

@SunBlack
Copy link
Author

SunBlack commented May 24, 2017

I took a deeper look at it: It is caused by an exception during creating Cesium3DTile, which will be not displaed. Maybe we should add a error handling there. To reproduce it just create a child with following data (happens if a node just have one point):

"region": [-1.0, 0.5, -1.0, 0.5, 180.0, 180.0]

This causes a normalized result is not a number exception

@lilleyse
Copy link
Contributor

Thanks for tracking it down. Something should check for degenerate regions before it gets to the normalization exception. I added this as an example to #5158.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants