Rhino C++ API
8.13
|
#include <RhinoSdkSpaceMorph.h>
Public Member Functions | |
CRhinoBendSpaceMorph () | |
CRhinoBendSpaceMorph (const CRhinoBendSpaceMorph &) | |
~CRhinoBendSpaceMorph () | |
bool | IsIdentity (const ON_BoundingBox &bbox) const |
virtual ON_SpaceMorph override More... | |
bool | IsValid () const |
ON_3dPoint | MorphPoint (ON_3dPoint pt) const |
virtual ON_SpaceMorph override More... | |
bool | NewBendPoint (ON_3dPoint bend_point, double bend_angle_degrees) const |
bool | NonAttenuated () const |
CRhinoBendSpaceMorph & | operator= (const CRhinoBendSpaceMorph &) |
bool | SetArc (ON_3dPoint bend_pt, double bend_angle_degrees) |
void | SetNonAttenuated (bool bNonAttenuated) |
bool | SetSpine (ON_Line spine) |
Public Member Functions inherited from CRhinoSpaceMorph | |
CRhinoSpaceMorph () | |
virtual | ~CRhinoSpaceMorph () |
Public Member Functions inherited from ON_SpaceMorph | |
ON_SpaceMorph () | |
virtual | ~ON_SpaceMorph () |
virtual bool | Ev1Der (ON_3dPoint rst, ON_3dPoint &xyz, ON_3dVector &Dr, ON_3dVector &Ds, ON_3dVector &Dt) const |
bool | IsIdentity (const class ON_Curve &Crv, double tol) const |
bool | IsIdentity (const class ON_Surface &Srf, double tol) const |
bool | IsIdentity (const ON_SimpleArray< ON_3dPoint > &Points, double tol) const |
virtual ON_4dPoint | Morph4dPoint (ON_4dPoint point) const |
void | MorphPointList (int dim, bool is_rat, int count, int stride, double *point) const |
void | MorphPointList (int dim, bool is_rat, int count, int stride, float *point) const |
virtual ON_3dVector | MorphVector (ON_3dPoint tail_point, ON_3dVector vector) const |
bool | PreserveStructure () const |
bool | QuickPreview () const |
void | SetPreserveStructure (bool bPreserveStructure) |
void | SetQuickPreview (bool bQuickPreview) |
void | SetTolerance (double tolerance) |
double | Tolerance () const |
Static Public Member Functions | |
static bool | ValidBendAngle (double bend_angle_degrees) |
Public Attributes | |
bool | m_bStraightEnd |
bend morph options More... | |
bool | m_bSymmetric |
If m_bSymmetric is true, then the bend arc is mirrored. More... | |
Protected Attributes | |
ON_Arc | m_arc |
ON_3dPoint | m_arc_endpt |
double | m_arc_length |
double | m_bend_angle |
ON_3dPoint | m_bend_point |
bool | m_bHaveArc |
bool | m_bHaveSpine |
ON_Line | m_spine |
line More... | |
double | m_spine_length |
Bend morph Deforms objects by bending along a spine arc.
CRhinoBendSpaceMorph::CRhinoBendSpaceMorph | ( | ) |
CRhinoBendSpaceMorph::~CRhinoBendSpaceMorph | ( | ) |
CRhinoBendSpaceMorph::CRhinoBendSpaceMorph | ( | const CRhinoBendSpaceMorph & | ) |
|
virtual |
virtual ON_SpaceMorph override
Reimplemented from ON_SpaceMorph.
bool CRhinoBendSpaceMorph::IsValid | ( | ) | const |
Description: Checks whether arc and spine values have been set Returns: true if both arc and spine values are set
|
virtual |
virtual ON_SpaceMorph override
Implements ON_SpaceMorph.
bool CRhinoBendSpaceMorph::NewBendPoint | ( | ON_3dPoint | bend_point, |
double | bend_angle_degrees | ||
) | const |
Description: Checks to see if a bend point and bend angle have been updated and are valid Parameters: ON_3dPoint bend_point - [in] double bend_angle_degrees - [in] Returns: true if bend point and angle are valid and new, otherwise false
bool CRhinoBendSpaceMorph::NonAttenuated | ( | ) | const |
CRhinoBendSpaceMorph& CRhinoBendSpaceMorph::operator= | ( | const CRhinoBendSpaceMorph & | ) |
bool CRhinoBendSpaceMorph::SetArc | ( | ON_3dPoint | bend_pt, |
double | bend_angle_degrees | ||
) |
Description: Defines the arc about which to bend using a point and angle Parameters: ON_3dPoint bend_pt - [in] double bend_angle_degrees - [in] Returns: true if the arc has been successfully created from the supplied point and angle
void CRhinoBendSpaceMorph::SetNonAttenuated | ( | bool | bNonAttenuated | ) |
If false (default), the morph will be attenuated at arc ends, making it suitable for morphing parts of objects. If true, the morph will uniformly affect the entire region along the arc. Most suitable for morphing whole objects.
bool CRhinoBendSpaceMorph::SetSpine | ( | ON_Line | spine | ) |
Description: Checks if the bend spine line is valid, then sets the spine parameter Parameters: ON_Line spine - [in] Returns: true if successfully set spine
|
static |
Description: Checks whether a supplied angle in degrees is valid Parameters: double bend_angle_degrees - [in] angle in degrees to verify Returns: true if the angle is valid
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
m_arc starts at m_spine.from, is tangent to m_spine.Direction, and ends at m_arc_endpt. The length of this arc is generally different that the length of the spine. This is the raw input information. The DrawSpineAndArc() and MorphPoint() functions extend/shorten this arc based on the value m_bStraightEnd.
|
protected |
bool CRhinoBendSpaceMorph::m_bStraightEnd |
bend morph options
If m_bStraightEnd is true, then the length of the bend arc = length of the spine. If m_bStraightEnd is false, then the bend arc ends at the bend point. The option is poorly named, because even when m_bStraightEnd=false, the bend is straight after the bend point.
bool CRhinoBendSpaceMorph::m_bSymmetric |
If m_bSymmetric is true, then the bend arc is mirrored.
|
protected |
line
|
protected |