3.4.0
tigl::CCPACSWingCell Class Reference

#include <CCPACSWingCell.h>

+ Inheritance diagram for tigl::CCPACSWingCell:

Data Structures

struct  EtaXsiCache
 
struct  GeometryCache
 

Public Member Functions

TIGL_EXPORT CCPACSWingCell (CCPACSWingCells *parentCells, CTiglUIDManager *uidMgr)
 
TIGL_EXPORT TiglGeometricComponentIntent GetComponentIntent () const override
 
TIGL_EXPORT TiglGeometricComponentType GetComponentType () const override
 
TIGL_EXPORT std::string GetDefaultedUID () const override
 
TIGL_EXPORT EtaXsi GetLeadingEdgeInnerPoint () const
 
TIGL_EXPORT EtaXsi GetLeadingEdgeOuterPoint () const
 
TIGL_EXPORT PNamedShape GetLoft () const override
 
TIGL_EXPORT CCPACSMaterialDefinitionGetMaterial ()
 
TIGL_EXPORT const CCPACSMaterialDefinitionGetMaterial () const
 
TIGL_EXPORT TopoDS_Shape GetSkinGeometry (TiglCoordinateSystem cs=GLOBAL_COORDINATE_SYSTEM) const
 
TIGL_EXPORT EtaXsi GetTrailingEdgeInnerPoint () const
 
TIGL_EXPORT EtaXsi GetTrailingEdgeOuterPoint () const
 
TIGL_EXPORT bool IsConvex () const
 
TIGL_EXPORT bool IsInside (double eta, double xsi) const
 
TIGL_EXPORT bool IsPartOfCell (TopoDS_Face)
 
TIGL_EXPORT bool IsPartOfCell (TopoDS_Edge)
 
TIGL_EXPORT void ReadCPACS (const TixiDocumentHandle &tixiHandle, const std::string &cellXPath) override
 
TIGL_EXPORT void SetInnerBorderRib (const std::string &ribDefinitionUID, int ribNumber)
 
TIGL_EXPORT void SetLeadingEdgeInnerPoint (double eta, double xsi)
 
TIGL_EXPORT void SetLeadingEdgeOuterPoint (double eta, double xsi)
 
TIGL_EXPORT void SetLeadingEdgeSpar (const std::string &sparUID)
 
TIGL_EXPORT void SetOuterBorderRib (const std::string &ribDefinitionUID, int ribNumber)
 
TIGL_EXPORT void SetTrailingEdgeInnerPoint (double eta, double xsi)
 
TIGL_EXPORT void SetTrailingEdgeOuterPoint (double eta, double xsi)
 
TIGL_EXPORT void SetTrailingEdgeSpar (const std::string &sparUID)
 
TIGL_EXPORT ~CCPACSWingCell () override
 
- Public Member Functions inherited from tigl::generated::CPACSWingCell
TIGL_EXPORT CPACSWingCell (CCPACSWingCells *parent, CTiglUIDManager *uidMgr)
 
virtual TIGL_EXPORT CTiglUIDObjectGetNextUIDParent ()
 
virtual TIGL_EXPORT const CTiglUIDObjectGetNextUIDParent () const
 
TIGL_EXPORT CCPACSWingCellsGetParent ()
 
TIGL_EXPORT const CCPACSWingCellsGetParent () const
 
virtual TIGL_EXPORT const CCPACSWingCellPositionSpanwiseGetPositioningInnerBorder () const
 
virtual TIGL_EXPORT CCPACSWingCellPositionSpanwiseGetPositioningInnerBorder ()
 
virtual TIGL_EXPORT const CCPACSWingCellPositionChordwiseGetPositioningLeadingEdge () const
 
virtual TIGL_EXPORT CCPACSWingCellPositionChordwiseGetPositioningLeadingEdge ()
 
virtual TIGL_EXPORT const CCPACSWingCellPositionSpanwiseGetPositioningOuterBorder () const
 
virtual TIGL_EXPORT CCPACSWingCellPositionSpanwiseGetPositioningOuterBorder ()
 
virtual TIGL_EXPORT const CCPACSWingCellPositionChordwiseGetPositioningTrailingEdge () const
 
virtual TIGL_EXPORT CCPACSWingCellPositionChordwiseGetPositioningTrailingEdge ()
 
virtual TIGL_EXPORT const CPACSWingSkinGetSkin () const
 
virtual TIGL_EXPORT CPACSWingSkinGetSkin ()
 
virtual TIGL_EXPORT const std::string & GetUID () const
 
TIGL_EXPORT CTiglUIDManagerGetUIDManager ()
 
TIGL_EXPORT const CTiglUIDManagerGetUIDManager () const
 
