内容
问题(使用视频示例)
问题出在第3步,比例未正确保存。
https://www.dropbox.com/s/a2l3vvx92sa3cgh/drawing_defect_trimmed_480p.mp4?dl=0
临时解决方案 我能够在预期的比例中添加一个幻数,这减少了缩放问题,但它仍然有点偏离,从技术角度来看显然不是最理想的。
e.g。 “scale_used = expected_scale + magic_constant”
实施细节
我正在定制一个场景套件相机前面的UIView Scene Kit世界中的距离并试图让它成为新的 Scene Kit节点具有完全相同的视觉大小。
方法是计算项目的透视投影, 使用相机位于drawingContentItem.distance的世界 zNear - “(screenHeight * distance / Float(zNear))”。
然后我们假设场景工具包的可见世界的大小是-1000 到1000;视角为60度;并计算比率 UIView平面视图附近的场景工具包 - “(sceneScreenHeight / nearPlaneHeightInWorlCoordinates)”。
给了我们世界坐标和绘图的最终高度 我们用它来计算比例。
但似乎公式中存在一些错误并导致错误 需要神奇的数字。 :(