We should check the relative coordinate system to which the path definition, i.e. the translation and rotation of the control surfaces, refers.
CPACS documentation:
The deflection path of the control surface is defined within the hinge line coordinate system. This is defined as follows: The x-hinge coordinate equals the wing x-axis. The y-hinge coordinate equals the hinge line axis (see above; positive from inner to outer hinge point).
This definition leads to non-rectangular coordinate systems, which makes it very difficult to use in practice. VPH users, for example, report that the conversion between CPACS and Catia data sets is very complicated.
The implementation in TiGL, on the other hand, appears to refer to the global coordinate system, even if the component segment is specified as parentUID. The expected behavior would be that the flap extends at least in the wing coordinate system:

<componentSegment uID="wing1componentSegment">
<name>Wing 1 component segment</name>
<fromElementUID>wing1section1element1</fromElementUID>
<toElementUID>wing1section2element1</toElementUID>
<controlSurfaces>
<trailingEdgeDevices>
<trailingEdgeDevice uID="cs">
<name>Control Surface</name>
<parentUID>wing1componentSegment</parentUID>
<outerShape>
<innerBorder>
<etaLE>
<eta>0.2</eta>
<referenceUID>wing1componentSegment</referenceUID>
</etaLE>
<xsiLE>
<xsi>0.7</xsi>
<referenceUID>wing1componentSegment</referenceUID>
</xsiLE>
</innerBorder>
<outerBorder>
<etaLE>
<eta>0.8</eta>
<referenceUID>wing1componentSegment</referenceUID>
</etaLE>
<xsiLE>
<xsi>0.7</xsi>
<referenceUID>wing1componentSegment</referenceUID>
</xsiLE>
</outerBorder>
</outerShape>
<path>
<innerHingePoint>
<hingeRelHeight>0</hingeRelHeight>
<hingeXsi>0.7</hingeXsi>
</innerHingePoint>
<outerHingePoint>
<hingeRelHeight>0</hingeRelHeight>
<hingeXsi>0.7</hingeXsi>
</outerHingePoint>
<steps>
<step>
<controlParameter>0</controlParameter>
<innerHingeTranslation/>
<outerHingeTranslation>
<x>0</x>
<z>0</z>
</outerHingeTranslation>
</step>
<step>
<controlParameter>1</controlParameter>
<innerHingeTranslation>
<x>0.3</x>
</innerHingeTranslation>
<outerHingeTranslation>
<x>0.3</x>
<z>0</z>
</outerHingeTranslation>
</step>
</steps>
</path>
</trailingEdgeDevice>
</trailingEdgeDevices>
</controlSurfaces>
</componentSegment>
Download full example: basicWing.zip
We therefore propose that, consistent with the other CPACS elements, we only use rectangular coordinate systems, which are specified via the parentUID. This can therefore be either the wing/component segment coordinate system or that of another control surface. The documentation of the parentUID element therefore remains unchanged:
UID of the parent of the TED. The parent can either be the uID of the componentSegment of the wing, or the uID of another TED. In the second case this TED is placed within the other TED (double slotted flap). In this way n-slotted TEDs can be created.
This could require to add y to the outerHingeTranslation and finding a strategy to avoid distorted flaps. Such a change should therefore take place in close coordination with TiGL development (@joergbrech @AntonReiswich).
We should check the relative coordinate system to which the path definition, i.e. the translation and rotation of the control surfaces, refers.
CPACS documentation:
This definition leads to non-rectangular coordinate systems, which makes it very difficult to use in practice. VPH users, for example, report that the conversion between CPACS and Catia data sets is very complicated.
The implementation in TiGL, on the other hand, appears to refer to the global coordinate system, even if the component segment is specified as
parentUID. The expected behavior would be that the flap extends at least in the wing coordinate system:Download full example: basicWing.zip
We therefore propose that, consistent with the other CPACS elements, we only use rectangular coordinate systems, which are specified via the
parentUID. This can therefore be either the wing/component segment coordinate system or that of another control surface. The documentation of theparentUIDelement therefore remains unchanged:This could require to add
yto the outerHingeTranslation and finding a strategy to avoid distorted flaps. Such a change should therefore take place in close coordination with TiGL development (@joergbrech @AntonReiswich).