virtual TIGL_EXPORT void SetUID (const std::string &value)
 
virtual TIGL_EXPORT void WriteCPACS (const TixiDocumentHandle &tixiHandle, const std::string &xpath) const
 
virtual TIGL_EXPORT ~CPACSWingCell ()
 
- Public Member Functions inherited from tigl::CTiglReqUIDObject
boost::optional< std::string > GetObjectUID () const
 
virtual ~CTiglReqUIDObject ()=default
 
- Public Member Functions inherited from tigl::CTiglUIDObject
TIGL_EXPORT void Invalidate (const boost::optional< std::string > &source=boost::none) const
 
- Public Member Functions inherited from tigl::ITiglGeometricComponent
virtual ~ITiglGeometricComponent ()
 

Private Types

enum  ChordWiseBorder { ChordWiseBorder::LE, ChordWiseBorder::TE }
 
enum  SpanWiseBorder { SpanWiseBorder::Inner, SpanWiseBorder::Outer }
 

Private Member Functions

void BuildSkinGeometry (GeometryCache &cache) const
 
EtaXsi computePositioningEtaXsi (const CCPACSWingCellPositionSpanwise &spanwisePos, const CCPACSWingCellPositionChordwise &chordwisePos, bool inner, bool front) const
 
TopoDS_Shape CutChordwise (GeometryCache &cache, TopoDS_Shape const &loftShape, ChordWiseBorder border, CCPACSWingCellPositionChordwise const &positioning, gp_Dir const &zRefDir, double tol=5e-3) const
 CutChordwise cuts the loftShape in chordwise direction Depending on the enum border, it can be a leading edge or trailing edge border. This function is called by BuildSKinGeometry to cut the loftSurface in chordwise direction. More...
 
TopoDS_Shape CutSpanwise (GeometryCache &cache, TopoDS_Shape const &loftShape, SpanWiseBorder border, CCPACSWingCellPositionSpanwise const &positioning, gp_Dir const &zRefDir, double tol=5e-3) const
 CutSpanwise cuts the loftShape in spanwise direction Depending on the enum border, it can be a inner or outer border. This function is called by BuildSKinGeometry to cut the loftSurface in spanwise direction. More...
 
TopoDS_Shape GetRibCutGeometry (std::pair< std::string, int > ribUidAndIndex) const
 
void InvalidateImpl (const boost::optional< std::string > &source) const override
 
template<class T >
bool IsPartOfCellImpl (T t)
 
void Reset ()
 
void TrimChordwise (GeometryCache &cache, ChordWiseBorder border, CCPACSWingCellPositionChordwise const &positioning, double tol=5e-3) const
 TrimChordwise trims the wing skin in chordwise direction Depending on the enum border, it can be a leading edge or trailing edge border. This function is called by BuildSkinGeometry to trim the wing shape in chordwise direction. More...
 
void TrimSpanwise (GeometryCache &cache, SpanWiseBorder border, CCPACSWingCellPositionSpanwise const &positioning, double tol=5e-3) const
 TrimSpanwise trims the wing skin in spanwise direction Depending on the enum border, it can be a inner or outer border. This function is called by BuildSkinGeometry to trim the wing shape in spanwise direction. More...
 
void UpdateEtaXsiValues (EtaXsiCache &cache) const
 

Private Attributes

Cache< EtaXsiCache, CCPACSWingCellm_etaXsiCache
 
Cache< GeometryCache, CCPACSWingCellm_geometryCache
 

Additional Inherited Members

- Protected Member Functions inherited from tigl::CTiglUIDObject
 ~CTiglUIDObject ()=default
 
- Protected Attributes inherited from tigl::generated::CPACSWingCell
CCPACSWingCellsm_parent
 
CCPACSWingCellPositionSpanwise m_positioningInnerBorder
 
CCPACSWingCellPositionChordwise m_positioningLeadingEdge
 
CCPACSWingCellPositionSpanwise m_positioningOuterBorder
 
CCPACSWingCellPositionChordwise m_positioningTrailingEdge
 
CPACSWingSkin m_skin
 
std::string m_uID
 
CTiglUIDManagerm_uidMgr
 

Member Enumeration Documentation

◆ ChordWiseBorder

Enumerator
LE 
TE 

◆ SpanWiseBorder

Enumerator
Inner 
Outer 

Constructor & Destructor Documentation

◆ CCPACSWingCell()

TIGL_EXPORT tigl::CCPACSWingCell::CCPACSWingCell ( CCPACSWingCells parentCells,
CTiglUIDManager uidMgr 
)

◆ ~CCPACSWingCell()

TIGL_EXPORT tigl::CCPACSWingCell::~CCPACSWingCell ( )
override

