|
CFx SDK Documentation
2023 SP0
|
#include <GeScale3d.h>
Public Member Functions | |
| OdGeScale3d () | |
| OdGeScale3d (double factor) | |
| OdGeScale3d (double xFactor, double yFactor, double zFactor) | |
| OdGeScale3d | operator* (const OdGeScale3d &scaleVec) const |
| OdGeScale3d | operator* (double factor) const |
| OdGeScale3d & | operator*= (const OdGeScale3d &scaleVec) |
| OdGeScale3d & | operator*= (double factor) |
| OdGeScale3d & | preMultBy (const OdGeScale3d &leftSide) |
| OdGeScale3d & | postMultBy (const OdGeScale3d &rightSide) |
| OdGeScale3d & | setToProduct (const OdGeScale3d &scaleVec1, const OdGeScale3d &scaleVec2) |
| OdGeScale3d & | setToProduct (const OdGeScale3d &scaleVec, double factor) |
| OdGeScale3d | inverse () const |
| OdGeScale3d & | invert () |
| bool | isProportional (const OdGeTol &tol=OdGeContext::gTol) const |
| bool | operator== (const OdGeScale3d &scaleVec) const |
| bool | operator!= (const OdGeScale3d &scaleVec) const |
| bool | isEqualTo (const OdGeScale3d &scaleVec, const OdGeTol &tol=OdGeContext::gTol) const |
| double | operator[] (unsigned int i) const |
| double & | operator[] (unsigned int i) |
| OdGeScale3d & | set (double xFactor, double yFactor, double zFactor) |
| operator OdGeMatrix3d () const | |
| void | getMatrix (OdGeMatrix3d &xfm) const |
| OdGeScale3d & | extractScale (const OdGeMatrix3d &xfm) |
| OdGeScale3d & | removeScale (OdGeMatrix3d &xfm) |
| bool | isValid () const |
Public Attributes | |
| double | sx |
| double | sy |
| double | sz |
Static Public Attributes | |
| static GE_STATIC_EXPORT const OdGeScale3d | kIdentity |
Friends | |
| OdGeScale3d | operator* (double factor, const OdGeScale3d &scaleVec) |
This class represents scaling transformations (scale vectors) in 3D space.
Corresponding C++ library: TD_Ge
<group OdGe_Classes>
Definition at line 46 of file GeScale3d.h.
|
inline |
| factor | [in] Uniform scale factor. |
| xFactor | [in] The X scale factor. |
| yFactor | [in] The Y scale factor. |
| zFactor | [in] The Z scale factor. |
| source | [in] Object to be cloned. |
Definition at line 56 of file GeScale3d.h.
|
inline |
Definition at line 59 of file GeScale3d.h.
|
inline |
Definition at line 63 of file GeScale3d.h.
| OdGeScale3d& OdGeScale3d::extractScale | ( | const OdGeMatrix3d & | xfm | ) |
Returns the scale vector corresponding to the lengths of the column vectors of the transformation matrix.
| xfm | [out] Receives the 3D transformation matrix. |
| void OdGeScale3d::getMatrix | ( | OdGeMatrix3d & | xfm | ) | const |
Returns the transformation matrix equivalent to this scale vector.
| xfm | [out] Receives the 3D transformation matrix. |
| OdGeScale3d OdGeScale3d::inverse | ( | ) | const |
Returns the inverse of this scale vector.
| OdGeScale3d& OdGeScale3d::invert | ( | ) |
Sets this scale vector to its inverse, and returns a reference to this scale vector.
| bool OdGeScale3d::isEqualTo | ( | const OdGeScale3d & | scaleVec, |
| const OdGeTol & | tol = OdGeContext::gTol |
||
| ) | const |
Returns true if and only if scaleVec is identical to this one, within the specified tolerance.
| scaleVec | [in] Any 2D scale vector. |
| tol | [in] Geometric tolerance. |
| bool OdGeScale3d::isProportional | ( | const OdGeTol & | tol = OdGeContext::gTol | ) | const |
Returns true if and only if the scaling matrix corresponding to this scale vector isUniScaledOrtho ().
| tol | [in] Geometric tolerance. |
|
inline |
Returns true if this scale vector has nonzero coordinates or false if at least one coordinate is zero.
Definition at line 258 of file GeScale3d.h.
| OdGeScale3d::operator OdGeMatrix3d | ( | ) | const |
Returns the equivalent 3D tranformation matrix.
| bool OdGeScale3d::operator!= | ( | const OdGeScale3d & | scaleVec | ) | const |
| OdGeScale3d OdGeScale3d::operator* | ( | const OdGeScale3d & | scaleVec | ) | const |
| scaleVec | [in] Any 3D scale vector. |
| factor | [in] Uniform scale factor. |
| OdGeScale3d OdGeScale3d::operator* | ( | double | factor | ) | const |
| OdGeScale3d& OdGeScale3d::operator*= | ( | const OdGeScale3d & | scaleVec | ) |
| scaleVec | [in] Any 3D scale vector. |
| factor | [in] Uniform scale factor. |
scl * [xs ys zs] = [scl*xs scl*ys scl*zs]
[xs1 ys1 zs1] * [xs2 ys2 zs2] = [xs1*xs2 ys1*ys2 zs1*zs2]
| OdGeScale3d& OdGeScale3d::operator*= | ( | double | factor | ) |
| bool OdGeScale3d::operator== | ( | const OdGeScale3d & | scaleVec | ) | const |
|
inline |
Definition at line 199 of file GeScale3d.h.
|
inline |
| i | [in] Index of component. |
Returns or references the ith component of the scale vector.
0 returns or references the X scale factor. 1 returns or references the Y scale factor. 2 returns or references the Z scale factor.
Definition at line 197 of file GeScale3d.h.
| OdGeScale3d& OdGeScale3d::postMultBy | ( | const OdGeScale3d & | rightSide | ) |
Sets this scale vector to the product (this scale vector) * (rightSide), and returns a reference to this scale vector.
| rightSide | [in] Any 3D scale vector. |
| OdGeScale3d& OdGeScale3d::preMultBy | ( | const OdGeScale3d & | leftSide | ) |
Sets this scale vector to the product leftSide * (this scale vector), and returns a reference to this scale vector.
| leftSide | [in] Any 3D scale vector. |
| OdGeScale3d& OdGeScale3d::removeScale | ( | OdGeMatrix3d & | xfm | ) |
Returns the scale vector corresponding to the lengths of the column vectors of the transformation matrix, and sets the scale factor of the matrix to 1 .
| xfm | [out] Receives the 2D transformation matrix. |
|
inline |
Sets this scale vector to the specified X and Y factors, and returns a reference to this vectors.
| xFactor | [in] The X scale factor. |
| yFactor | [in] The Y scale factor. |
| zFactor | [in] The Z scale factor. |
Definition at line 210 of file GeScale3d.h.
| OdGeScale3d& OdGeScale3d::setToProduct | ( | const OdGeScale3d & | scaleVec, |
| double | factor | ||
| ) |
Sets this scale vector to the product factor * scaleVec, and returns a reference to this scale vector.
| factor | [in] Uniform scale factor. |
| scaleVec | [in] Any 2D scale vector. |
scl * [xs ys zs] = [scl*xs scl*ys scl*zs]
[xs1 ys1 zs1] * [xs2 ys2 zs2] = [xs1*xs2 ys1*ys2 zs1*zs2]
| OdGeScale3d& OdGeScale3d::setToProduct | ( | const OdGeScale3d & | scaleVec1, |
| const OdGeScale3d & | scaleVec2 | ||
| ) |
Sets this scale vector to the product scaleVec1 * scaleVec2 and returns a reference to this scale vector.
| scaleVec1 | [in] Any 2D scale vector. |
| scaleVec2 | [in] Any 2D scale vector. |
scl * [xs ys zs] = [scl*xs scl*ys scl*zs]
[xs1 ys1 zs1] * [xs2 ys2 zs2] = [xs1*xs2 ys1*ys2 zs1*zs2]
|
friend |
|
static |
Definition at line 68 of file GeScale3d.h.
| double OdGeScale3d::sx |
Definition at line 260 of file GeScale3d.h.
| double OdGeScale3d::sy |
Definition at line 261 of file GeScale3d.h.
| double OdGeScale3d::sz |
Definition at line 262 of file GeScale3d.h.