ductAssemblyType

complexType · extension complexBaseType · sequence

Group of ducts that is cut out of other components as one body

A duct assembly fuses the ducts it references, together with their mirror images, into one body, places this body in the model and removes it from other components. The ducts may overlap: this is how several ducts form one channel, e.g. two intakes that merge in front of an engine. A duct may be referenced by more than one assembly and is then cut out wherever each of them places it.

Placement

A point p of a duct is placed in the model at

P = t_parent + T_assembly M T_duct p

where Tduct is the transformation of the duct, M the mirroring by its @symmetry (the identity for the duct itself), Tassembly the transformation of the assembly and tparent the position of the component named in <parentUID>, or zero without a parent. The assembly follows the translation of its parent but neither its rotation nor its scaling (transformationType). Usually the assembly is attached to the component the ducts are cut out of, so that the ducts are given in the coordinate system of that component and move with it. As the mirroring comes before the transformation of the assembly, a duct and its mirror image move together: a translation of the assembly in y shifts both to the same side.

Components that are cut

The body of an assembly is removed from every fuselage, wing and fuel tank of the model, together with the structure inside them. <excludeObjectUIDs> lists the components that keep their shape, e.g. a neighbouring fuselage section into which the ducts reach. Listing a fuel tank excludes all its vessels, listing a vessel only that vessel. Other components, such as engines, pylons and landing gears, are not cut.

Example

The assembly of the intake ducts of a fighter, attached to its fuselage; the ducts are shown in the documentation of ductsType.

<ductAssembly uID="IntakeDuctAssembly">
    <name>Intake ducts</name>
    <description>Air intake of the engine, cut out of the fuselage</description>
    <parentUID>Fuselage</parentUID>
    <transformation>
        <rotation>
            <x>0</x>
            <y>0</y>
            <z>0</z>
        </rotation>
        <scaling>
            <x>1</x>
            <y>1</y>
            <z>1</z>
        </scaling>
        <translation>
            <x>0</x>
            <y>0</y>
            <z>0</z>
        </translation>
    </transformation>
    <ductUIDs>
        <uID>IntakeDuct</uID>
        <uID>ChannelDuct</uID>
    </ductUIDs>
</ductAssembly>
Duct assembly attached to the fuselage

Attributes

NameTypeConstraintsUseDefaultDescription
@externalDataDirectoryxsd:stringoptionalDirectory of the external file the element was read from, as URI
@externalDataNodePathxsd:stringoptionalPath of the parent element in the merged dataset, at which the element was inserted from an external file
@externalFileNamexsd:stringoptionalName of the external file the element was read from
@uIDxsd:IDrequiredUID

Child elements

NameTypeConstraintsOccurrenceHow often the element may appear at this place. The schema writes it as minOccurs and maxOccurs on the declaration.DefaultDescription
sequenceThe children below must appear in exactly this order. Each may repeat as often as its own occurrence allows.
namestringBaseType[1..1] requiredName
descriptionstringBaseType[0..1] optionalDescription
parentUIDstringUIDBaseType[0..1] optionalComponent the duct assembly is attached to, if any. The translation of the assembly is then given relative to the position of this component.
transformationtransformationType[0..1] optionalPosition and orientation of the assembly coordinate system, in which the ducts are placed
excludeObjectUIDsuIDSequenceType[0..1] optionalComponents the assembly does not cut: fuselages, wings, fuel tanks or vessels
ductUIDsuIDSequenceType[1..1] requiredDucts fused into the body of the assembly

Used by

In a dataset · 1 path

In the schema · 1 declaration

TypeName
ductsTypeductAssembly