57 float m_fltReportIsVisible;
111 virtual void LoadPosition(CStdXml &oXml);
112 virtual void LoadRotation(CStdXml &oXml);
118 #pragma region AccessorMutators
123 virtual int VisualSelectionType() ;
124 virtual bool AllowMouseManipulation();
126 virtual CStdFPoint Position();
127 virtual void Position(CStdFPoint &oPoint,
bool bUseScaling =
true,
bool bFireChangeEvent =
false,
bool bUpdateMatrix =
true);
128 virtual void Position(
float fltX,
float fltY,
float fltZ,
bool bUseScaling =
true,
bool bFireChangeEvent =
false,
bool bUpdateMatrix =
true);
129 virtual void Position(std::string strXml,
bool bUseScaling =
true,
bool bFireChangeEvent =
false,
bool bUpdateMatrix =
true);
131 virtual CStdFPoint AbsolutePosition();
132 virtual void AbsolutePosition(CStdFPoint &oPoint);
133 virtual void AbsolutePosition(
float fltX,
float fltY,
float fltZ);
135 virtual CStdFPoint ReportPosition();
136 virtual void ReportPosition(CStdFPoint &oPoint);
137 virtual void ReportPosition(
float fltX,
float fltY,
float fltZ);
139 virtual CStdFPoint ReportWorldPosition();
140 virtual void ReportWorldPosition(CStdFPoint &oPoint);
141 virtual void ReportWorldPosition(
float fltX,
float fltY,
float fltZ);
143 virtual CStdFPoint UpdateAbsolutePosition();
144 virtual CStdFPoint GetCurrentPosition();
146 virtual CStdFPoint Rotation();
147 virtual void Rotation(CStdFPoint &oPoint,
bool bFireChangeEvent =
false,
bool bUpdateMatrix =
true);
148 virtual void Rotation(
float fltX,
float fltY,
float fltZ,
bool bFireChangeEvent =
false,
bool bUpdateMatrix =
true);
149 virtual void Rotation(std::string strXml,
bool bFireChangeEvent =
false,
bool bUpdateMatrix =
true);
151 virtual CStdFPoint ReportRotation();
152 virtual void ReportRotation(CStdFPoint &oPoint);
153 virtual void ReportRotation(
float fltX,
float fltY,
float fltZ);
155 virtual std::string LocalTransformationMatrixString();
157 virtual bool IsVisible();
158 virtual void IsVisible(
bool bVal);
160 virtual float GraphicsAlpha();
161 virtual void GraphicsAlpha(
float fltVal);
163 virtual float CollisionsAlpha();
164 virtual void CollisionsAlpha(
float fltVal);
166 virtual float JointsAlpha();
167 virtual void JointsAlpha(
float fltVal);
169 virtual float ReceptiveFieldsAlpha();
170 virtual void ReceptiveFieldsAlpha(
float fltVal);
172 virtual float SimulationAlpha();
173 virtual void SimulationAlpha(
float fltVal);
175 virtual float Alpha();
176 virtual void Alpha(
float fltAlpha);
178 virtual CStdColor *Ambient();
179 virtual void Ambient(CStdColor &aryColor);
180 virtual void Ambient(
float *aryColor);
181 virtual void Ambient(std::string strXml);
183 virtual CStdColor *Diffuse();
184 virtual void Diffuse(CStdColor &aryColor);
185 virtual void Diffuse(
float *aryColor);
186 virtual void Diffuse(std::string strXml);
188 virtual CStdColor *Specular();
189 virtual void Specular(CStdColor &aryColor);
190 virtual void Specular(
float *aryColor);
191 virtual void Specular(std::string strXml);
193 virtual float Shininess();
194 virtual void Shininess(
float fltVal);
196 virtual std::string Texture();
197 virtual void Texture(std::string strValue);
199 virtual CStdFPoint SelectedVertex();
200 virtual void SelectedVertex(CStdFPoint &vPoint,
bool bFireChangeEvent =
false,
bool bUpdatePhysics =
true);
201 virtual void SelectedVertex(
float fltX,
float fltY,
float fltZ,
bool bFireChangeEvent =
false,
bool bUpdatePhysics =
true);
209 virtual float GetBoundingRadius();
211 virtual void SetBoundingBox(
int iIdx,
float fltVal);
213 virtual bool AllowTranslateDragX();
214 virtual bool AllowTranslateDragY();
215 virtual bool AllowTranslateDragZ();
217 virtual bool AllowRotateDragX();
218 virtual bool AllowRotateDragY();
219 virtual bool AllowRotateDragZ();
221 virtual void UserDefinedDraggerRadius(
float fltRadius);
222 virtual float UserDefinedDraggerRadius();
224 virtual bool IsSelected();
228 #pragma region DataAccesMethods
230 virtual float *GetDataPointer(
const std::string &strDataType);
231 virtual bool SetData(
const std::string &strDataType,
const std::string &strValue,
bool bThrowError =
true);
232 virtual void QueryProperties(CStdPtrArray<TypeProperty> &aryProperties);
236 virtual void AddBodyClicked(
float fltPosX,
float fltPosY,
float fltPosZ,
float fltNormX,
float fltNormY,
float fltNormZ);
237 virtual void Selected(
bool bValue,
bool bSelectMultiple);
238 virtual void VisualSelectionModeChanged(
int iNewMode);
239 virtual void OrientNewPart(
float fltXPos,
float fltYPos,
float fltZPos,
float fltXNorm,
float fltYNorm,
float fltZNorm);
240 virtual bool CalculateLocalPosForWorldPos(
float fltWorldX,
float fltWorldY,
float fltWorldZ, CStdFPoint &vLocalPos);
242 virtual void Load(CStdXml &oXml);
Movable Item callback to the GUI.
Simulates the entire environment.
float m_fltSimulationAlpha
The alpha transparency used in the Simulation VisualSelectionMode.
Simulator * m_lpMovableSim
The pointer to a Simulation.
Root namespace for the base simulation library for AnimatLab.
CStdFPoint m_oReportWorldPosition
This is used for reporting the position back to the GUI. It is the world position scaled for distance...
float m_fltReceptiveFieldsAlpha
The alpha transparency used in the Receptive Fields VisualSelectionMode.
CStdColor m_vAmbient
The ambient color to apply to this part. It is specified as red, green, blue, and alpha...
float m_fltJointsAlpha
The alpha transparency used in the Joints VisualSelectionMode.
IMovableItemCallback * m_lpCallback
Baes class for all items that can be moved/roated within the environment.
IPhysicsMovableItem * m_lpPhysicsMovableItem
float m_fltShininess
The shininess of the part. A value between 0 and 128.
CStdFPoint m_oReportRotation
Bounding box class for geometric objects.
CStdFPoint m_oAbsPosition
CStdColor m_vDiffuse
The diffuse color to apply to this part. It is specified as red, green, blue, and alpha...
float m_fltUserDefinedDraggerRadius
User defined drag handle radius. If this is -1 then the user has not set the value and the default is...
float m_fltGraphicsAlpha
The alpha transparency used in the Graphics VisualSelectionMode.
CStdColor m_vSpecular
The specular color to apply to this part. It is specified as red, green, blue, and alpha...
bool m_bIsSelected
Keeps track of whether this movable item has been selected or not.
float m_fltCollisionsAlpha
The alpha transparency used in the Collisions VisualSelectionMode.
CStdFPoint m_oPosition
These are rotation and position coords relative to the parent if this is a body part.
float m_fltAlpha
The current alpha transparency for this body part.
CStdFPoint m_vSelectedVertex
The relative position of the selected vertex.
CStdFPoint m_oReportPosition
This is used for reporting the position back to the GUI. It is the position scaled for distance units...
The base class for all of the basic rigid body type of objects.
std::string m_strTexture
An optional texture to apply to the rigid body.