13 #include <osg/Geometry>
15 #include <osg/StateSet>
17 #include <diguy_constants.h>
18 #include <diguy_vector_classes.h>
19 #include <diguyAuthorVisualMaterial.h>
21 class diguyAuthorInterface;
47 static void detachAndNull(osg::ref_ptr<osg::MatrixTransform>& child);
50 static void detachAndNull(osg::Geode* geode, osg::ref_ptr<osg::Geometry>& drawable);
52 static void dumpStateSet( osg::StateSet * stateSet,
const char * indent );
60 const diguyVec4f & color);
65 const diguyVec4f & color,
73 const diguyVec3f & position_offset,
74 const diguyVec3f & orientation,
75 const diguyVec4f & color);
81 const diguyVec3f & position_offset,
82 const diguyVec3f & orientation,
83 const diguyVec4f & color,
91 const diguyVec3f & position_offset,
92 const diguyVec3f & orientation,
93 const diguyVec4f & color);
99 const diguyVec3f & position_offset,
100 const diguyVec3f & orientation,
101 const diguyVec4f & color,
106 const diguyVec3f &
max,
107 const diguyVec3f & position_offset,
108 const diguyVec3f & orientation,
109 const diguyVec4f & color);
112 const diguyVec3f &
max,
113 const diguyVec3f & position_offset,
114 const diguyVec3f & orientation,
115 const diguyVec4f & color,
137 static osg::Matrixd
yrp_to_matrix(
double yaw,
double roll,
double pitch);
148 if ((update_flags & (
int) flag) != 0)
154 diguyAuthorVisualUpdateFlag flag1,
155 diguyAuthorVisualUpdateFlag flag2)
157 if (((update_flags & (
int) flag1) != 0) ||
158 ((update_flags & (
int) flag2) != 0))
164 diguyAuthorVisualUpdateFlag flag1,
165 diguyAuthorVisualUpdateFlag flag2,
166 diguyAuthorVisualUpdateFlag flag3)
168 if (((update_flags & (
int) flag1) != 0) ||
169 ((update_flags & (
int) flag2) != 0) ||
170 ((update_flags & (
int) flag3) != 0))
176 diguyAuthorVisualUpdateFlag flag)
178 update_flags |= (
int) flag;
static void raise_visual_update_flag(int &update_flags, diguyAuthorVisualUpdateFlag flag)
Definition: diguyOsgUtil.h:175
static osg::Vec4 diguyVec4_to_osgVec4(const diguyVec4f &diguy_vec4)
static bool check_visual_update_flag(int update_flags, diguyAuthorVisualUpdateFlag flag)
Definition: diguyOsgUtil.h:146
static osg::StateSet * create_material_state_set(const diguyVec4f &color, bool lit)
static diguyVec4f osgVec4_to_diguyVec4(const osg::Vec4 &osg_vec4)
static diguyVec3f osgVec3_to_diguyVec3(const osg::Vec3 &osg_vec3)
static osg::Quat diguy_euler_zxy_radians_to_osgQuat(const diguyVec3f &diguy_euler)
static osg::Quat diguy_euler_zxy_degrees_to_osgQuat(const diguyVec3f &diguy_euler)
static bool check_visual_update_flag3(int update_flags, diguyAuthorVisualUpdateFlag flag1, diguyAuthorVisualUpdateFlag flag2, diguyAuthorVisualUpdateFlag flag3)
Definition: diguyOsgUtil.h:163
Definition: diguyOsgUtil.h:38
static void set_name_from_uid(osg::Object *object, long uid)
T max(const T v0, const T v1)
Definition: exprtk.hpp:1409
static bool check_visual_update_flag2(int update_flags, diguyAuthorVisualUpdateFlag flag1, diguyAuthorVisualUpdateFlag flag2)
Definition: diguyOsgUtil.h:153
static osg::Geometry * create_coord_sys_primitive()
T min(const T v0, const T v1)
Definition: exprtk.hpp:1402
static void detachAndNull(osg::ref_ptr< osg::MatrixTransform > &child)
Definition: diguyOsgUtil.h:37
static osg::Geometry * create_box_wireframe(const diguyVec3f &min, const diguyVec3f &max, const diguyVec3f &position_offset, const diguyVec3f &orientation, const diguyVec4f &color, float line_width, bool lit)
static osg::Geometry * create_cylinder_solid(float radius, float height, int slices, int layers, const diguyVec3f &position_offset, const diguyVec3f &orientation, const diguyVec4f &color)
static osg::Geometry * create_cone_wireframe(float radius, float height, int slices, int layers, const diguyVec3f &position_offset, const diguyVec3f &orientation, const diguyVec4f &color, float line_width, bool lit)
static osg::Geometry * create_sphere_wireframe(float radius, int slices, int layers, const diguyVec4f &color, float line_width, bool lit)
static osg::Geometry * create_sphere_solid(float radius, int slices, int layers, const diguyVec4f &color)
static void dumpStateSet(osg::StateSet *stateSet, const char *indent)
static osg::Geometry * create_line_primitive(const osg::Vec4 &color)
Contains some helper functions for diguy and osg .
Definition: diguyOsgUtil.h:26
static osg::Geometry * create_cylinder_wireframe(float radius, float height, int slices, int layers, const diguyVec3f &position_offset, const diguyVec3f &orientation, const diguyVec4f &color, float line_width, bool lit)
static osg::Geometry * create_cone_solid(float radius, float height, int slices, int layers, const diguyVec3f &position_offset, const diguyVec3f &orientation, const diguyVec4f &color)
static osg::Vec3 diguyVec3_to_osgVec3(const diguyVec3f &diguy_vec3)
static osg::Matrixd yrp_to_matrix(double yaw, double roll, double pitch)
Definition: diguyOsgUtil.h:36
static osg::Geometry * create_box_solid(const diguyVec3f &min, const diguyVec3f &max, const diguyVec3f &position_offset, const diguyVec3f &orientation, const diguyVec4f &color)