Hello,
Thanks for your question. We have received requests to align the REST API with the 3D Tiles Location Editor in the ion Dashboard in the past, and I have added your case to the ticket we are using to track the issue.
In the meantime, I can explain why this difference occurs, along with a workaround for addressing it.
When you upload a 3D model to ion via REST API and populate the position
field in your request, the system will position the source data such that its origin is placed at the longitude, latitude, and height that you specified. After that, it computes a tight bounding box for the 3D Tiles (which, at that point, have already been placed on the globe).
When you instead upload a 3D model without specifying a position on the globe, the system will compute a bounding box for the 3D Tiles when you upload it. Then, if you press Adjust Tileset Location to set the position of the data after the fact, it will move it such the lower center of the bounding box is placed at the longitude, latitude, and height that you specified.
The difference that you are observing occurs when the origin of source data is not located in the bottom center of the geometry (and resulting bounding box). For example, if you had geometry that was 100m above the origin of a model, trying to place the data on the ground using the position
field of the REST API would set it 100m above the surface of the Earth. Using Adjust Tileset Location, on the other hand, would set it on the surface.
In order to align the two behaviors, then, you can revise your source data such that the origin is in the bottom center of the geometry. Or choose just one of the two methods—whichever best suits your case.
Please let me know if this makes sense or if you have follow-up questions. We do hope to make this more intuitive in the future.
Thanks,
Matt