Member Function Documentation

◆ BuildSkinGeometry()

void tigl::CCPACSWingCell::BuildSkinGeometry ( GeometryCache cache) const
private

◆ computePositioningEtaXsi()

EtaXsi tigl::CCPACSWingCell::computePositioningEtaXsi ( const CCPACSWingCellPositionSpanwise spanwisePos,
const CCPACSWingCellPositionChordwise chordwisePos,
bool  inner,
bool  front 
) const
private

◆ CutChordwise()

TopoDS_Shape tigl::CCPACSWingCell::CutChordwise ( GeometryCache cache,
TopoDS_Shape const &  loftShape,
ChordWiseBorder  border,
CCPACSWingCellPositionChordwise const &  positioning,
gp_Dir const &  zRefDir,
double  tol = 5e-3 
) const
private

CutChordwise cuts the loftShape in chordwise direction Depending on the enum border, it can be a leading edge or trailing edge border. This function is called by BuildSKinGeometry to cut the loftSurface in chordwise direction.

This function is used, if the borders of the cell are defined relative to the chordface via eta xsi coordinates or by referencing a spar

Parameters
cacheThe shape cache of the wing cell
loftShapethe shape of the wing skin
bordera ChordWiseBorder enum, denoting whether it is a leading edge or trailing edge border
positioningCPACS definition of the border
zRefDira reference direction orthogonal to the chordface
tola tolerance
Returns
The loftShape cut at the chordwise border

◆ CutSpanwise()

TopoDS_Shape tigl::CCPACSWingCell::CutSpanwise ( GeometryCache cache,
TopoDS_Shape const &  loftShape,
SpanWiseBorder  border,
CCPACSWingCellPositionSpanwise const &  positioning,
gp_Dir const &  zRefDir,
double  tol = 5e-3 
) const
private

CutSpanwise cuts the loftShape in spanwise direction Depending on the enum border, it can be a inner or outer border. This function is called by BuildSKinGeometry to cut the loftSurface in spanwise direction.

This function is used, if the borders of the cell are defined relative to the chordface via eta xsi coordinates or by referencing a rib

Parameters
cacheThe shape cache of the wing cell
loftShapethe shape of the wing skin
bordera SpanWiseBorder enum, denoting whether it is an inner or outer border
positioningCPACS definition of the border
zRefDira reference direction orthogonal to the chordface
tola tolerance
Returns
The loftShape cut at the spanwise border

◆ GetComponentIntent()

TIGL_EXPORT TiglGeometricComponentIntent tigl::CCPACSWingCell::GetComponentIntent ( ) const
overridevirtual

◆ GetComponentType()

TIGL_EXPORT TiglGeometricComponentType tigl::CCPACSWingCell::GetComponentType ( ) const
overridevirtual

◆ GetDefaultedUID()

TIGL_EXPORT std::string tigl::CCPACSWingCell::GetDefaultedUID ( ) const
overridevirtual

◆ GetLeadingEdgeInnerPoint()

TIGL_EXPORT EtaXsi tigl::CCPACSWingCell::GetLeadingEdgeInnerPoint ( ) const

◆ GetLeadingEdgeOuterPoint()

TIGL_EXPORT EtaXsi tigl::CCPACSWingCell::GetLeadingEdgeOuterPoint ( ) const

◆ GetLoft()

TIGL_EXPORT PNamedShape tigl::CCPACSWingCell::GetLoft ( ) const
overridevirtual

◆ GetMaterial() [1/2]

TIGL_EXPORT CCPACSMaterialDefinition& tigl::CCPACSWingCell::GetMaterial ( )

◆ GetMaterial() [2/2]

TIGL_EXPORT const CCPACSMaterialDefinition& tigl::CCPACSWingCell::GetMaterial ( ) const

◆ GetRibCutGeometry()

TopoDS_Shape tigl::CCPACSWingCell::GetRibCutGeometry ( std::pair< std::string, int >  ribUidAndIndex) const
private

◆ GetSkinGeometry()

TIGL_EXPORT TopoDS_Shape tigl::CCPACSWingCell::GetSkinGeometry ( TiglCoordinateSystem  cs = GLOBAL_COORDINATE_SYSTEM) const

◆ GetTrailingEdgeInnerPoint()

TIGL_EXPORT EtaXsi tigl::CCPACSWingCell::GetTrailingEdgeInnerPoint ( ) const

◆ GetTrailingEdgeOuterPoint()

TIGL_EXPORT EtaXsi tigl::CCPACSWingCell::GetTrailingEdgeOuterPoint ( ) const

◆ InvalidateImpl()

