SbDPRotation - Online Linux Manual Page
Section : 3
Updated : Mon Jan 25 2021
Source : Version 4.0.0
Note : Coin
NAMESbDPRotation − The SbDPRotation class represents a rotation in 3D space using double precision data.
SYNOPSIS#include <Inventor/SbDPRotation.h>
Public Member FunctionsSbDPRotation (void) SbDPRotation (const SbVec3d &axis, const double radians) SbDPRotation (const double q[4]) SbDPRotation (const double q0, const double q1, const double q2, const double q3) SbDPRotation (const SbDPMatrix &m) SbDPRotation (const SbVec3d &rotateFrom, const SbVec3d &rotateTo) const double * getValue (void) const void getValue (double &q0, double &q1, double &q2, double &q3) const SbDPRotation & setValue (const double q0, const double q1, const double q2, const double q3) void getValue (SbVec3d &axis, double &radians) const void getValue (SbDPMatrix &matrix) const SbDPRotation & invert (void) SbDPRotation inverse (void) const SbDPRotation & setValue (const double q[4]) SbDPRotation & setValue (const SbDPMatrix &m) SbDPRotation & setValue (const SbVec3d &axis, const double radians) SbDPRotation & setValue (const SbVec3d &rotateFrom, const SbVec3d &rotateTo) SbBool equals (const SbDPRotation &r, double tolerance) const void multVec (const SbVec3d &src, SbVec3d &dst) const void scaleAngle (const double scaleFactor) void print (FILE *fp) const SbDPRotation & operator*= (const SbDPRotation &q) SbDPRotation & operator*= (const double s)
Static Public Member Functionsstatic SbDPRotation slerp (const SbDPRotation &rot0, const SbDPRotation &rot1, double t) static SbDPRotation identity (void)
Related Functions(Note that these are not member functions.) int operator== (const SbDPRotation &q1, const SbDPRotation &q2) int operator!= (const SbDPRotation &q1, const SbDPRotation &q2) SbDPRotation operator* (const SbDPRotation &q1, const SbDPRotation &q2) SbDPRotation slerp (const SbDPRotation &rot0, const SbDPRotation &rot1, double t)
Detailed DescriptionThe SbDPRotation class represents a rotation in 3D space using double precision data. SbDPRotation is used extensively throughout the Coin library. An SbDPRotation is stored internally as a quaternion for speed and storage reasons, but inquiries can be done to get and set axis and angle values for convenience. See also SbDPMatrix
Constructor & Destructor Documentation
SbDPRotation::SbDPRotation (void)The default constructor just initializes a valid rotation. The actual value is unspecified, and you should not depend on it.
SbDPRotation::SbDPRotation (const SbVec3d & axis, const double radians)Construct a new SbDPRotation object initialized with the given axis-of-rotation and rotation angle.
SbDPRotation::SbDPRotation (const double q[4])Construct a new SbDPRotation object initialized with the given quaternion components. The array must be ordered as follows: q[0] = x, q[1] = y, q[2] = z and q[3] = w, where the quaternion is specified by q=w+xi+yj+zk.
SbDPRotation::SbDPRotation (const double q0, const double q1, const double q2, const double q3)Construct a new SbDPRotation object initialized with the given quaternion components.
SbDPRotation::SbDPRotation (const SbDPMatrix & m)Construct a new SbDPRotation object initialized with the given rotation matrix.
SbDPRotation::SbDPRotation (const SbVec3d & rotateFrom, const SbVec3d & rotateTo)Construct a rotation which is the minimum rotation necessary to make vector rotateFrom point in the direction of vector rotateTo.
Member Function Documentation
const double * SbDPRotation::getValue (void) constReturn pointer to an array with the rotation expressed as four quaternion values. See also setValue().
void SbDPRotation::getValue (double & q0, double & q1, double & q2, double & q3) constReturn the four quaternion components representing the rotation. See also setValue().
SbDPRotation & SbDPRotation::setValue (const double q0, const double q1, const double q2, const double q3)Set the rotation. See also getValue().
void SbDPRotation::getValue (SbVec3d & axis, double & radians) constReturn the rotation in the form of an axis-of-rotation and a rotation angle. See also setValue().
void SbDPRotation::getValue (SbDPMatrix & matrix) constReturn this rotation in the form of a matrix. See also setValue().
SbDPRotation & SbDPRotation::invert (void)Invert the rotation. Returns reference to self. See also inverse()
SbDPRotation SbDPRotation::inverse (void) constNon-destructively inverses the rotation and returns the result. See also invert()
SbDPRotation & SbDPRotation::setValue (const double q[4])Reset the rotation by the four quaternions in the array. See also getValue().
SbDPRotation & SbDPRotation::setValue (const SbDPMatrix & m)Set the rotation from the components of the given matrix. Returns reference to self. See also getValue().
SbDPRotation & SbDPRotation::setValue (const SbVec3d & axis, const double radians)Reset rotation with the given axis-of-rotation and rotation angle. Returns reference to self. Make sure axis is not the null vector when calling this method. See also getValue().
SbDPRotation & SbDPRotation::setValue (const SbVec3d & rotateFrom, const SbVec3d & rotateTo)Construct a rotation which is the minimum rotation necessary to make vector rotateFrom point in the direction of vector rotateTo. Returns reference to self. See also getValue().
SbBool SbDPRotation::equals (const SbDPRotation & r, double tolerance) constCheck the internal quaternion representation vectors for equality within the given tolerance.
void SbDPRotation::multVec (const SbVec3d & src, SbVec3d & dst) constRotate the src vector and put the result in dst.
void SbDPRotation::scaleAngle (const double scaleFactor)Scale the angle of rotation by scaleFactor.
SbDPRotation slerp (const SbDPRotation & rot0, const SbDPRotation & rot1, double t) [static]Interpolates along the shortest path between the two rotation positions (from rot0 to rot1). Returns the SbDPRotation which will rotate rot0 the given part t of the spherical distance towards rot1, where t=0 will yield rot0 and t=1 will yield rot1. t should be in the interval [0, 1].
SbDPRotation SbDPRotation::identity (void) [static]Returns an identity rotation.
void SbDPRotation::print (FILE * fp) constDump the state of this object to the file stream. Only works in debug version of library, method does nothing in an optimized compile.
SbDPRotation & SbDPRotation::operator*= (const SbDPRotation & q)Multiplies the quaternions. Note that order is important when combining quaternions with the multiplication operator.
SbDPRotation & SbDPRotation::operator*= (const double s)Multiplies components of quaternion with scalar value s. Returns reference to self.
Friends And Related Function Documentation
int operator== (const SbDPRotation & q1, const SbDPRotation & q2) [related]Check if the two rotations are equal. See also equals().
int operator!= (const SbDPRotation & q1, const SbDPRotation & q2) [related]Check if the two rotations are unequal. See also equals().
SbDPRotation operator* (const SbDPRotation & q1, const SbDPRotation & q2) [related]Multiplies the two rotations and returns the result. Note that order is important when combining quaternions with the multiplication operator.
SbDPRotation slerp (const SbDPRotation & rot0, const SbDPRotation & rot1, double t) [related]Interpolates along the shortest path between the two rotation positions (from rot0 to rot1). Returns the SbDPRotation which will rotate rot0 the given part t of the spherical distance towards rot1, where t=0 will yield rot0 and t=1 will yield rot1. t should be in the interval [0, 1].
AuthorGenerated automatically by Doxygen for Coin from the source code. 0
Johanes Gumabo
Data Size : 48,410 byte man-SbDPRotation.3coin4Build : 2025-03-22, 13:26 :
Visitor Screen : 1280 x 720
Visitor Counter ( page / site ) : 22 / 2,358,244
Visitor ID : :
Visitor IP : 216.73.216.116 :
Visitor Provider : AMAZON-02 :
Provider Position ( lat x lon ) : 39.962500 x -83.006100 : x
Provider Accuracy Radius ( km ) : 20 :
Provider City : Columbus :
Provider Province : Ohio , : ,
Provider Country : United States :
Provider Continent : North America :
Visitor Recorder : Version :
Visitor Recorder : Library :
Online Linux Manual Page : Version : Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 25.03.22
Online Linux Manual Page : Library : lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page : Library : lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base : Version : Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base : Library : lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.