QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
ON_BezierSurface Class Reference

#include <opennurbs_bezier.h>

Public Member Functions

ON_BoundingBox BoundingBox () const
 
bool Create (int dim, int is_rat, int order0, int order1)
 
double * CV (int cv_index0, int cv_index1) const
 
int CVSize () const
 
ON::point_style CVStyle () const
 
int Degree (int) const
 
void Destroy ()
 
int Dimension () const
 
ON_Interval Domain (int) const
 
void Dump (ON_TextLog &) const
 
void EmergencyDestroy ()
 
bool Evaluate (double, double, int, int, double *) const
 
bool GetBBox (double *, double *, int bGrowBox=false) const
 
bool GetBoundingBox (ON_BoundingBox &bbox, int bGrowBox) const
 
bool GetClosestPoint (ON_3dPoint P, double *s, double *t, double maximum_distance=0.0, const ON_Interval *sub_domain0=0, const ON_Interval *sub_domain1=0) const
 
bool GetCV (int, int, ON::point_style, double *) const
 
bool GetCV (int, int, ON_3dPoint &) const
 
bool GetCV (int, int, ON_4dPoint &) const
 
bool GetLocalClosestPoint (ON_3dPoint P, double s_seed, double t_seed, double *s, double *t, const ON_Interval *sub_domain0=0, const ON_Interval *sub_domain1=0) const
 
bool GetNurbForm (ON_NurbsSurface &) const
 
ON_BezierCurveIsoCurve (int dir, double c, ON_BezierCurve *iso=NULL) const
 
bool IsRational () const
 
bool IsSingular (int) const
 
bool IsValid () const
 
bool Loft (const ON_ClassArray< ON_BezierCurve > &curve_list)
 
bool Loft (int count, const ON_BezierCurve *const *curve_list)
 
bool MakeNonRational ()
 
bool MakeRational ()
 
bool Morph (const ON_SpaceMorph &morph)
 
 ON_BezierSurface ()
 
 ON_BezierSurface (const ON_BezierSurface &)
 
 ON_BezierSurface (const ON_PolynomialSurface &)
 
 ON_BezierSurface (int dim, int is_rat, int order0, int order1)
 
ON_BezierSurfaceoperator= (const ON_BezierSurface &)
 
ON_BezierSurfaceoperator= (const ON_PolynomialSurface &)
 
int Order (int) const
 
ON_3dPoint PointAt (double s, double t) const
 
bool ReserveCVCapacity (int)
 
bool Reverse (int)
 
bool Rotate (double rotation_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center)
 
bool Rotate (double sin_angle, double cos_angle, const ON_3dVector &rotation_axis, const ON_3dPoint &rotation_center)
 
bool Scale (double scale_factor)
 
bool SetCV (int, int, const ON_3dPoint &)
 
bool SetCV (int, int, const ON_4dPoint &)
 
bool SetCV (int, int, ON::point_style, const double *)
 
bool SetWeight (int, int, double)
 
bool Split (int, double, ON_BezierSurface &, ON_BezierSurface &) const
 
bool Transform (const ON_Xform &)
 
bool Translate (const ON_3dVector &translation_vector)
 
bool Transpose ()
 
bool Trim (int dir, const ON_Interval &domain)
 
double Weight (int, int) const
 
bool ZeroCVs ()
 
 ~ON_BezierSurface ()
 

Public Attributes

double * m_cv
 
int m_cv_capacity
 
int m_cv_stride [2]
 
int m_dim
 
int m_is_rat
 
int m_order [2]
 

Constructor & Destructor Documentation

◆ ON_BezierSurface() [1/4]

ON_BezierSurface::ON_BezierSurface ( )

◆ ON_BezierSurface() [2/4]

ON_BezierSurface::ON_BezierSurface ( int dim,
int is_rat,
int order0,
int order1 )

◆ ~ON_BezierSurface()

ON_BezierSurface::~ON_BezierSurface ( )

◆ ON_BezierSurface() [3/4]

ON_BezierSurface::ON_BezierSurface ( const ON_BezierSurface & src)

◆ ON_BezierSurface() [4/4]

ON_BezierSurface::ON_BezierSurface ( const ON_PolynomialSurface & src)

Member Function Documentation

◆ BoundingBox()

ON_BoundingBox ON_BezierSurface::BoundingBox ( ) const

◆ Create()

bool ON_BezierSurface::Create ( int dim,
int is_rat,
int order0,
int order1 )

◆ CV()

double * ON_BezierSurface::CV ( int cv_index0,
int cv_index1 ) const

◆ CVSize()

int ON_BezierSurface::CVSize ( ) const

◆ CVStyle()

ON::point_style ON_BezierSurface::CVStyle ( ) const

◆ Degree()

int ON_BezierSurface::Degree ( int dir) const

◆ Destroy()

void ON_BezierSurface::Destroy ( )

◆ Dimension()

int ON_BezierSurface::Dimension ( ) const

◆ Domain()

ON_Interval ON_BezierSurface::Domain ( int ) const

◆ Dump()

void ON_BezierSurface::Dump ( ON_TextLog & dump) const

◆ EmergencyDestroy()

void ON_BezierSurface::EmergencyDestroy ( )

◆ Evaluate()

bool ON_BezierSurface::Evaluate ( double s,
double t,
int der_count,
int v_stride,
double * v ) const

◆ GetBBox()

bool ON_BezierSurface::GetBBox ( double * boxmin,
double * boxmax,
int bGrowBox = false ) const

◆ GetBoundingBox()

bool ON_BezierSurface::GetBoundingBox ( ON_BoundingBox & bbox,
int bGrowBox ) const

◆ GetClosestPoint()

bool ON_BezierSurface::GetClosestPoint ( ON_3dPoint P,
double * s,
double * t,
double maximum_distance = 0.0,
const ON_Interval * sub_domain0 = 0,
const ON_Interval * sub_domain1 = 0 ) const

◆ GetCV() [1/3]

bool ON_BezierSurface::GetCV ( int i,
int j,
ON::point_style style,
double * Point ) const

◆ GetCV() [2/3]

bool ON_BezierSurface::GetCV ( int i,
int j,
ON_3dPoint & point ) const

◆ GetCV() [3/3]

bool ON_BezierSurface::GetCV ( int i,
int j,
ON_4dPoint & point ) const

◆ GetLocalClosestPoint()

bool ON_BezierSurface::GetLocalClosestPoint ( ON_3dPoint P,
double s_seed,
double t_seed,
double * s,
double * t,
const ON_Interval * sub_domain0 = 0,
const ON_Interval * sub_domain1 = 0 ) const

◆ GetNurbForm()

bool ON_BezierSurface::GetNurbForm ( ON_NurbsSurface & n) const

◆ IsoCurve()

ON_BezierCurve * ON_BezierSurface::IsoCurve ( int dir,
double c,
ON_BezierCurve * iso = NULL ) const

◆ IsRational()

bool ON_BezierSurface::IsRational ( ) const

◆ IsSingular()

bool ON_BezierSurface::IsSingular ( int side) const

◆ IsValid()

bool ON_BezierSurface::IsValid ( ) const

◆ Loft() [1/2]

bool ON_BezierSurface::Loft ( const ON_ClassArray< ON_BezierCurve > & curve_list)

◆ Loft() [2/2]

bool ON_BezierSurface::Loft ( int count,
const ON_BezierCurve *const * curve_list )

◆ MakeNonRational()

bool ON_BezierSurface::MakeNonRational ( )

◆ MakeRational()

bool ON_BezierSurface::MakeRational ( )

◆ Morph()

bool ON_BezierSurface::Morph ( const ON_SpaceMorph & morph)

◆ operator=() [1/2]

ON_BezierSurface & ON_BezierSurface::operator= ( const ON_BezierSurface & src)

◆ operator=() [2/2]

ON_BezierSurface & ON_BezierSurface::operator= ( const ON_PolynomialSurface & src)

◆ Order()

int ON_BezierSurface::Order ( int dir) const

◆ PointAt()

ON_3dPoint ON_BezierSurface::PointAt ( double s,
double t ) const

◆ ReserveCVCapacity()

bool ON_BezierSurface::ReserveCVCapacity ( int capacity)

◆ Reverse()

bool ON_BezierSurface::Reverse ( int dir)

◆ Rotate() [1/2]

bool ON_BezierSurface::Rotate ( double rotation_angle,
const ON_3dVector & rotation_axis,
const ON_3dPoint & rotation_center )

◆ Rotate() [2/2]

bool ON_BezierSurface::Rotate ( double sin_angle,
double cos_angle,
const ON_3dVector & rotation_axis,
const ON_3dPoint & rotation_center )

◆ Scale()

bool ON_BezierSurface::Scale ( double scale_factor)

◆ SetCV() [1/3]

bool ON_BezierSurface::SetCV ( int i,
int j,
const ON_3dPoint & point )

◆ SetCV() [2/3]

bool ON_BezierSurface::SetCV ( int i,
int j,
const ON_4dPoint & point )

◆ SetCV() [3/3]

bool ON_BezierSurface::SetCV ( int i,
int j,
ON::point_style style,
const double * Point )

◆ SetWeight()

bool ON_BezierSurface::SetWeight ( int i,
int j,
double w )

◆ Split()

bool ON_BezierSurface::Split ( int dir,
double t,
ON_BezierSurface & left_bez,
ON_BezierSurface & right_bez ) const

◆ Transform()

bool ON_BezierSurface::Transform ( const ON_Xform & xform)

◆ Translate()

bool ON_BezierSurface::Translate ( const ON_3dVector & translation_vector)

◆ Transpose()

bool ON_BezierSurface::Transpose ( )

◆ Trim()

bool ON_BezierSurface::Trim ( int dir,
const ON_Interval & domain )

◆ Weight()

double ON_BezierSurface::Weight ( int i,
int j ) const

◆ ZeroCVs()

bool ON_BezierSurface::ZeroCVs ( )

Member Data Documentation

◆ m_cv

double* ON_BezierSurface::m_cv

◆ m_cv_capacity

int ON_BezierSurface::m_cv_capacity

◆ m_cv_stride

int ON_BezierSurface::m_cv_stride[2]

◆ m_dim

int ON_BezierSurface::m_dim

◆ m_is_rat

int ON_BezierSurface::m_is_rat

◆ m_order

int ON_BezierSurface::m_order[2]

The documentation for this class was generated from the following files: