Interface for a clump. This is the interface for a clump. A clump is a collection of pebbles that define the clump surface (see IPebble for more information). This interface provides basic functionality for accessing the Body Attributes and Piece properties associated with a clump.  
 More...
 | 
| 
virtual IThing *  | getIThing ()=0 | 
|   | Return an IThing interface for this object. 
  | 
|   | 
| 
virtual const IThing *  | getIThing () const =0 | 
|   | Return a const IThing interface for this object. 
  | 
|   | 
| 
virtual IClump *  | getNext ()=0 | 
|   | Return the next IClump object in the global list, or 0 if it is the last set. 
  | 
|   | 
| 
virtual const IClump *  | getNext () const =0 | 
|   | Return the next const IClump object in the global list, or 0 if it is the last set. 
  | 
|   | 
| 
virtual IPiece *  | getFirstIPiece ()=0 | 
|   | Return the first IPiece in this clump. 
  | 
|   | 
| 
virtual const IPiece *  | getFirstIPiece () const =0 | 
|   | Return the first const IPiece in this clump. 
  | 
|   | 
| 
virtual IPebble *  | getFirstPebble ()=0 | 
|   | Return the first IPebble in this clump. 
  | 
|   | 
| 
virtual const IPebble *  | getFirstPebble () const =0 | 
|   | Return the first const IPebble in this clump. 
  | 
|   | 
| 
virtual IPieceMechanical *  | getFirstIPieceMechanical ()=0 | 
|   | Return the first IPieceMechanical in this clump. 
  | 
|   | 
| 
virtual const IPieceMechanical *  | getFirstIPieceMechanical () const =0 | 
|   | Return the first const IPieceMechanical in this clump. 
  | 
|   | 
| 
virtual IBody *  | getIBody ()=0 | 
|   | Return an IBody pointer. 
  | 
|   | 
| 
virtual const IBody *  | getIBody () const =0 | 
|   | Return a const IBody pointer. 
  | 
|   | 
| 
virtual IBodyMechanical *  | getIBodyMechanical ()=0 | 
|   | Return an IBodyMechanical pointer. 
  | 
|   | 
| 
virtual const IBodyMechanical *  | getIBodyMechanical () const =0 | 
|   | Return a const IBodyMechanical pointer. 
  | 
|   | 
| 
virtual IRigidBodyMechanical *  | getIRigidBodyMechanical ()=0 | 
|   | Return an IRigidBodyMechanical pointer. 
  | 
|   | 
| 
virtual const IRigidBodyMechanical *  | getIRigidBodyMechanical () const =0 | 
|   | Return a const IRigidBodyMechanical pointer. 
  | 
|   | 
| 
virtual uint32  | getNumberPebbles () const =0 | 
|   | Return the number of pebbles. 
  | 
|   | 
| 
virtual void  | getPebbleList (FArray< IPebble * > *)=0 | 
|   | Return a list of pebbles. 
  | 
|   | 
| 
virtual void  | getPebbleList (FArray< const IPebble * > *) const =0 | 
|   | Return a list of pebbles. 
  | 
|   | 
| 
virtual double  | getSurfaceScaleFactor () const =0 | 
|   | Return the scale factor going from the clump to the surface representation. 
  | 
|   | 
| virtual double  | getMoiComp (int) const =0 | 
|   | 
| virtual double  | getInertialMoiComp (int) const =0 | 
|   | 
| 
virtual DAVect  | getMoi () const =0 | 
|   | Return the inertia tensor in principal axis form. 
  | 
|   | 
| 
virtual DAVect  | getInertialMoi () const =0 | 
|   | Return the inertial (may be scaled) inertia tensor in principal axis form. 
  | 
|   | 
| 
virtual void  | setMoiComp (const double &, int)=0 | 
|   | Set a component of the inertia tensor. Admissible values are: 11,12,13,22,23,33 in 3D. 
  | 
