GetJointPartList

格式

GetJointPartList(recursive)

简介

获取与对象自身通过约束相连的所有零件类对象,返回一个列表。

参数

名称 类型 默认 描述
recursive bool false bool 是否查找间接相连的对象,True为查找,False为不查找,默认为False

返回值

类型 描述
table 一个包含与对象通过约束相连的所有零件类对象的表

实例

创建几个零件,先给一个选定的零件添加两个约束,随后获取约束相连的零件对象。

local p1 = RWObject.Create("Part") -- 创建零件1
local p2 = RWObject.Create("Part") -- 创建零件2
local p3 = RWObject.Create("Part") -- 创建零件3
p1.Position = Vector3(0,1,6) -- 零件1位置赋值
p1.Anchored = false -- 零件1运动学赋值
p2.Position = Vector3(0,1,9) -- 零件2位置赋值
p2.Anchored = false -- 零件2运动学赋值
p3.Position = Vector3(0,1,12) -- 零件3位置赋值
p3.Anchored = false -- 零件3运动学赋值
p1:CreateJoint(p2,JOINT_TYPE.SplitJoint) -- 使零件1与零件2以SplitJoint的方式约束
p1:CreateJoint(p3,JOINT_TYPE.SplitJoint) -- 使零件1与零件3以SplitJoint的方式约束
wait(1) -- 等待1
local JointList = {} -- 创建空表
JointList = p1:GetJointPartList() -- 获取零件1约束的所有零件
wait(1) -- 等待1
for k,v in pairs(JointList) do -- 输出所有与零件1约束的零件的名字
    print(tostring(v.Name))
end

创建几个零件,先给一个选定的零件添加两个约束,随后获取约束相连的零件对象,包括间接相连。

local p1 = RWObject.Create("Part") -- 创建零件1
local p2 = RWObject.Create("Part") -- 创建零件2
local p3 = RWObject.Create("Part") -- 创建零件3
p1.Position = Vector3(0,1,6) -- 零件1位置赋值
p1.Anchored = false -- 零件1运动学赋值
p2.Position = Vector3(0,1,9) -- 零件2位置赋值
p2.Anchored = false -- 零件2运动学赋值
p3.Position = Vector3(0,1,12) -- 零件3位置赋值
p3.Anchored = false -- 零件3运动学赋值
p1:CreateJoint(p2,JOINT_TYPE.SplitJoint) -- 使零件1与零件2以SplitJoint的方式约束
p1:CreateJoint(p3,JOINT_TYPE.SplitJoint) -- 使零件1与零件3以SplitJoint的方式约束
wait(1) -- 等待1
local JointList = {} -- 创建空表
JointList = p1:GetJointPartList() -- 获取零件1约束的所有零件
wait(1) -- 等待1
for k,v in pairs(JointList) do -- 输出所有与零件1约束的零件的名字
    print(tostring(v.Name))
end
文档更新时间: 2020-08-24 21:16   作者:雷达