~robot3d-team/robot3d/trunk

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#ifndef BODYFACTORY_H_
#define BODYFACTORY_H_

#include <srCore/export.h>
#include <srCore/body/bodyBase.h>
#include <srCore/robot/robotActorBase.h>

namespace srCore {

/**
 * Body Type Enumeration
 */
enum bodytype
{
//	FRONT_BODY,
//	BACK_BODY,
//	LINK_BODY,
	WHEEL_BODY,
//	SYMB01_BODY,
//	SYMB02_BODY,

	KIT_1,
	KIT_2,
	KIT_SCREW,

//	LEO_BODY
};

//! Body Factory Class
class BodyFactory	// : public myFactory
{
public:


	//! Creates a body
	/*! @param type						type of the body
	 *  @param id 						a 16bit id, used to set the colliding bit parameter.
	 * 	@param x, y, z 					the position of the hinge in the world coordinate system.
	 *  @param heading, pitch, roll 	the orientation of the axis of the hinge in the world coordinate system.
	 *  @param Scene 					the scene in which the body should be placed.
	 *  @param osgGroup					using this group, another scene will be created that will be used by sensors
	 *
	 */
	static dtCore::RefPtr<BodyBase> createBody(bodytype type, RobotActorBase* robot,
			float x, float y, float z,
			float heading, float pitch, float roll);
};
}

#endif /*BODYFACTORY_H_*/