3.4.0
CTiglMakeLoft Class Reference

The CTiglMakeLoft class is used to create loft topologies using cross sections and optional guide curves. By default, the resulting topology is a solid. In order to prevent closing the loft side faces (and making a solid), you can call CTiglMakeLoft::setMakeSolid(false) More...

#include <CTiglMakeLoft.h>

Public Member Functions

TIGL_EXPORT void addGuides (const TopoDS_Shape &guides)
 
TIGL_EXPORT void addProfiles (const TopoDS_Shape &profiles)
 Should be called to add sections/profiles to the algorithm. More...
 
TIGL_EXPORT CTiglMakeLoft (double tolerance=1e-6, double sameKnotTolerance=1e-6)
 
TIGL_EXPORT CTiglMakeLoft (const TopoDS_Shape &profiles, const TopoDS_Shape &guides, double tolerance=1e-6, double sameKnotTolerance=1e-6)
 
TIGL_EXPORT operator TopoDS_Shape & ()
 
TIGL_EXPORT void Perform ()
 Performs the algorithm. Doesn't need to be called manually. More...
 
TIGL_EXPORT void setMakeSmooth (bool enabled)
 setMakeSmooth switches, whether the resulting loft will be ruled or smoothed. This switch only applies, if no guide curves are applied. More...
 
TIGL_EXPORT void setMakeSolid (bool enabled)
 Use the function to adjust, if you want to get a closed solid (inclidung the side caps at the inner and outer profile) or just the surface without caps. More...
 
TIGL_EXPORT TopoDS_Shape & Shape ()
 

Private Member Functions

void CloseShape ()
 transform the shape to a solid if the correspondig flag is set, transform it to a shell otherwise (wrapper for CTiglPatchShell) More...
 
void makeLoftWithGuides ()
 
void makeLoftWithoutGuides ()
 

Private Attributes

bool _hasPerformed
 
bool _makeSmooth = false
 
bool _makeSolid
 
double _mySameKnotTolerance
 Relative tolerance for comparing knots of opposite curves If k1 and k2 are values of corresponding knots of opposite curves C1 and C2 then k1 ~= k2 if Abs(k1-k2)/((k1+k2)/2) <= theTolParam Only relevant in the case of guide curves Default Value is 1E-6. More...
 
double _myTolerance
 Tolerance for the MakeSolid, MakeShells, BRepOffsetAPI_ThruSections and for checking coincidence of ends of curves. (Last only relevant in the case of guide curves) Default Value is 1E-6. More...
 
TopoDS_Shape _result
 
std::vector< TopoDS_Wire > guides
 
std::vector< TopoDS_Wire > profiles
 
std::vector< Standard_Real > uparams
 
std::vector< Standard_Real > vparams
 

Detailed Description

The CTiglMakeLoft class is used to create loft topologies using cross sections and optional guide curves. By default, the resulting topology is a solid. In order to prevent closing the loft side faces (and making a solid), you can call CTiglMakeLoft::setMakeSolid(false)

Constructor & Destructor Documentation

◆ CTiglMakeLoft() [1/2]

TIGL_EXPORT CTiglMakeLoft::CTiglMakeLoft ( double  tolerance = 1e-6,
double  sameKnotTolerance = 1e-6 
)

◆ CTiglMakeLoft() [2/2]

TIGL_EXPORT CTiglMakeLoft::CTiglMakeLoft ( const TopoDS_Shape &  profiles,
const TopoDS_Shape &  guides,
double  tolerance = 1e-6,
double  sameKnotTolerance = 1e-6 
)

Member Function Documentation

◆ addGuides()

TIGL_EXPORT void CTiglMakeLoft::addGuides ( const TopoDS_Shape &  guides)

This function may be called to add guide curves to the lofting algo. The shape should be either a wire or a Compound consisting of multiple wires

◆ addProfiles()

TIGL_EXPORT void CTiglMakeLoft::addProfiles ( const TopoDS_Shape &  profiles)

Should be called to add sections/profiles to the algorithm.

Parameters
profilesA shape that is either a wire or a compound consisting of multiple wires.

◆ CloseShape()

void CTiglMakeLoft::CloseShape ( )
private

transform the shape to a solid if the correspondig flag is set, transform it to a shell otherwise (wrapper for CTiglPatchShell)

◆ makeLoftWithGuides()

void CTiglMakeLoft::makeLoftWithGuides ( )
private

◆ makeLoftWithoutGuides()

void CTiglMakeLoft::makeLoftWithoutGuides ( )
private

◆ operator TopoDS_Shape &()

TIGL_EXPORT CTiglMakeLoft::operator TopoDS_Shape & ( )

◆ Perform()

TIGL_EXPORT void CTiglMakeLoft::Perform ( )

Performs the algorithm. Doesn't need to be called manually.

◆ setMakeSmooth()

TIGL_EXPORT void CTiglMakeLoft::setMakeSmooth ( bool  enabled)

setMakeSmooth switches, whether the resulting loft will be ruled or smoothed. This switch only applies, if no guide curves are applied.

Parameters
enabledSet to true, if smoothing should be enabled.

◆ setMakeSolid()

TIGL_EXPORT void CTiglMakeLoft::setMakeSolid ( bool  enabled)

Use the function to adjust, if you want to get a closed solid (inclidung the side caps at the inner and outer profile) or just the surface without caps.

Parameters
enabledIf true, a solid is built.

◆ Shape()

TIGL_EXPORT TopoDS_Shape& CTiglMakeLoft::Shape ( )

Field Documentation

◆ _hasPerformed

bool CTiglMakeLoft::_hasPerformed
private

◆ _makeSmooth

bool CTiglMakeLoft::_makeSmooth = false
private

◆ _makeSolid

bool CTiglMakeLoft::_makeSolid
private

◆ _mySameKnotTolerance

double CTiglMakeLoft::_mySameKnotTolerance
private

Relative tolerance for comparing knots of opposite curves If k1 and k2 are values of corresponding knots of opposite curves C1 and C2 then k1 ~= k2 if Abs(k1-k2)/((k1+k2)/2) <= theTolParam Only relevant in the case of guide curves Default Value is 1E-6.

◆ _myTolerance

double CTiglMakeLoft::_myTolerance
private

Tolerance for the MakeSolid, MakeShells, BRepOffsetAPI_ThruSections and for checking coincidence of ends of curves. (Last only relevant in the case of guide curves) Default Value is 1E-6.

◆ _result

TopoDS_Shape CTiglMakeLoft::_result
private

◆ guides

std::vector<TopoDS_Wire> CTiglMakeLoft::guides
private

◆ profiles

std::vector<TopoDS_Wire> CTiglMakeLoft::profiles
private

◆ uparams

std::vector<Standard_Real> CTiglMakeLoft::uparams
private

◆ vparams

std::vector<Standard_Real> CTiglMakeLoft::vparams
private

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