void tigl::CCPACSWingCell::InvalidateImpl ( const boost::optional< std::string > &  source) const
overrideprivatevirtual

Reimplemented from tigl::CTiglUIDObject.

◆ IsConvex()

TIGL_EXPORT bool tigl::CCPACSWingCell::IsConvex ( ) const

◆ IsInside()

TIGL_EXPORT bool tigl::CCPACSWingCell::IsInside ( double  eta,
double  xsi 
) const

◆ IsPartOfCell() [1/2]

TIGL_EXPORT bool tigl::CCPACSWingCell::IsPartOfCell ( TopoDS_Face  )

◆ IsPartOfCell() [2/2]

TIGL_EXPORT bool tigl::CCPACSWingCell::IsPartOfCell ( TopoDS_Edge  )

◆ IsPartOfCellImpl()

template<class T >
bool tigl::CCPACSWingCell::IsPartOfCellImpl ( t)
private

◆ ReadCPACS()

TIGL_EXPORT void tigl::CCPACSWingCell::ReadCPACS ( const TixiDocumentHandle &  tixiHandle,
const std::string &  cellXPath 
)
overridevirtual

Reimplemented from tigl::generated::CPACSWingCell.

◆ Reset()

void tigl::CCPACSWingCell::Reset ( )
private

◆ SetInnerBorderRib()

TIGL_EXPORT void tigl::CCPACSWingCell::SetInnerBorderRib ( const std::string &  ribDefinitionUID,
int  ribNumber 
)

◆ SetLeadingEdgeInnerPoint()

TIGL_EXPORT void tigl::CCPACSWingCell::SetLeadingEdgeInnerPoint ( double  eta,
double  xsi 
)

◆ SetLeadingEdgeOuterPoint()

TIGL_EXPORT void tigl::CCPACSWingCell::SetLeadingEdgeOuterPoint ( double  eta,
double  xsi 
)

◆ SetLeadingEdgeSpar()

TIGL_EXPORT void tigl::CCPACSWingCell::SetLeadingEdgeSpar ( const std::string &  sparUID)

◆ SetOuterBorderRib()

TIGL_EXPORT void tigl::CCPACSWingCell::SetOuterBorderRib ( const std::string &  ribDefinitionUID,
int  ribNumber 
)

◆ SetTrailingEdgeInnerPoint()

TIGL_EXPORT void tigl::CCPACSWingCell::SetTrailingEdgeInnerPoint ( double  eta,
double  xsi 
)

◆ SetTrailingEdgeOuterPoint()

TIGL_EXPORT void tigl::CCPACSWingCell::SetTrailingEdgeOuterPoint ( double  eta,
double  xsi 
)

◆ SetTrailingEdgeSpar()

TIGL_EXPORT void tigl::CCPACSWingCell::SetTrailingEdgeSpar ( const std::string &  sparUID)

◆ TrimChordwise()

void tigl::CCPACSWingCell::TrimChordwise ( GeometryCache cache,
ChordWiseBorder  border,
CCPACSWingCellPositionChordwise const &  positioning,
double  tol = 5e-3 
) const
private

TrimChordwise trims the wing skin in chordwise direction Depending on the enum border, it can be a leading edge or trailing edge border. This function is called by BuildSkinGeometry to trim the wing shape in chordwise direction.

This function is used, it the borders of the cell are defined relative to the wing skin via contour coordinates.

Parameters
cacheThe shape of the wing cell
bordera ChordWiseBorder enum, denoting whether it is a LE or a TE border
positioningCPACS definition of the border
tola tolerance

◆ TrimSpanwise()

void tigl::CCPACSWingCell::TrimSpanwise ( GeometryCache cache,
SpanWiseBorder  border,
CCPACSWingCellPositionSpanwise const &  positioning,
double  tol = 5e-3 
) const
private

TrimSpanwise trims the wing skin in spanwise direction Depending on the enum border, it can be a inner or outer border. This function is called by BuildSkinGeometry to trim the wing shape in spanwise direction.

This function is used, it the borders of the cell are defined relative to the wing skin via contour coordinates.

Parameters
cacheThe shape of the wing cell
bordera SpanWiseBorder enum, denoting whether it is an inner or outer border
positioningCPACS definition of the border
tola tolerance

◆ UpdateEtaXsiValues()

void tigl::CCPACSWingCell::UpdateEtaXsiValues ( EtaXsiCache cache) const
private

Field Documentation

◆ m_etaXsiCache

Cache<EtaXsiCache, CCPACSWingCell> tigl::CCPACSWingCell::m_etaXsiCache
private

◆ m_geometryCache

Cache<GeometryCache, CCPACSWingCell> tigl::CCPACSWingCell::m_geometryCache
private

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