3.4.0
tigl::CTiglCurveConnector Class Reference

#include <CTiglCurveConnector.h>

Data Structures

struct  guideCurveConnected
 
struct  guideCurvePart
 

Public Member Functions

TIGL_EXPORT CTiglCurveConnector (std::map< double, const CCPACSGuideCurve * > &roots, const std::vector< double > &params)
 CTiglCurveConnector interpolates the guide curves for all segments. The interpolation is parametrized with the centripetal method for the given parameters at the sections. More...
 
TIGL_EXPORT TopoDS_Compound GetConnectedGuideCurves ()
 Returns the interpolated guide curves of the object. More...
 

Private Types

enum  dependencyType { none = 0, C2_from_previous, C2_to_previous }
 

Private Member Functions

void CreateInterpolationOrder (guideCurveConnected &connectedCurve)
 Creates the interpolation order for the partial curves, based on their interdependencies (from/to continuities) More...
 
void CreatePartialCurves (guideCurveConnected &connectedCurve, const CCPACSGuideCurve *current)
 Creates the list of partial curves for every connected guide curve recursively. More...
 
void InterpolateGuideCurvePart (guideCurveConnected &connectedCurve, int partIndex)
 interpolates a partial curve given its continuity conditions and prescribed tangents More...
 
void VerifyNumberOfSegments (std::map< double, const CCPACSGuideCurve * > &roots, int shouldBeThisMany=-1)
 Verifies that all connected guide curves intersect the same number of segments. More...
 

Private Attributes

std::vector< guideCurveConnectedm_connectedCurves
 

Member Enumeration Documentation

◆ dependencyType

Enumerator
none 
C2_from_previous 
C2_to_previous 

Constructor & Destructor Documentation

◆ CTiglCurveConnector()

TIGL_EXPORT tigl::CTiglCurveConnector::CTiglCurveConnector ( std::map< double, const CCPACSGuideCurve * > &  roots,
const std::vector< double > &  params 
)

CTiglCurveConnector interpolates the guide curves for all segments. The interpolation is parametrized with the centripetal method for the given parameters at the sections.

The algorithm interpolates the guide curves for all segments, respecting prescribed tangents and continuity conditions

Member Function Documentation

◆ CreateInterpolationOrder()

void tigl::CTiglCurveConnector::CreateInterpolationOrder ( guideCurveConnected connectedCurve)
private

Creates the interpolation order for the partial curves, based on their interdependencies (from/to continuities)

◆ CreatePartialCurves()

void tigl::CTiglCurveConnector::CreatePartialCurves ( guideCurveConnected connectedCurve,
const CCPACSGuideCurve current 
)
private

Creates the list of partial curves for every connected guide curve recursively.

The list of segmentwise guidecurves for a connected guide curve is broken into partial curves. The breakpoints are at the guidecurve with a prescribed continuity condition.

◆ GetConnectedGuideCurves()

TIGL_EXPORT TopoDS_Compound tigl::CTiglCurveConnector::GetConnectedGuideCurves ( )

Returns the interpolated guide curves of the object.

◆ InterpolateGuideCurvePart()

void tigl::CTiglCurveConnector::InterpolateGuideCurvePart ( guideCurveConnected connectedCurve,
int  partIndex 
)
private

interpolates a partial curve given its continuity conditions and prescribed tangents

It is important that the parts of one guide curve are interpolated in the order given by CreateInterpolationOrder to ensure that the tangents needed for the continuity conditions are available.

◆ VerifyNumberOfSegments()

void tigl::CTiglCurveConnector::VerifyNumberOfSegments ( std::map< double, const CCPACSGuideCurve * > &  roots,
int  shouldBeThisMany = -1 
)
private

Verifies that all connected guide curves intersect the same number of segments.

Field Documentation

◆ m_connectedCurves

std::vector<guideCurveConnected> tigl::CTiglCurveConnector::m_connectedCurves
private

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