The Vector3 class represents the generic vector containing 3 elements. More...
#include <math/gzmath.hh>
| Public Member Functions | |
| Vector3 () | |
| Constructor.  More... | |
| Vector3 (const double &_x, const double &_y, const double &_z) | |
| Constructor.  More... | |
| Vector3 (const Vector3 &_v) | |
| Copy constructor.  More... | |
| virtual | ~Vector3 () | 
| Destructor.  More... | |
| void | Correct () | 
| Corrects any nan values.  More... | |
| Vector3 | Cross (const Vector3 &_pt) const | 
| Return the cross product of this vector and pt.  More... | |
| double | Distance (const Vector3 &_pt) const | 
| Calc distance to the given point.  More... | |
| double | Distance (double _x, double _y, double _z) const | 
| Calc distance to the given point.  More... | |
| double | Dot (const Vector3 &_pt) const | 
| Return the dot product of this vector and pt.  More... | |
| bool | Equal (const Vector3 &_v) const | 
| Equality test.  More... | |
| Vector3 | GetAbs () const | 
| Get the absolute value of the vector.  More... | |
| double | GetDistToLine (const Vector3 &_pt1, const Vector3 &_pt2) | 
| Get distance to a line.  More... | |
| double | GetLength () const | 
| Returns the length (magnitude) of the vector \ return the length.  More... | |
| double | GetMax () const | 
| Get the maximum value in the vector.  More... | |
| double | GetMin () const | 
| Get the minimum value in the vector.  More... | |
| Vector3 | GetPerpendicular () const | 
| Return a vector that is perpendicular to this one.  More... | |
| Vector3 | GetRounded () const | 
| Get a rounded version of this vector.  More... | |
| double | GetSquaredLength () const | 
| Return the square of the length (magnitude) of the vector.  More... | |
| double | GetSum () const | 
| Return the sum of the values.  More... | |
| bool | IsFinite () const | 
| See if a point is finite (e.g., not nan)  More... | |
| Vector3 | Normalize () | 
| Normalize the vector length.  More... | |
| bool | operator!= (const Vector3 &_v) const | 
| Not equal to operator.  More... | |
| Vector3 | operator* (const Vector3 &_p) const | 
| Multiplication operator.  More... | |
| Vector3 | operator* (double _v) const | 
| Multiplication operators.  More... | |
| const Vector3 & | operator*= (const Vector3 &_v) | 
| Multiplication operators.  More... | |
| const Vector3 & | operator*= (double _v) | 
| Multiplication operator.  More... | |
| Vector3 | operator+ (const Vector3 &_v) const | 
| Addition operator.  More... | |
| const Vector3 & | operator+= (const Vector3 &_v) | 
| Addition assignment operator.  More... | |
| Vector3 | operator- () const | 
| Negation operator.  More... | |
| Vector3 | operator- (const Vector3 &_pt) const | 
| Subtraction operators.  More... | |
| const Vector3 & | operator-= (const Vector3 &_pt) | 
| Subtraction operators.  More... | |
| const Vector3 | operator/ (const Vector3 &_pt) const | 
| Division operator.  More... | |
| const Vector3 | operator/ (double _v) const | 
| Division operator.  More... | |
| const Vector3 & | operator/= (const Vector3 &_pt) | 
| Division assignment operator.  More... | |
| const Vector3 & | operator/= (double _v) | 
| Division operator.  More... | |
| Vector3 & | operator= (const Vector3 &_v) | 
| Assignment operator.  More... | |
| Vector3 & | operator= (double _value) | 
| Assignment operator.  More... | |
| bool | operator== (const Vector3 &_pt) const | 
| Equal to operator.  More... | |
| double | operator[] (unsigned int index) const | 
| [] operator  More... | |
| Vector3 | Round () | 
| Round to near whole number, return the result.  More... | |
| void | Round (int _precision) | 
| Round all values to _precision decimal places.  More... | |
| void | Set (double _x=0, double _y=0, double _z=0) | 
| Set the contents of the vector.  More... | |
| void | SetToMax (const Vector3 &_v) | 
| Set this vector's components to the maximum of itself and the passed in vector.  More... | |
| void | SetToMin (const Vector3 &_v) | 
| Set this vector's components to the minimum of itself and the passed in vector.  More... | |
| Static Public Member Functions | |
| static Vector3 | GetNormal (const Vector3 &_v1, const Vector3 &_v2, const Vector3 &_v3) | 
| Get a normal vector to a triangle.  More... | |
| Public Attributes | |
| double | x | 
| X location.  More... | |
| double | y | 
| Y location.  More... | |
| double | z | 
| Z location.  More... | |
| Static Public Attributes | |
| static const Vector3 | One | 
| math::Vector3(1, 1, 1)  More... | |
| static const Vector3 | UnitX | 
| math::Vector3(1, 0, 0)  More... | |
| static const Vector3 | UnitY | 
| math::Vector3(0, 1, 0)  More... | |
| static const Vector3 | UnitZ | 
| math::Vector3(0, 0, 1)  More... | |
| static const Vector3 | Zero | 
| math::Vector3(0, 0, 0)  More... | |
| Friends | |
| Vector3 | operator* (double _s, const Vector3 &_v) | 
| Multiplication operators.  More... | |
| std::ostream & | operator<< (std::ostream &_out, const gazebo::math::Vector3 &_pt) | 
| Stream insertion operator.  More... | |
| std::istream & | operator>> (std::istream &_in, gazebo::math::Vector3 &_pt) | 
| Stream extraction operator.  More... | |
The Vector3 class represents the generic vector containing 3 elements.
Since it's commonly used to keep coordinate system related information, its elements are labeled by x, y, z.
| gazebo::math::Vector3::Vector3 | ( | ) | 
Constructor.
Referenced by operator-().
| gazebo::math::Vector3::Vector3 | ( | const double & | _x, | 
| const double & | _y, | ||
| const double & | _z | ||
| ) | 
Constructor.
| [in] | _x | value along x | 
| [in] | _y | value along y | 
| [in] | _z | value along z | 
| gazebo::math::Vector3::Vector3 | ( | const Vector3 & | _v | ) | 
Copy constructor.
| [in] | _v | a vector | 
| 
 | virtual | 
