Shape objects are used in definition of Section objects. One or more shape objects makes up a Section, which can then be assigned to a Line to represent a 3D graphical entity.
<O T="Shape">
.
.
</O>
Parent elements: Project, Line, Section, Shape, Group, Repeat
Child elements: Parameters, Point, Circle, Shape, Group, Repeat
Note: In the context of Shape object, only X and Y parameters are used.
<O N="Shape: Sample 1" T="Project">
<P N="height" V="40" />
<P N="width" V="10" />
<P N="depth" V="20" />
<P N="t" V="2" />
<O N="Column3D" T="Line">
<O T="Point" X="0" Y="0" Z="0" />
<O T="Point" X="0" Y="0" Z="height" />
<O T="Section">
<O T="Shape">
<O T="Point" X="0" Y="0" />
<O T="Point" X="width" Y="0" />
<O T="Point" X="width" Y="t" />
<O T="Point" X="t" Y="t" />
<O T="Point" X="t" Y="depth" />
<O T="Point" X="0" Y="depth" />
</O>
</O>
</O>
</O>
The following shows the use of Radius (R) attribute in Shape objects:
<O N="Shape: Sample 2" T="Project">
<P N="height" V="40" />
<P N="width" V="10" />
<P N="depth" V="20" />
<P N="thk" V="2" D="Wall thickness of the tube" />
<O N="Column3D" T="Line">
<O T="Point" X="0" Y="0" Z="0" />
<O T="Point" X="0" Y="0" Z="height" />
<O T="Section">
<O T="Shape">
<O T="Point" R="1 + thk" X="-width/2" Y="-depth/2" Z="0" />
<O T="Point" R="1 + thk" X="-width/2" Y="depth/2" Z="0" />
<O T="Point" R="1 + thk" X="width/2" Y="depth/2" Z="0" />
<O T="Point" R="1 + thk" X="width/2" Y="-depth/2" Z="0" />
</O>
<O T="Shape">
<P N="IsCutout" V="1" />
<O T="Point" R="1" X="-width/2 + thk" Y="-depth/2 + thk" Z="0" />
<O T="Point" R="1" X="-width/2 + thk" Y="depth/2 - thk" Z="0" />
<O T="Point" R="1" X="width/2 - thk" Y="depth/2 - thk" Z="0" />
<O T="Point" R="1" X="width/2 - thk" Y="-depth/2 + thk" Z="0" />
</O>
</O>
</O>
</O>
The following shows the use of Chamfer size (C) attribute in Shape objects:
<O N="Shape: Sample 3" T="Project">
<P N="height" V="10" />
<P N="width" V="5" />
<P N="depth" V="10" />
<P N="thk" V="1" D="tube thickness" />
<P N="C1" V="1" D="outer chamfer distance" />
<P N="C2" V="1 + thk/sin(PI/4) - thk - thk/tan(PI/4)" D="inner chamfer distance" />
<O N="Column3D" T="Line">
<O T="Point" X="0" Y="0" Z="0" />
<O T="Point" X="0" Y="0" Z="height" />
<O T="Section">
<O T="Shape">
<O T="Point" C="C1" X="-width/2" Y="-depth/2" Z="0" />
<O T="Point" C="C1" X="-width/2" Y="depth/2" Z="0" />
<O T="Point" C="C1" X="width/2" Y="depth/2" Z="0" />
<O T="Point" C="C1" X="width/2" Y="-depth/2" Z="0" />
</O>
<O T="Shape">
<P N="IsCutout" V="1" />
<O T="Point" C="C2" X="-width/2 + thk" Y="-depth/2 + thk" Z="0" />
<O T="Point" C="C2" X="-width/2 + thk" Y="depth/2 - thk" Z="0" />
<O T="Point" C="C2" X="width/2 - thk" Y="depth/2 - thk" Z="0" />
<O T="Point" C="C2" X="width/2 - thk" Y="-depth/2 + thk" Z="0" />
</O>
</O>
</O>
</O>
<O N="Shape: Sample 4" T="Project">
<P N="height" V="40" />
<O N="Column3D" T="Line">
<O T="Point" X="0" Y="0" Z="0" />
<O T="Point" X="0" Y="0" Z="height" />
<O T="Section">
<O T="Shape">
<O T="Circle">
<P N="Radius" V="10" />
</O>
</O>
</O>
</O>
</O>