#include <opennurbs_bezier.h>
Public Member Functions | |
ON_BezierCageMorph () | |
virtual | ~ON_BezierCageMorph () |
const ON_BezierCage & | BezierCage () const |
bool | Create (ON_3dPoint P0, ON_3dPoint P1, ON_3dPoint P2, ON_3dPoint P3, int point_countX, int point_countY, int point_countZ) |
Create a Bezier volume. More... | |
bool | Read (ON_BinaryArchive &archive) |
bool | SetBezierCage (ON_BezierCage &unitcube2world) |
Set the unit cube to world map. More... | |
bool | SetXform (ON_Xform world2unitcube) |
Set the world to unit cube map. More... | |
bool | Transform (const ON_Xform &xform) |
Transforms the morph by transforming the bezier volume map. More... | |
const ON_Xform & | WorldToUnitCube () const |
bool | Write (ON_BinaryArchive &archive) const |
Public Member Functions inherited from ON_SpaceMorph | |
ON_SpaceMorph () | |
virtual | ~ON_SpaceMorph () |
virtual bool | IsIdentity (const ON_BoundingBox &bbox) const |
Provides a quick way to determine if a morph function is the identity (doesn't move the points) on a region of space. More... | |
bool | IsIdentity (const ON_SimpleArray< ON_3dPoint > &Points, double tol) const |
A slower way to determine if a morph function is the identity (doesn't move the points) on a set of points, to within a tolerance More... | |
bool | IsIdentity (const class ON_Surface &Srf, double tol) const |
A slower way to determine if a morph function is the identity (doesn't move the points) on a surface, to within a tolerance More... | |
bool | IsIdentity (const class ON_Curve &Crv, double tol) const |
A slower way to determine if a morph function is the identity (doesn't move the points) on a curve, to within a tolerance. More... | |
bool | PreserveStructure () const |
bool | QuickPreview () const |
void | SetPreserveStructure (bool bPreserveStructure) |
Set the preserve structure value. More... | |
void | SetQuickPreview (bool bQuickPreview) |
Set the quick preview value. More... | |
void | SetTolerance (double tolerance) |
Set the 3d fitting tolerance used when morphing surfaces and breps. More... | |
double | Tolerance () const |
Returns the desired accuracy of the morph. This value is primarily used for deforming surfaces and breps. More... | |
ON_BezierCageMorph::ON_BezierCageMorph | ( | ) |
|
virtual |
const ON_BezierCage& ON_BezierCageMorph::BezierCage | ( | ) | const |
bool ON_BezierCageMorph::Create | ( | ON_3dPoint | P0, |
ON_3dPoint | P1, | ||
ON_3dPoint | P2, | ||
ON_3dPoint | P3, | ||
int | point_countX, | ||
int | point_countY, | ||
int | point_countZ | ||
) |
Create a Bezier volume.
P0 | [in] |
P1 | [in] |
P2 | [in] |
P3 | [in] P0,P1,P2,P3 defines a parallepiped in world space. The morph maps this parallepiped to the (0,1)x(0,1)x(0,1) unit cube and then applies the BezierCage map. |
______________ |\ |\ | \ | \ | \P3____________\ | | | | | | | | | | | |</param>
P2 | –|-------— | \ | \ | \ |z \ | y \ | \ | x |
point_countX | [in] |
point_countY | [in] |
point_countZ | [in] Number of control points in the bezier volume map. The bezier volume in the returned morph is the identity map which can be modified as needed. |
bool ON_BezierCageMorph::Read | ( | ON_BinaryArchive & | archive | ) |
bool ON_BezierCageMorph::SetBezierCage | ( | ON_BezierCage & | unitcube2world | ) |
Set the unit cube to world map.
world2unitcube | [in] Bezier volume map from the unit cube (0,1)x(0,1)x(0,1) to world space. Returns True if current transformation matrix and input bezier volume are valid. In all cases, the morph's m_rst2xyz member is set. |
bool ON_BezierCageMorph::SetXform | ( | ON_Xform | world2unitcube | ) |
Set the world to unit cube map.
world2unitcube | [in] Tranformation matrix that maps world coordinates to the unit cube (0,1)x(0,1)x(0,1). Returns True if current bezier volum and input transformation matrix are valid. In all cases, the morph's m_xyz2rst member is set. |
bool ON_BezierCageMorph::Transform | ( | const ON_Xform & | xform | ) |
Transforms the morph by transforming the bezier volume map.
xform | [in] Returns True if input is valid. |
const ON_Xform& ON_BezierCageMorph::WorldToUnitCube | ( | ) | const |
bool ON_BezierCageMorph::Write | ( | ON_BinaryArchive & | archive | ) | const |