Section. More...
#include <CPACSNacelleSection.h>
Public Member Functions | |
TIGL_EXPORT | CPACSNacelleSection (CCPACSNacelleSections *parent, CTiglUIDManager *uidMgr) |
virtual TIGL_EXPORT const boost::optional< std::string > & | GetDescription () const |
virtual TIGL_EXPORT const std::string & | GetName () const |
virtual TIGL_EXPORT CTiglUIDObject * | GetNextUIDParent () |
virtual TIGL_EXPORT const CTiglUIDObject * | GetNextUIDParent () const |
TIGL_EXPORT CCPACSNacelleSections * | GetParent () |
TIGL_EXPORT const CCPACSNacelleSections * | GetParent () const |
virtual TIGL_EXPORT const std::string & | GetProfileUID () const |
virtual TIGL_EXPORT const CCPACSTransformation & | GetTransformation () const |
virtual TIGL_EXPORT CCPACSTransformation & | GetTransformation () |
virtual TIGL_EXPORT const std::string & | GetUID () const |
TIGL_EXPORT CTiglUIDManager & | GetUIDManager () |
TIGL_EXPORT const CTiglUIDManager & | GetUIDManager () const |
virtual TIGL_EXPORT void | ReadCPACS (const TixiDocumentHandle &tixiHandle, const std::string &xpath) |
virtual TIGL_EXPORT void | SetDescription (const boost::optional< std::string > &value) |
virtual TIGL_EXPORT void | SetName (const std::string &value) |
virtual TIGL_EXPORT void | SetProfileUID (const std::string &value) |
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 | ~CPACSNacelleSection () |
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::ITiglUIDRefObject | |
virtual | ~ITiglUIDRefObject ()=default |
Protected Attributes | |
boost::optional< std::string > | m_description |
Description. More... | |
std::string | m_name |
Name. More... | |
CCPACSNacelleSections * | m_parent |
std::string | m_profileUID |
UID of the profile. More... | |
CCPACSTransformation | m_transformation |
std::string | m_uID |
CTiglUIDManager * | m_uidMgr |
Private Member Functions | |
CPACSNacelleSection (const CPACSNacelleSection &)=delete | |
CPACSNacelleSection (CPACSNacelleSection &&)=delete | |
TIGL_EXPORT const CTiglUIDObject * | GetNextUIDObject () const final |
TIGL_EXPORT void | NotifyUIDChange (const std::string &oldUid, const std::string &newUid) final |
CPACSNacelleSection & | operator= (const CPACSNacelleSection &)=delete |
CPACSNacelleSection & | operator= (CPACSNacelleSection &&)=delete |
Additional Inherited Members | |
Protected Member Functions inherited from tigl::CTiglUIDObject | |
~CTiglUIDObject ()=default | |
Section.
An engine nacelle is defined by sections, where at least one and up to an infinite number of sections can be specified. Lofting of the nacelle surface along the sections is done in cylindrical coordinates. The coordinate origin refers to the center of the fan , i.e. the sections and their profiles are typically shifted in negative x-direction. Note : In the current CPACS release, transformations are still labeled as Cartesian coordinates. It is current work in progress to explicitly introduce cylindrical coordinates. Until this is implemented in a future CPACS release, the implicit conventions listed below apply: Translation component Cylindrical coordinate equivalent Description x ϑ Rotation angle around x y h Horizontal translation z r Radial translation The following example illustrates the setup of a nacelle with 4 sections. These are rotated by 0, 120, 180 and 240 degrees around the x -axis (given by translation/x ). To illustrate the possible transformations, the profile of the upper section is shifted slightly further in the negative x -direction ( translation/y ), while the lower section has a smaller radial distance from the rotation axis ( translation/z ). In addition, the sections are scaled differently ( transformation/scaling ; not shown in the example figures) in order to create a straight trailing edge and to realize a flattened profile near the ground. The following example also shows the profile cut-outs due to the radially symmetric inner region of the nacelle defined by the rotationCurve . For detailed information, please refer to the documentation of the rotationCurve element.
<section uID="fanCowl_upperSection"> <name>Upper section</name> <transformation> <scaling> <x>1.055</x> <y>1</y> <z>1</z> </scaling> <translation> <x>0.0</x> <y>-0.257</y> <z>0.365</z> </translation> </transformation> <profileUID>fanCowlUpperSectionProfile</profileUID> </section> The second section is rotated around the x -axis ( x=ϑ=120 ) as well as scaled by a factor of 1.1 in its profile height:
<section uID="fanCowl_inboardSection"> <name>Inboard section</name> <transformation> <scaling> <x>1</x> <y>1</y> <z>1.1</z> </scaling> <translation> <x>120.0</x> <y>-0.2</y> <z>0.365</z> </translation> </transformation> <profileUID>fanCowlUpperSectionProfile</profileUID> </section> The third section is rotated around the x -axis by 180° and scaled by a factor of 0.8 in its profile height:
<section uID="fanCowl_lowerSection"> <name>Lower section</name> <transformation> <scaling> <x>1</x> <y>1</y> <z>0.8</z> </scaling> <translation> <x>180.0</x> <y>-0.2</y> <z>0.33</z> </translation> </transformation> <profileUID>fanCowlUpperSectionProfile</profileUID> </section>
TIGL_EXPORT tigl::generated::CPACSNacelleSection::CPACSNacelleSection | ( | CCPACSNacelleSections * | parent, |
CTiglUIDManager * | uidMgr | ||
) |
|
virtual |
|
privatedelete |
|
privatedelete |
|
virtual |
|
virtual |
|
finalprivatevirtual |
Implements tigl::ITiglUIDRefObject.
|
virtual |
Implements tigl::CTiglUIDObject.
|
virtual |
Implements tigl::CTiglUIDObject.
TIGL_EXPORT CCPACSNacelleSections* tigl::generated::CPACSNacelleSection::GetParent | ( | ) |
TIGL_EXPORT const CCPACSNacelleSections* tigl::generated::CPACSNacelleSection::GetParent | ( | ) | const |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Implements tigl::CTiglReqUIDObject.
|
virtual |
Implements tigl::CTiglUIDObject.
|
virtual |
Implements tigl::CTiglUIDObject.
|
finalprivatevirtual |
Implements tigl::ITiglUIDRefObject.
|
privatedelete |
|
privatedelete |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
protected |
Description.
|
protected |
Name.
|
protected |
|
protected |
UID of the profile.
|
protected |
|
protected |
|
protected |