claraty::N_3D_Object Class Reference
#include <3d_object.h>
THREE_Object constructor/destructor | |
| enum | SHAPE_TYPE { BOX, CYLINDER, SPHERE, OTHER } |
| N_3D_Object () | |
| N_3D_Object (const N_3D_Object &shape_object) | |
| virtual | ~N_3D_Object () |
Public Member Functions | |
N_3D_Object set/get parameters | |
| SHAPE_TYPE | get_shape_type () |
| void | set_shape_type (SHAPE_TYPE shape_type) |
| void | set_number_of_dimensions (int n_dimensions) |
| int | get_number_of_dimensions () |
| void | set_dimensions (double &dims) |
| void | set_dimensions (double *dims) |
| void | get_dimensions (double *dims) |
| bool | is_empty () |
| bool | contains () |
Private Attributes | |
N_3D_Object string values of data | |
| SHAPE_TYPE | _shape_type |
| int | _number_of_dimensions |
| double | _dimensions [NUMBER_OF_3D_OBJECT_DIMENSIONS] |
Friends | |
| std::ostream & | operator<< (std::ostream &os, N_3D_Object &n_3D_object) |
Detailed Description
Definition at line 44 of file 3d_object.h.
Member Enumeration Documentation
Constructor & Destructor Documentation
| claraty::N_3D_Object::N_3D_Object | ( | ) |
Default Constructor for a N_3D_Object object.
Definition at line 39 of file 3d_object.cc.
References _dimensions, _number_of_dimensions, _shape_type, and OTHER.
00040 { 00041 _shape_type = OTHER; 00042 _number_of_dimensions = 0; 00043 _dimensions[0] = 0.0; 00044 _dimensions[1] = 0.0; 00045 _dimensions[2] = 0.0; 00046 }
| claraty::N_3D_Object::N_3D_Object | ( | const N_3D_Object & | shape_object | ) |
Copy constructor
- Parameters:
-
[in] shape_object Reference to N_3D_Object to be copied.
Definition at line 56 of file 3d_object.cc.
References _dimensions, _number_of_dimensions, and _shape_type.
00057 { 00058 _shape_type = shape_object._shape_type; 00059 _number_of_dimensions = shape_object._number_of_dimensions; 00060 _dimensions[0] = shape_object._dimensions[0]; 00061 _dimensions[1] = shape_object._dimensions[1]; 00062 _dimensions[2] = shape_object._dimensions[2]; 00063 }
| virtual claraty::N_3D_Object::~N_3D_Object | ( | ) | [inline, virtual] |
Member Function Documentation
| N_3D_Object::SHAPE_TYPE claraty::N_3D_Object::get_shape_type | ( | ) |
Get shape type.
- Returns:
- The shape type.
Definition at line 74 of file 3d_object.cc.
References _shape_type, BOX, CYLINDER, OTHER, and SPHERE.
Referenced by claraty::N_3D_Object_IO::extract_from_parse_tree(), and claraty::operator<<().
00075 { 00076 #ifdef DEBUG 00077 cout << "Shape type is "; 00078 switch(_shape_type) 00079 { 00080 case N_3D_Object::BOX: 00081 cout << "box"; 00082 break; 00083 case N_3D_Object::CYLINDER: 00084 cout << "cylinder"; 00085 break; 00086 case N_3D_Object::SPHERE: 00087 cout << "sphere"; 00088 break; 00089 case N_3D_Object::OTHER: 00090 cout << "other"; 00091 break; 00092 } 00093 cout << endl; 00094 #endif 00095 return _shape_type; 00096 }
| void claraty::N_3D_Object::set_shape_type | ( | SHAPE_TYPE | shape_type | ) |
Set shape type.
- Parameters:
-
[in] shape_type The string child name.
Definition at line 107 of file 3d_object.cc.
References _shape_type, BOX, CYLINDER, OTHER, and SPHERE.
Referenced by claraty::N_3D_Object_IO::extract_from_parse_tree().
00108 { 00109 _shape_type = shape_type; 00110 #ifdef DEBUG 00111 cout << "Setting shape type to "; 00112 switch(_shape_type) 00113 { 00114 case N_3D_Object::BOX: 00115 cout << "box"; 00116 break; 00117 case N_3D_Object::CYLINDER: 00118 cout << "cylinder"; 00119 break; 00120 case N_3D_Object::SPHERE: 00121 cout << "sphere"; 00122 break; 00123 case N_3D_Object::OTHER: 00124 cout << "other"; 00125 break; 00126 } 00127 cout << endl; 00128 #endif 00129 }
| void claraty::N_3D_Object::set_number_of_dimensions | ( | int | n_dimensions | ) |
Set number of shape dimensions.
- Parameters:
-
[in] n_dimensions Number of dimensions.
Definition at line 140 of file 3d_object.cc.
References _number_of_dimensions.
Referenced by claraty::N_3D_Object_IO::extract_from_parse_tree().
00141 { 00142 _number_of_dimensions = n_dimensions; 00143 }
| int claraty::N_3D_Object::get_number_of_dimensions | ( | ) | [inline] |
Definition at line 62 of file 3d_object.h.
References _number_of_dimensions.
00062 {return _number_of_dimensions;};
| void claraty::N_3D_Object::set_dimensions | ( | double & | dims | ) |
Referenced by claraty::N_3D_Object_IO::extract_from_parse_tree().
| void claraty::N_3D_Object::set_dimensions | ( | double * | dimensions | ) |
Set shape dimensions.
- Parameters:
-
[in] dimensions
Definition at line 170 of file 3d_object.cc.
References _dimensions, and _number_of_dimensions.
00171 { 00172 for (int i=0; i<_number_of_dimensions; ++i) 00173 { 00174 _dimensions[i] = dimensions[i]; 00175 } 00176 }
| void claraty::N_3D_Object::get_dimensions | ( | double * | dimensions | ) |
Get shape dimensions.
- Returns:
- The number of dimensions.
Definition at line 153 of file 3d_object.cc.
References _dimensions, and _number_of_dimensions.
Referenced by claraty::Wheel_Model::_compute_wheel_radius(), and claraty::operator<<().
00154 { 00155 for (int i=0; i<_number_of_dimensions; ++i) 00156 { 00157 dimensions[i] = _dimensions[i]; 00158 } 00159 }
| bool claraty::N_3D_Object::is_empty | ( | ) |
| bool claraty::N_3D_Object::contains | ( | ) |
Friends And Related Function Documentation
| std::ostream& operator<< | ( | std::ostream & | os, | |
| N_3D_Object & | n_3D_object | |||
| ) | [friend] |
Output to ostream
- Parameters:
-
[out] os ostream to put output on. [in] n_3D_object object to be output
- Returns:
- ostream with output on it.
Definition at line 188 of file 3d_object.cc.
00189 { 00190 std::string spacing = ""; 00191 spacing.append(XML_Out::get_indentation_space(), ' '); 00192 00193 #ifdef DEBUG 00194 cout << "In N_3D_Object_IO, about to output shape object_io of type "; 00195 #endif 00196 double dimensions[NUMBER_OF_3D_OBJECT_DIMENSIONS]; 00197 n_3D_object.get_dimensions(dimensions); 00198 #ifdef DEBUG 00199 cout << "WHAT SHAPE: " << n_3D_object.get_shape_type() << "\n"; 00200 #endif 00201 switch (n_3D_object.get_shape_type()) 00202 { 00203 case N_3D_Object::BOX: 00204 #ifdef DEBUG 00205 cout << "Box" << n_3D_object.get_shape_type() << endl; 00206 #endif 00207 os << spacing; 00208 os << "<Box "; 00209 os << "x = \"" << dimensions[0] << "\" "; 00210 os << "y = \"" << dimensions[1] << "\" "; 00211 os << "z = \"" << dimensions[2] << "\" "; 00212 os << "/>\n"; 00213 break; 00214 case N_3D_Object::CYLINDER: 00215 #ifdef DEBUG 00216 cout << "Cylinder" << n_3D_object.get_shape_type() << endl; 00217 #endif 00218 os << spacing; 00219 os << "<Cylinder "; 00220 os << "radius = \"" << dimensions[0] << "\" "; 00221 os << "height = \"" << dimensions[1] << "\" "; 00222 os << "/>\n"; 00223 break; 00224 case N_3D_Object::SPHERE: 00225 #ifdef DEBUG 00226 cout << "Sphere" << n_3D_object.get_shape_type() << endl; 00227 #endif 00228 os << spacing; 00229 os << "<Sphere "; 00230 os << "radius = \"" << dimensions[0] << "\" "; 00231 os << "/>\n"; 00232 break; 00233 case N_3D_Object::OTHER: 00234 os << "other "; 00235 break; 00236 } 00237 00238 00239 return os; 00240 }
Member Data Documentation
SHAPE_TYPE claraty::N_3D_Object::_shape_type [private] |
Definition at line 74 of file 3d_object.h.
Referenced by get_shape_type(), N_3D_Object(), and set_shape_type().
int claraty::N_3D_Object::_number_of_dimensions [private] |
Definition at line 75 of file 3d_object.h.
Referenced by get_dimensions(), get_number_of_dimensions(), N_3D_Object(), set_dimensions(), and set_number_of_dimensions().
double claraty::N_3D_Object::_dimensions[NUMBER_OF_3D_OBJECT_DIMENSIONS] [private] |
Definition at line 76 of file 3d_object.h.
Referenced by get_dimensions(), N_3D_Object(), and set_dimensions().
The documentation for this class was generated from the following files: