Difference between revisions of "NewtonCollisionInfoRecord"

From Newton Wiki
Jump to: navigation, search
m (1 revision imported)
 
Line 11: Line 11:
 
{
 
{
 
dFloat m_offsetMatrix[4][4];
 
dFloat m_offsetMatrix[4][4];
int m_collisionType; // tag id to identify the collision primitive
+
NewtonCollisionMaterial m_collisionMaterial;
int m_collisionUserID;
+
int m_collisionType;
 
 
union {
 
union {
 
NewtonBoxParam m_box;
 
NewtonBoxParam m_box;
Line 27: Line 26:
 
NewtonHeightFieldCollisionParam m_heightField;
 
NewtonHeightFieldCollisionParam m_heightField;
 
NewtonSceneCollisionParam m_sceneCollision;
 
NewtonSceneCollisionParam m_sceneCollision;
dFloat m_paramArray[64];     // user define collision can use this to store information
+
dFloat m_paramArray[64];      
 
};
 
};
 
} NewtonCollisionInfoRecord;
 
} NewtonCollisionInfoRecord;
 
</source>
 
</source>

Latest revision as of 06:00, 18 June 2019

NewtonCollisionInfoRecord is a data structure used by NewtonCollisionGetInfo to return information about a Newton collision.

NewtonCollisionInfoRecord.m_collisionType constants are defined in header as macro form. http://newtondynamics.com/forum/viewtopic.php?f=11&t=6658&p=46803#p46803

Internal values used in C++ code are defined as enum dgCollisionID in dgCollision.h. This internal values are not exposed via C API.

	typedef struct NewtonCollisionInfoRecord
	{
		dFloat m_offsetMatrix[4][4];
		NewtonCollisionMaterial m_collisionMaterial;
		int m_collisionType;				
		union {
			NewtonBoxParam m_box;									
			NewtonConeParam m_cone;
			NewtonSphereParam m_sphere;
			NewtonCapsuleParam m_capsule;
			NewtonCylinderParam m_cylinder;
			NewtonChamferCylinderParam m_chamferCylinder;
			NewtonConvexHullParam m_convexHull;
			NewtonDeformableMeshParam m_deformableMesh;
			NewtonCompoundCollisionParam m_compoundCollision;
			NewtonCollisionTreeParam m_collisionTree;
			NewtonHeightFieldCollisionParam m_heightField;
			NewtonSceneCollisionParam m_sceneCollision;
			dFloat m_paramArray[64];		    
		};
	} NewtonCollisionInfoRecord;