cesium icon indicating copy to clipboard operation
cesium copied to clipboard

Unable to zoom in after setting the relative height of vertical exaggeration

Open syzdev opened this issue 1 year ago • 2 comments

What happened?

This issue comes from https://github.com/CesiumGS/cesium/issues/11936 , I think this is another issue, so I created a new one. If the model is in the air, the reference height can be set to the center of the model, but the camera cannot zoom in.

sandcastle

GIF1

Reproduction steps

1.Exaggeration -> 5 2.Relative Height -> 9000 3.Mouse wheel -> zoom in ...

Sandcastle example

sandcastle

Environment

Browser: Google Chrome Version 124.0.6367.119 (Official Build) (64-bit) CesiumJS Version: 1.117 Operating System: Windows 11 22H2

syzdev avatar May 10 '24 02:05 syzdev

@jjhembd Could you please triage this issue?

ggetz avatar May 10 '24 13:05 ggetz

Thanks for the report @syzdev! I can reproduce the problem on my machine, and it does look like a separate issue.

I can zoom all the way in if I turn off camera collision checks, as in this updated Sandcastle.

scene.screenSpaceCameraController.enableCollisionDetection = false;

It looks like ScreenSpaceCameraController is missing a check of scene.verticalExaggerationRelativeHeight somewhere, perhaps in the calculation of minHeight in the handleZoom method.

jjhembd avatar May 13 '24 14:05 jjhembd

Looking at https://github.com/CesiumGS/cesium/pull/12141, it appears the bounding volume is not properly accounting for exaggeration.

ggetz avatar Sep 03 '24 15:09 ggetz