aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs')
-rwxr-xr-xOpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs19
1 files changed, 14 insertions, 5 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs b/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
index 9e0f499..8f973f4 100755
--- a/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs
@@ -48,7 +48,8 @@ public abstract class BSLinkset
48 */ 48 */
49 49
50 // at the moment, there is only one 50 // at the moment, there is only one
51 ret = new BSLinksetConstraints(physScene, parent); 51 // ret = new BSLinksetConstraints(physScene, parent);
52 ret = new BSLinksetCompound(physScene, parent);
52 53
53 return ret; 54 return ret;
54 } 55 }
@@ -69,10 +70,19 @@ public abstract class BSLinkset
69 protected object m_linksetActivityLock = new Object(); 70 protected object m_linksetActivityLock = new Object();
70 71
71 // Some linksets have a preferred physical shape. 72 // Some linksets have a preferred physical shape.
72 // Returns SHAPE_UNKNOWN if there is no preference. 73 // Returns SHAPE_UNKNOWN if there is no preference. Causes the correct shape to be selected.
73 public virtual ShapeData.PhysicsShapeType PreferredPhysicalShape 74 public virtual ShapeData.PhysicsShapeType PreferredPhysicalShape(BSPhysObject requestor)
74 { get { return ShapeData.PhysicsShapeType.SHAPE_UNKNOWN; } } 75 {
76 return ShapeData.PhysicsShapeType.SHAPE_UNKNOWN;
77 }
75 78
79 // Linksets move around the children so the linkset might need to compute the child position
80 public virtual OMV.Vector3 Position(BSPhysObject member)
81 { return member.RawPosition; }
82 public virtual OMV.Quaternion Orientation(BSPhysObject member)
83 { return member.RawOrientation; }
84 // TODO: does this need to be done for Velocity and RotationalVelocityy?
85
76 // We keep the prim's mass in the linkset structure since it could be dependent on other prims 86 // We keep the prim's mass in the linkset structure since it could be dependent on other prims
77 protected float m_mass; 87 protected float m_mass;
78 public float LinksetMass 88 public float LinksetMass
@@ -177,7 +187,6 @@ public abstract class BSLinkset
177 } 187 }
178 188
179 // Perform an action on each member of the linkset including root prim. 189 // Perform an action on each member of the linkset including root prim.
180 // The action is performed only on the objects that are physically in the linkset.
181 // Depends on the action on whether this should be done at taint time. 190 // Depends on the action on whether this should be done at taint time.
182 public delegate bool ForEachMemberAction(BSPhysObject obj); 191 public delegate bool ForEachMemberAction(BSPhysObject obj);
183 public virtual bool ForEachMember(ForEachMemberAction action) 192 public virtual bool ForEachMember(ForEachMemberAction action)