对象停留在另一个动画对象的两个多边形之间的特定距离



我有一个球体,我把一个对象放在两个多边形之间,内部对象不在它们之间的中间距离,但在它们之间有一个特定的距离比,我想做的是当我同时移动或缩放球体时,使内部对象保持相同的距离比?

最简单的方法是为面使用两个额外的点辅助对象,这样就可以使用简单的位置脚本来计算。展示我所说内容的示例:

(
    delete objects
    local sphere1 = Sphere segments:32 radius:10 pos:[35, 65, 0]
    local sphere2 = Sphere segments:32 radius:20 pos:[20, 5, 15]
    local point01 = Point wirecolor:green
    local point02 = Point wirecolor:green
    local point03 = Point size:5 box:on wirecolor:red
    point01.position.controller = Attachment node:sphere1 align:false
    point02.position.controller = Attachment node:sphere2 align:false
    local face1 = AttachCtrl.addNewKey point01.position.controller 0
    local face2 = AttachCtrl.addNewKey point02.position.controller 0
    face1.face = 440
    face1.coord = [0.5, 0]
    face2.face = 540
    face2.coord = [0.5, 0]
    local ctrl = Position_Script()
    ctrl.addObject #point01 point01
    ctrl.addObject #point02 point02
    ctrl.script = "point01.position + 0.8 * (point02.position - point01.position)"
    point03.position.controller = ctrl
)

谢谢我的朋友,我有这个想法,而且执行得很完美:

fn obb obj nod r t=

(全局x1p=nod.pos全局v1p=polyOp.getFaceCenter对象全局v2p=polyOp.getFaceCenter对象)
fn obbnew obj nod r2 t2 s1 s2 s3=(全局v1p2=polyOp.getFaceCenter对象r2全局v2p2=polyOp.getFaceCenter对象t2全局c1=(s2+s3)/2全局c2=(v1p2+v2p2)/2全局cn=c2-c1nod.pos=s1+cn

)

卷展栏getset"Alaa Biped"宽度:285高度:325(按钮btn1"老骨头"位置:[22,16]宽度:126高度:34按钮btn2"新位置"位置:[24,8]宽度:126高度:34标签lbl1"位置:[66,58]宽度:36高度:21标签lbl2"位置:[67133]宽度:36高度:21关于btn1按下do(---l美元obb$字符$Ptl美元8958 9498全局x1=x1p全局y1=v1p全局z1=v2plbl1.caption="好")关于btn2按下do(obbnew$字符$PtlCollar 8958 9498 x1 y1 z1lbl2.caption="好")

)createDialog getset--设置目标位置

--更改所有

--导入皮肤

相关内容

  • 没有找到相关文章

最新更新