#include
<MPoint.h>
List of all
members.
Detailed Description
Implementation of a point.
This class provides an implementation of a point. Numerous
convienence operators are provided to help with the manipulation of
points. This includes operators that work with the MVector and
MMatrix
classes.
All methods that query the point are threadsafe, all methods
that modify the point are not threadsafe.
-
animInfoCmd.cpp,
apiMeshCreator.cpp,
apiMeshData.cpp,
apiMeshIterator.cpp,
apiMeshIterator.h,
apiMeshShape.cpp,
apiMeshShape.h, apiMeshShapeUI.cpp,
apiSimpleShapeIterator.cpp,
apiSimpleShapeIterator.h,
apiSimpleShapeUI.cpp,
blindDataMesh.cpp,
cgfxShaderNode.cpp,
closestPointCmd.cpp,
closestPointOnCurveCmd.cpp,
closestPointOnCurveCmd.h,
closestPointOnCurveNode.cpp,
closestPointOnNurbsSurfaceCmd.cpp,
closestTangentUAndDistance.cpp,
closestTangentUAndDistance.h,
clusterWeightFunction.cpp,
componentScaleManip.cpp,
curvedArrowsNode.cpp,
cvColorNode.cpp,
cvPosCmd.cpp, D3DResourceManager.cpp,
D3DViewportRenderer.cpp,
fluidInfoCmd.cpp,
footPrintManip.cpp,
footPrintNode.cpp,
getPointAndNormal.cpp,
getPointAndNormal.h,
helix2Cmd.cpp, helixCmd.cpp,
helixTool.cpp, hwAnisotropicShader_NV20.cpp,
hwPhongShader.h,
hwReflectBumpShader_NV20.h,
hwToonShader_NV20.cpp,
instancerListCmd.cpp,
intersectOnNurbsSurfaceCmd.cpp,
lassoTool.cpp, latticeNoiseNode.cpp,
lineManip.cpp, lineManip.h, lineManipContainer.cpp,
lineManipContainer.h,
manipulatorMath.cpp,
manipulatorMath.h,
meshMapUtils.cpp,
meshOpFtyAction.cpp,
meshRemapTool.cpp,
motionTraceCmd.cpp,
moveCurveCVsCmd.cpp,
moveManip.cpp, moveNumericTool.cpp,
moveTool.cpp, narrowPolyViewer.cpp,
objExport.cpp, offsetNode.cpp,
OpenGLViewportRenderer.cpp,
ownerEmitter.cpp,
ownerEmitter.h, particleAttrNode.cpp,
particleIdHash.h,
particlePathsCmd.cpp,
particleSystemInfoCmd.cpp,
pointOnMeshCmd.cpp,
pointOnMeshInfoNode.cpp,
pointOnSubdNode.cpp,
quadricShape.cpp,
rockingTransform.cpp,
sampleCmd.cpp, shellNode.cpp,
simpleEmitter.cpp,
simpleEmitter.h,
simpleFluidEmitter.cpp,
simpleLoftNode.cpp,
simpleSolverNode.cpp,
squareScaleManip.cpp,
squareScaleManip.h,
squareScaleManipContext.cpp,
squareScaleManipContext.h,
surfaceBumpManip.cpp,
surfaceCreate.cpp,
surfaceCreateCmd.cpp,
surfaceTwist.cpp,
surfaceTwistCmd.cpp,
sweptEmitter.h, swissArmyManip.cpp,
viewCallbackTest.cpp,
and yTwistNode.cpp.
Constructor & Destructor Documentation
MPoint::MPoint |
( |
|
) |
[inline] |
Default constructor. The instance is initialized to the
origin.
MPoint::MPoint |
( |
const MPoint & |
srcpt |
) |
[inline] |
Copy constructor. Creates an new instance and initializes it to
the same point as the given point.
- Parameters:
-
[in] |
srcpt |
The point object to copy from. |
Class constructor. Creates an new instance and initializes it to
the x, y, z, w values of the given point.
- Parameters:
-
[in] |
srcpt |
the point object to copy |
MPoint::MPoint |
( |
const MVector & |
src |
) |
|
Class constructor. Creates an new instance and initializes it to
the x, y, z values of the given vector. The w value is set to
1.0.
- Parameters:
-
[in] |
src |
the vector object to copy |
Class constructor. Creates an new instance and initializes it to
the x, y, z values of the given vector. The w value is set to
1.0.
- Parameters:
-
[in] |
src |
the vector object to copy |
MPoint::MPoint |
( |
double |
xx, |
|
|
double |
yy, |
|
|
double |
zz = 0.0 , |
|
|
double |
ww = 1.0 |
|
|
) |
|
|
[inline] |
Create a new instance and initialize it to the given
position.
- Parameters:
-
[in] |
xx |
The initial value of x. |
[in] |
yy |
The initial value of y. |
[in] |
zz |
The initial value of z. |
[in] |
ww |
The initial value of w. |
MPoint::MPoint |
( |
const double |
d[4] |
) |
[inline] |
Create a new instance and initialize it to the given
position.
- Parameters:
-
[in] |
d |
array of 4 doubles used to initialize x, y, z, and w
respectively. |
MPoint::MPoint |
( |
const float |
d[4] |
) |
[inline] |
Create a new instance and initialize it to the given
position.
- Parameters:
-
[in] |
d |
An array of 4 floats used to initialize x, y, z, and w
respectively. |
MPoint::~MPoint |
( |
|
) |
[inline] |
Member Function Documentation
MStatus MPoint::get |
( |
double |
dest[4] |
) |
const [inline] |
Copy the values of x, y, z, and w from the instance to the four
elements of the given array of doubles.
- Parameters:
-
[out] |
dest |
The four element array of doubles. |
- Returns:
- MS::kSuccess if dest is a
non-zero pointer and MS::kFailure otherwise.
MStatus MPoint::get |
( |
float |
dest[4] |
) |
const [inline] |
Copy the values of x, y, z, and w from the instance to the four
elements of the given array of floats.
- Parameters:
-
[out] |
dest |
The four element array of floats. |
- Returns:
- MS::kSuccess if dest is a
non-zero pointer and MS::kFailure otherwise.
double MPoint::operator[] |
( |
unsigned int |
i |
) |
const [inline] |
The index operator.
- If the argument is 0 it will return the x component of the
constant instance.
- If the argument is 1 it will return the y component of the
constant instance.
- If the argument is 2 it will return the z component of the
constant instance.
- If the argument is 3 it will return the w component of the
constant instance.
- Otherwise it will return the x component of the point.
- Parameters:
-
[in] |
i |
Value indicating which component to return. |
- Returns:
- The value of the indicated component of the instance.
double MPoint::operator() |
( |
unsigned int |
i |
) |
const [inline] |
The index operator.
- If the argument is 0 it will return the x component of the
constant instance.
- If the argument is 1 it will return the y component of the
constant instance.
- If the argument is 2 it will return the z component of the
constant instance.
- If the argument is 3 it will return the w component of the
constant instance.
- Otherwise it will return the x component of the point.
- Parameters:
-
[in] |
i |
Value indicating which component to return. |
- Returns:
- The value of the indicated component of the instance.
The assignment operator.
- Parameters:
-
[in] |
src |
Point to copy from. |
- Returns:
- A reference to the assigned point.
MVector MPoint::operator- |
( |
const MPoint & |
other |
) |
const [inline] |
The subtraction operator for two MPoints. The result is the
MVector from the
other point to this instance.
- Parameters:
-
[in] |
other |
The other point. |
- Returns:
- MVector from the
other point to this point
MPoint MPoint::operator+ |
( |
const MVector & |
other |
) |
const [inline] |
The addition operator for adding an MVector to an
MPoint. A new point is returned
whose position is that of the original point translated by the
vector.
- Parameters:
-
[in] |
other |
Vector to add. |
- Returns:
- The resulting point.
MPoint MPoint::operator- |
( |
const MVector & |
other |
) |
const [inline] |
The addition operator for subtracting an MVector from an
MPoint. A new point is returned
whose position is that of the original point translated by the
inverse of the vector.
- Parameters:
-
[in] |
other |
Vector to substract. |
- Returns:
- The resulting point.
The in-place addition operator for adding an MVector to an
MPoint. The current instance is
translated from its original position by the vector.
- Parameters:
-
[in] |
vector |
Vector to add. |
- Returns:
- A reference to the resulting point.
The in-place subtraction operator for subtracting an MVector from an
MPoint. The current instance is
translated from its original position by the inverse of the
vector.
- Parameters:
-
[in] |
vector |
Vector to substract. |
- Returns:
- A reference to the resulting point.
MPoint MPoint::operator* |
( |
const double |
scale |
) |
const [inline] |
The multipication operator that allows the vector to by scaled
by the given double parameter. The x, y, and z components are each
multiplied by the parameter. The w component remains unchanged.
- Parameters:
-
[in] |
scale |
The scale parameter. |
- Returns:
- The resulting point.
MPoint MPoint::operator/ |
( |
const double |
scale |
) |
const [inline] |
The division operator that allows the vector to by scaled by the
given double parameter. The x, y, and z components are each divided
by the parameter. The w component remains unchanged.
- Parameters:
-
[in] |
scale |
The scale parameter. |
- Returns:
- The resulting point.
The multiplication operator for computing the product of this
point instance with the given matrix.
- Parameters:
-
[in] |
right |
the MMatrix to
right multiply by |
- Returns:
- A point representing the product
The in-place multiplication operator for computing the product
of this point instance with the given matrix.
- Parameters:
-
[in] |
right |
the MMatrix to
right multiply by |
- Returns:
- A point representing the product
bool MPoint::operator== |
( |
const MPoint & |
other |
) |
const [inline] |
The equality operator.
- Parameters:
-
[in] |
other |
Point to compare with. |
- Returns:
- True if all of the x, y, z components of the two points are
identical.
bool MPoint::operator!= |
( |
const MPoint & |
other |
) |
const [inline] |
The inequality operator.
- Parameters:
-
[in] |
other |
Point to compare with. |
- Returns:
- True if any of the x, y, z components of the two points are not
identical.
MPoint & MPoint::cartesianize |
( |
|
) |
|
If this point instance is of the form P(W*x, W*y, W*z, W), for
some scale factor W != 0, then it is reset to be P(x, y, z, 1).
This will only work correctly if the point is in homogenous form or
cartesian form. If the point is in rational form, the results are
not defined.
MPoint & MPoint::rationalize |
( |
|
) |
|
If this point instance is of the form P(W*x, W*y, W*z, W) (ie.
is in homogenous or (for W==1) cartesian form), for some scale
factor W != 0, then it is reset to be P(x, y, z, W). This will only
work correctly if the point is in homogenous or cartesian form. If
the point is already in rational form, the resultsare not
defined.
MPoint & MPoint::homogenize |
( |
|
) |
|
If this point instance is of the form P(x, y, z, W) (ie. is in
rational or (for W==1) cartesian form), for some scale factor W !=
0, then it is reset to be P(W*x, W*y, W*z, W).
double MPoint::distanceTo |
( |
const MPoint & |
other |
) |
const [inline] |
Return the distance between this instance and the point passed
as an argument.
- Parameters:
-
[in] |
other |
The point to compute the distance to. |
- Returns:
- The distance between the two points.
bool MPoint::isEquivalent |
( |
const MPoint & |
other, |
|
|
double |
tol = 1.0e-10 |
|
|
) |
|
|
const [inline] |
Returns true if this instance of the point passed as an argument
represent the same position within the specified tolerance.
- Parameters:
-
[in] |
other |
The other point to compare to. |
[in] |
tol |
The tolerance to use during the comparison. |
- Returns:
- True if the points are equal within the given tolerance and
false otherwise.
double & MPoint::operator[] |
( |
unsigned int |
i |
) |
[inline] |
NO SCRIPT SUPPORT.
The index operator.
- If the argument is 0 it will return the x component of the
instance.
- If the argument is 1 it will return the y component of the
instance.
- If the argument is 2 it will return the z component of the
instance.
- If the argument is 3 it will return the w component of the
instance.
- Otherwise it will return the x component of the instance.
- Parameters:
-
[in] |
i |
Value indicating which component to return. |
- Returns:
- The value of the indicated component of the instance.
double & MPoint::operator() |
( |
unsigned int |
i |
) |
[inline] |
NO SCRIPT SUPPORT.
The index operator. If the argument is 0 it will return the x
component of the instance. If the argument is 1 it will return the
y component of the instance. If the argument is 2 it will return
the z component of the instance. If the argument is 3 it will
return the w component of the instance. Otherwise it will return
the x component of the instance.
- Parameters:
-
[in] |
i |
Value indicating which component to return. |
- Returns:
- The value of the indicated component of the instance.
Friends And Related Function Documentation
NO SCRIPT SUPPORT.
The multiplication operator for computing the product of this
point instance with the given matrix that allows the matrix to be
on the left side of the operator.
- Parameters:
-
[in] |
left |
the MMatrix to
right multiply by |
[in] |
right |
this point instance |
- Returns:
- A point representing the product
OPENMAYA_EXPORT std::ostream&
operator<< |
( |
std::ostream & |
os, |
|
|
const MPoint & |
p |
|
|
) |
|
|
[friend] |
NO SCRIPT SUPPORT.
Print the contents of the given MPoint
on the given ostream. The format used is [x, y, z, w].
- Parameters:
-
[in] |
os |
the ostream to print to |
[in] |
p |
the MPoint whose value is to be
printed |
- Returns:
- The ostream reference, s, provided as the first
parameter.
Member Data Documentation
A constant representing the origin - (0,0,0,1).