Fixed: Initializetion and finalization of demo_plane2 has been fixed
[ode.git] / contrib / DotNetManaged / Geom.h
blob83a6faf705b0afac884a3866a6e16c0b1a145a30
1 #pragma once
3 #include "Body.h"
4 #include "Space.h"
5 #include "CommonMgd.h"
7 namespace ODEManaged
9 __gc public class Geom
11 public:
14 //Constructor
16 Geom (void);
19 //Destructor
21 ~Geom (void);
24 //Methods
26 //Basic Stuff
28 dGeomID Id (void);
29 dBodyID GetBody (void);
31 //Overloaded SetBody
32 void SetBody (Body &body);
33 /*void SetBody (dBodyID b);*/
35 Vector3 GetPosition (void);
36 void SetPosition (double x, double y, double z);
38 Matrix3 GetRotation (void);
39 void SetRotation (Matrix3 rotation);
41 void SetData (void *data);
42 void *GetData (void);
45 //Create Objects
47 void CreateSphere (Space &space, double radius);
48 void CreateBox (Space &space, double lx, double ly, double lz);
49 void CreatePlane (Space &space, double a, double b, double c, double d);
50 void CreateCCylinder (Space &space, double radius, double length);
53 //Destroy Objects
55 void Destroy (void);
58 //Get Object's Parameters
60 double SphereGetRadius (void);
61 Vector3 BoxGetLengths (void);
62 Vector4 PlaneGetParams (void);
63 void CCylinderGetParams (double *radius, double *length);
64 int GetClass (void);
67 //Properties
69 private:
71 dGeomID _id;