【发布时间】:2018-04-08 17:09:59
【问题描述】:
希望你做得很好。我有一个关于将 2D 矩形放置在 3D 空间中的问题。我有一个 CATIA 软件,其中有几个矩形框,我需要沿屏幕边框放置,如图所示。
虚线矩形显示 CATIA 中的框,实心矩形是我需要放置它们的位置。这里的问题是,矩形是 2D 的,而 CATIA 屏幕是 3D 空间中的。我无法将它们放置在正确的位置,我需要您的帮助。
这是我的方法:
-
我得到了屏幕的中心点,这是一个 3D 点。
-
获取 2 个 3D 向量(屏幕的上方向,右方向)
-
通过将屏幕的 3D 中心点沿 2 个向量移动等于屏幕宽度的一半、高度的一半的距离来计算屏幕角的坐标。
-
将 2D 矩形的右上角坐标与屏幕的右上角 3D 坐标相等。(输出错误)
-
将第二个矩形移到第一个矩形下方,继续for循环,直到所有矩形都沿屏幕边框放置。
这里要注意的另一件事是,虚线矩形可以沿 xy 平面或 yz 平面或 xz 平面定位。并且可以计算出与屏幕平行的3D平面。我的问题是,如何将 2D 矩形坐标转换为 3D 坐标,以便将它们移动到 3D 空间中的正确位置。提前感谢您的帮助。
【问题讨论】: