#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 |