1
我正在尝试在3D空间中的2个其他点之间找到相等距离的点。例如,我的场景中有2个立方体。我想在这两个球体之间用Pymel等距加5个(或3个,或80个)定位器。如何找到两个物体之间的距离相等的点?
我可以很容易地找到这样的球体之间的中间点:
import pymel.core as pm
import pymel.core.datatypes as dt
pos_1, pos_2 = pm.selected()
point_1 = dt.Vector(pos_1.getTranslation())
point_2 = dt.Vector(pos_2.getTranslation())
midway_point = (point_1 + point_2)/2
不过,我似乎无法弄清楚如何在这两个领域之间的界限得到多个点。
我想是这样的:
import pymel.core as pm
import pymel.core.datatypes as dt
pos_1, pos_2 = pm.selected()
point_1 = dt.Vector(pos_1.getTranslation())
point_2 = dt.Vector(pos_2.getTranslation())
distance = point_1.distanceTo(point_2)
divided_distance = distance/5
for i in range (1, 5):
position = point_1 + (divided_distance * i)
pm.spaceLocator(position = position, absolute = True)
这确实增加了这两个领域之间的5个定位器,但他们不是在三维空间中连接两个点的线。
任何人都可以指向正确的方向吗?
哎呀替换变量
distance
...你是absolutey权。有时候我觉得我完全理解矢量数学的概念,然后就会显示出来:) –