34 #ifndef _libPhysic_Ground_tpp_
35 #define _libPhysic_Ground_tpp_
64 GRANOO_CLASS_DEFAULT_COLOR(.2, .8, .4, .2);
68 static bool exist(std::string);
82 virtual std::string
info()
const;
86 GRANOO_ACCESS (ID , std::string ,
_ID );
98 virtual std::ostream&
write_ascii(std::ostream& out)
const;
99 virtual std::istream&
read_ascii(std::istream& in);
135 template<
class Archive>
void save(Archive &,
const unsigned int)
const;
136 template<
class Archive>
void load(Archive &,
const unsigned int);
162 for (
unsigned int i = 0; i<set.
size(); ++i) {
166 UserAssert(0,
"can't find Ground named " +
id);
172 for (
unsigned int i = 0; i<set.
size(); ++i) {
207 std::ostringstream os;
209 os <<
"**Ground**" <<
'\n'
210 <<
"id : " <<
_ID <<
'\n'
211 <<
"center : " <<
_center <<
'\n'
212 <<
"quaternion: " <<
_quat <<
'\n';
216 template<
class Archive>
219 ar << boost::serialization::base_object<Core::Base>(*
this);
229 template<
class Archive>
232 ar >> boost::serialization::base_object<Core::Base>(*
this);
233 std::string&
id =
const_cast<std::string&
>(
_ID);
242 local_frame().update_glMatrix();
250 #include <boost/serialization/version.hpp>
255 GRANOO_CLASS_DECLARE_TPL(Physic::Ground);
BOOST_CLASS_VERSION(GranOO3::Physic::Ground, 0) namespace GranOO3
Definition: Ground.hpp:251
#define SafeModeAssert(condition, message)
Definition: Macro.hpp:47
#define UserAssert(condition, message)
Definition: Macro.hpp:54
virtual const std::string & get_ID() const
Definition: Base.hpp:144
Definition: SetOf.hpp:346
Definition: SetOf.hpp:236
static SetOf< type > & get_global_set()
const std::string & get_SerializationPrefix()
Definition: SetOfManager.cpp:74
const std::string & get_SerializationSuffix()
Definition: SetOfManager.cpp:89
static SetOfManager & get()
Definition: Singleton.hpp:127
Definition: Quaternion.hpp:54
Definition: Vector.hpp:75
Definition: Ground.hpp:61
virtual std::ostream & write_ascii(std::ostream &out) const
Definition: Ground.cpp:120
Geom::Vector get_linear_velocity_at(const Geom::Point &) const
Definition: Ground.cpp:110
virtual std::string info() const
Definition: Ground.hpp:206
static bool exist(std::string)
Definition: Ground.hpp:170
void clear_torque()
Definition: Ground.cpp:72
Geom::Vector _force
Definition: Ground.hpp:148
static Ground & glob(const std::string &id)
Geom::Frame _frame
Definition: Ground.hpp:147
static Ground & get(std::string)
Definition: Ground.hpp:160
virtual Shape::Surface & to_surface_shape()
Definition: Ground.hpp:193
static Ground * new_object(const TiXmlElement *el)
Geom::Vector & _position
Definition: Ground.hpp:145
virtual ~Ground()
Definition: Ground.cpp:63
virtual Shape::Base & to_base_shape()=0
virtual std::string shape_class_ID() const =0
Geom::Point _center
Definition: Ground.hpp:144
virtual const Shape::Base & to_base_shape() const =0
BOOST_SERIALIZATION_SPLIT_MEMBER()
virtual std::istream & read_ascii(std::istream &in)
Definition: Ground.cpp:128
virtual Shape::Volume & to_volume_shape()
Definition: Ground.hpp:181
virtual std::ostream & export_to_povray(std::ostream &out) const
Definition: Ground.cpp:145
void apply_torque(const Geom::Vector &)
Definition: Ground.cpp:88
void clear_force()
Definition: Ground.cpp:67
void apply_force(const Geom::Vector &)
Definition: Ground.cpp:77
bool is_interact_with(const Node &) const
Definition: Ground.hpp:156
Ground()
Definition: Ground.cpp:59
virtual void read_xml_element(const TiXmlElement *el)
Geom::Vector _contact_force
Definition: Ground.hpp:149
Geom::Vector _torque
Definition: Ground.hpp:150
std::string _ID
Definition: Ground.hpp:143
Geom::Quaternion _quat
Definition: Ground.hpp:146
friend class boost::serialization::access
Definition: Ground.hpp:134
Geom::Vector _angular_vel
Definition: Ground.hpp:152
void load(Archive &, const unsigned int)
Definition: Ground.hpp:231
virtual void add_glob(const std::string &)=0
void incremental_move()
Definition: Ground.cpp:93
Geom::Vector _linear_velocity
Definition: Ground.hpp:151
Ground & operator=(const Ground &)
void apply_force_at(const Geom::Vector &, const Geom::Point &)
Definition: Ground.cpp:82
void save(Archive &, const unsigned int) const
Definition: Ground.hpp:218
Definition: Surface.hpp:55
Definition: Volume.hpp:103
Definition: Common.hpp:198