Destructor.
| 
 | inline | 
Return the cross product of this vector and pt.
| double gazebo::math::Vector3::Distance | ( | const Vector3 & | _pt | ) | const | 
Calc distance to the given point.
| [in] | _pt | the point | 
| double gazebo::math::Vector3::Distance | ( | double | _x, | 
| double | _y, | ||
| double | _z | ||
| ) | const | 
Calc distance to the given point.
| [in] | _x | value along x | 
| [in] | _y | value along y | 
| [in] | _z | value along z | 
| double gazebo::math::Vector3::Dot | ( | const Vector3 & | _pt | ) | const | 
Return the dot product of this vector and pt.
| bool gazebo::math::Vector3::Equal | ( | const Vector3 & | _v | ) | const | 
Equality test.
| [in] | _v | the other vector | 
| Vector3 gazebo::math::Vector3::GetAbs | ( | ) | const | 
Get the absolute value of the vector.
Get distance to a line.
| [in] | _pt1 | first point on the line | 
| [in] | _pt2 | second point on the line | 
| double gazebo::math::Vector3::GetLength | ( | ) | const | 
Returns the length (magnitude) of the vector \ return the length.
| double gazebo::math::Vector3::GetMax | ( | ) | const | 
Get the maximum value in the vector.
| double gazebo::math::Vector3::GetMin | ( | ) | const | 
Get the minimum value in the vector.
| 
 | static | 
Get a normal vector to a triangle.
| [in] | _v1 | first vertex of the triangle | 
| [in] | _v2 | second vertex | 
| [in] | _v3 | third vertex | 
| Vector3 gazebo::math::Vector3::GetPerpendicular | ( | ) | const | 
Return a vector that is perpendicular to this one.
| Vector3 gazebo::math::Vector3::GetRounded | ( | ) | const | 
Get a rounded version of this vector.
| double gazebo::math::Vector3::GetSquaredLength | ( | ) | const | 
Return the square of the length (magnitude) of the vector.
| double gazebo::math::Vector3::GetSum | ( | ) | const | 
Return the sum of the values.
| bool gazebo::math::Vector3::IsFinite | ( | ) | const | 
See if a point is finite (e.g., not nan)
| Vector3 gazebo::math::Vector3::Normalize | ( | ) | 
Normalize the vector length.
| bool gazebo::math::Vector3::operator!= | ( | const Vector3 & | _v | ) | const | 
Not equal to operator.
| [in] | _v | The vector to compare against | 
Multiplication operator.
| [in] | _v | 
| Vector3 gazebo::math::Vector3::operator* | ( | double | _v | ) | const | 
Multiplication operators.
| [in] | _v | the scaling factor | 
Multiplication operators.
| [in] | _v | a vector | 
| const Vector3& gazebo::math::Vector3::operator*= | ( | double | _v | ) | 
Multiplication operator.
| [in] | _v | scaling factor | 
Addition operator.
| [in] | _v | vector to add | 
Addition assignment operator.
| [in] | _v | vector to add | 
| 
 | inline | 
Subtraction operators.
| [in] | _pt | subtrahend | 
Division operator.
[in] _pt the vector divisor
| const Vector3 gazebo::math::Vector3::operator/ | ( | double | _v | ) | const | 
Division operator.
Division assignment operator.
[in] _pt the vector divisor
| const Vector3& gazebo::math::Vector3::operator/= | ( | double | _v | ) | 
Division operator.
Assignment operator.
| [in] | _v | a new value | 
| Vector3& gazebo::math::Vector3::operator= | ( | double | _value | ) | 
Assignment operator.
| [in] | _value | assigned to all elements | 
| bool gazebo::math::Vector3::operator== | ( | const Vector3 & | _pt | ) | const | 
Equal to operator.
| [in] | _pt | The vector to compare against | 
| double gazebo::math::Vector3::operator[] | ( | unsigned int | index | ) | const | 
[] operator
| Vector3 gazebo::math::Vector3::Round | ( | ) | 
Round to near whole number, return the result.
| void gazebo::math::Vector3::Round | ( | int | _precision | ) | 
Round all values to _precision decimal places.
| [in] | _precision | the decimal places | 
| 
 | inline | 
| void gazebo::math::Vector3::SetToMax | ( | const Vector3 & | _v | ) | 
Set this vector's components to the maximum of itself and the passed in vector.
| [in] | _v | the maximum clamping vector | 
| void gazebo::math::Vector3::SetToMin | ( | const Vector3 & | _v | ) | 
Set this vector's components to the minimum of itself and the passed in vector.
| [in] | _v | the minimum clamping vector | 
Multiplication operators.
| [in] | _s | the scaling factor | 
| [in] | _v | input vector | 
| 
 | friend | 
| 
 | friend | 
Stream extraction operator.
| _in | input stream | 
| _pt | vector3 to read values into | 
| 
 | static | 
math::Vector3(1, 1, 1)
| 
 | static | 
math::Vector3(1, 0, 0)
| 
 | static | 
math::Vector3(0, 1, 0)
| 
 | static | 
math::Vector3(0, 0, 1)
| double gazebo::math::Vector3::x | 
| double gazebo::math::Vector3::y | 
| double gazebo::math::Vector3::z | 
| 
 | static | 
math::Vector3(0, 0, 0)