3DCoat  3D-COAT 4.9.xx
3DCoat is the one application that has all the tools you need to take your 3D idea from a block of digital clay all the way to a production ready, fully textured organic or hard surface model.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
BezierCurveF Class Reference

Class in which a curve consisting of several elementary Bezier curves is stored. More...

#include <BezierCurveF.h>

Public Member Functions

BezierCurveF SplitSelfIntersectionNew (double tolerance_intersection)
 The function finds a self-intersection of the curve and splits it into a smaller curves. Parameters of the function - which points are assumed to be the same. More...
 
void ObtainSrcPoints (cList< OneSelPoint > &SrcList, bool &IsClosed)
 Represent BezierCurveF in standart mode. More...
 
void AddCurve (const BezierCurveF &bcf)
 Connects two curves into one consecuently. More...
 
void AddDiscontinuoslyCurve (const BezierCurveF &bcf)
 Connects two curves into one consecuently. More...
 
bool FindOrientationByLength ()
 Finds the orientation of the curve by comparing the length of the curve and the length of the curve obtained by shifting the points to the normal vector. More...
 
BezierCurveF VerifiedDirection ()
 Returns a curve with positive orientation. More...
 
BezierCurveF VerifiedInverceDirection ()
 Returns a curve with negative orientation. More...
 
float LengthSegments (int SegmentsCount=8) const
 Calculates the approximate length of a curve by splitting it into SegmentsCount segments. More...
 
void SubdivideCurve ()
 Between every two points insert one point. More...
 
void SmoothingCurve (float degree)
 Percentage 0%-1000% If more than 100% it means more than one smoothing. More...
 
cList< OneSelPoint > ToSplineF (float eps)
 Returns list of OneSelPoint to show curve in the scene. More...
 

Detailed Description

Class in which a curve consisting of several elementary Bezier curves is stored.

This structure is presented in the form of a list of BezierPoint (it contains the coordinate of the point and two tangent vectors). Closure of the curve means the coincidence of the first and last points.

Inherits BezierCurveFBasic.

Member Function Documentation

void BezierCurveF::AddCurve ( const BezierCurveF bcf)

Connects two curves into one consecuently.

It is necessary that the last point of the first curve and the first point of the second curve coincide.

void BezierCurveF::AddDiscontinuoslyCurve ( const BezierCurveF bcf)

Connects two curves into one consecuently.

If the last point of the first curve and the first point of the second curve not coincide this points connects with line.

bool BezierCurveF::FindOrientationByLength ( )

Finds the orientation of the curve by comparing the length of the curve and the length of the curve obtained by shifting the points to the normal vector.

Referenced by VerifiedDirection(), and VerifiedInverceDirection().

float BezierCurveF::LengthSegments ( int  SegmentsCount = 8) const

Calculates the approximate length of a curve by splitting it into SegmentsCount segments.

void BezierCurveF::ObtainSrcPoints ( cList< OneSelPoint > &  SrcList,
bool &  IsClosed 
)

Represent BezierCurveF in standart mode.

void BezierCurveF::SmoothingCurve ( float  degree)

Percentage 0%-1000% If more than 100% it means more than one smoothing.

BezierCurveF BezierCurveF::SplitSelfIntersectionNew ( double  tolerance_intersection)

The function finds a self-intersection of the curve and splits it into a smaller curves. Parameters of the function - which points are assumed to be the same.

void BezierCurveF::SubdivideCurve ( )

Between every two points insert one point.

cList< OneSelPoint > BezierCurveFBasic::ToSplineF ( float  eps)
inherited

Returns list of OneSelPoint to show curve in the scene.

BezierCurveF BezierCurveF::VerifiedDirection ( )

Returns a curve with positive orientation.

References FindOrientationByLength().

BezierCurveF BezierCurveF::VerifiedInverceDirection ( )

Returns a curve with negative orientation.

References FindOrientationByLength().


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