|   | 
| 
virtual void  | setMoi (const DAVect &)=0 | 
|   | Set the principal values of the inertia tensor directly. 
  | 
|   | 
| virtual bool  | rotate (const DVect &rotp, const DVect &axis, const double &w, bool update=true, bool noThrow=false)=0 | 
|   | 
| 
virtual bool  | scale (const double &)=0 | 
|   | Scale the clump to have this area or volume. 
  | 
|   | 
| 
virtual void  | getContactList (FArray< IContact * > *ret, const TType &type=0, const IPiece *p2=0)=0 | 
|   | Return a list of IContacts. 
  | 
|   | 
| 
virtual void  | getContactList (FArray< const IContact * > *ret, const TType &type=0, const IPiece *p2=0) const =0 | 
|   | Return a list of const IContacts. 
  | 
|   | 
| 
virtual uint64  | getContactCount (bool active, const TType &type=0, bool domainToo=false) const =0 | 
|   | Return the number of contacts. 
  | 
|   | 
| 
virtual IContainer *  | getClumpAsPebbleContainer ()=0 | 
|   | Return the IContainer pointer of the ChildContainer corresponding to this clump. 
  | 
|   | 
| 
virtual const IContainer *  | getClumpAsPebbleContainer () const =0 | 
|   | Return the const IContainer pointer of the ChildContainer corresponding to this clump. 
  | 
|   | 
| 
virtual const ITriPoly *  | getSurfaceDescription () const =0 | 
|   | Return the ITriPoly surface description of the clump. 
  | 
|   | 
| 
virtual double  | getSurfaceOrientation () const =0 | 
|   | Get the double corresponding to the orientation relative to the clump template orientation. 
  | 
|   | 
| 
virtual void  | getSurfaceRotMatrix (DMatrix< dim, dim > *) const =0 | 
|   | Get the rotation matrix with reference to the clump template. 
  | 
|   | 
| 
virtual void  | removeIPebble (IPebble *, IContainer *)=0 | 
|   | Remove the pebble from the clump. 
  | 
|   | 
| 
virtual IPebble *  | createAndAddPebble (const double &rad, const DVect &pos, IContainer *, uint64 id=0)=0 | 
|   | Add a pebble to this clump. 
  | 
|   | 
| 
virtual IClumpTemplate *  | getMyClumpTemplate ()=0 | 
|   | Return the IClumpTemplate pointer. 
  | 
|   | 
| 
virtual const IClumpTemplate *  | getMyClumpTemplate () const =0 | 
|   | Return the const IClumpTemplate pointer. 
  | 
|   | 
| 
virtual void  | resetClumpTemplate ()=0 | 
|   | Reset the clump template pointer. 
  | 
|   | 
| 
virtual bool  | getIsClumpTemplate () const =0 | 
|   | Return true if part of a clump template. 
  | 
|   | 
| virtual void  | calcAndSetInertialAttributes (const double &per=0.01)=0 | 
|   | 
| 
virtual void  | setMoiFix (bool b)=0 | 
|   | When setting the MOI from FISH one needs make sure that it is not reset no matter what. 
  | 
|   | 
| 
virtual bool  | isMoiFix ()=0 | 
|   | 
| 
virtual bool  | isMoiFix () const =0 | 
|   | 
| 
virtual void  | setVolumeNoScale (const double &d)=0 | 
|   | Set the volume without scaling the clump. 
  | 
|   | 
| 
virtual double  | getEnclosingDiameter () const =0 | 
|   | Calculate the diameter of the sphere enclosing the clump. 
  | 
|   | 
| 
virtual int  | getFragmentIndex () const =0 | 
|   | 
| virtual bool  | getFix (uint32 dof) const =0 | 
|   | 
| 
virtual string  | getFixLabel () const =0 | 
|   | Return a fixity label. 
  | 
|   | 
| 
virtual base::Property  | getPieceProperty (const string &name, const IPiece *p=0) const =0 | 
|   | Return the property of the piece. 
  | 
|   | 
| 
virtual double  | getDensity () const =0 | 
|   | Return the density.  
 
  | 
|   | 
| 
virtual double  | getInertialMass () const =0 | 
|   | Return the inertial mass. 
  | 
|   | 
| 
virtual double  | getMass () const =0 | 
|   | Return the mass. 
  | 
|   | 
| 
virtual DVect  | getContactForce () const =0 | 
|   | Return the resultant of all contact forces. 
  | 
|   | 
| 
virtual DAVect  | getContactMoment () const =0 | 
|   | Return the resultant of all contact moments. 
  | 
|   | 
| 
virtual DVect  | getAppliedForce () const =0 | 
|   | Return the applied force. 
  | 
|   | 
| 
virtual DAVect  | getAppliedMoment () const =0 | 
|   | Return the applied moment. 
  | 
|   | 
| 
virtual DVect  | getUnbalancedForce () const =0 | 
|   | Return the unbalanced force. 
  | 
|   | 
| 
virtual DAVect  | getUnbalancedMoment () const =0 | 
|   | Return the unbalanced moment. 
  | 
|   | 
| 
virtual double  | getLocalDamping () const =0 | 
|   | Return the local damping coefficient. 
  | 
|   | 
| 
virtual void  | setFix (uint32 dof, bool b)=0 | 
|   | Set the fixity condition. 
  | 
|   | 
| 
virtual bool  | setPieceProperty (const string &name, const base::Property &v, IPiece *p=0)=0 | 
|   | Set the property name. 
  | 
|   | 
| 
virtual void  | setDensity (const double &d)=0 | 
|   | Set the density. 
  | 
|   | 
| 
virtual void  | setContactForce (const DVect &v)=0 | 
|   | Set the contact force. 
  | 
|   | 
| 
virtual void  | setContactMoment (const DAVect &v)=0 | 
|   | Set the contact moment. 
  | 
|   | 
| 
virtual void  | setAppliedForce (const DVect &v)=0 | 
|   | Set the applied force. 
  | 
|   | 
| 
virtual void  | setAppliedMoment (const DAVect &v)=0 | 
|   | Set the applied moment. 
  | 
|   | 
| 
virtual void  | setLocalDamping (const double &d)=0 | 
|   | Set the local damping coefficient. 
  | 
|   | 
| 
virtual void  | scaleVolumePreserveMass (const double &d, bool checkState=true, bool lock=false)=0 | 
|   | Scale the volume to the specified value while preserving the mass. 
  | 
|   | 
| 
virtual void  | setFragmentIndex (int ind)=0 | 
|   | 
| 
virtual bool  | getIsIn (const DVect &) const =0 | 
|   | Returns a boolean indicating whether a point in space is inside or outside of the ball. 
  | 
|   | 
| 
virtual DVect  | getCentroid () const =0 | 
|   | IRigidBodyMechanical interface. 
  | 
|   | 
| 
virtual DVect  | getVelocity () const =0 | 
|   | 
| 
virtual DAVect  | getAngVelocity () const =0 | 
|   | 
| 
virtual DVect  | getDisplacement () const =0 | 
|   | 
| 
virtual double  | getVolume () const =0 | 
|   | 
| 
virtual Quat  | getOrient () const =0 | 
|   | 
| 
virtual void  | setCentroid (const DVect &p)=0 | 
|   | 
| 
virtual void  | setVelocity (const DVect &p)=0 | 
|   | 
| 
virtual void  | setAngVelocity (const DAVect &p)=0 | 
|   | 
| 
virtual void  | setDisplacement (const DVect &v)=0 | 
|   | 
| 
virtual void  | setOrient (const Quat &q)=0 | 
|   | 
Interface for a clump. This is the interface for a clump. A clump is a collection of pebbles that define the clump surface (see IPebble for more information). This interface provides basic functionality for accessing the Body Attributes and Piece properties associated with a clump.