Line

In OpenBrIM, 3D representations can be defined using the following objects:

  • Surface

  • Volume

  • Line

Each Line object must include:

  • A first Point object

  • A second Point object

  • At least one Section/Shape/Surface object

Given two points and a cross section, OpenBrIM can render the line with the specified section profile. For polylines, multiple points can be specified, and a Line object can contain multiple Section objects if multiple points are defined in the line.

To create a line, two "point" objects are required that define the start and end of the line. These points are combined using the "line" object to express the line.

Syntax:

...
<O T="Line">
...
...
</O>

Example:

<br><O N="LineObject1" T="Project" Category="3D Geometric Objects"><br> <!-- created by ParamML Examples on 31.01.2023 --><br> <P N="height" V="40" Role="Input" /><br> <P N="width" V="2" Role="Input" /><br> <P N="depth" V="4" Role="Input" /><br> <O N="Column3D" T="Line"><br> <O T="Point" X="0" Y="0" Z="0" /><br> <O T="Point" X="0" Y="0" Z="height" /><br> <O N="Section" T="Section"><br> <O T="Shape"><br> <O T="Point" X="-width/2" Y="-depth/2" /><br> <O T="Point" X="-width/2" Y="depth/2" /><br> <O T="Point" X="width/2" Y="depth/2" /><br> <O T="Point" X="width/2" Y="-depth/2" /><br> </O><br> </O><br> </O><br></O><br>

The Line object is used in conjunction with the Section and Shape objects.

<br><O N="LineObject2" T="Project" Category="3D Geometric Objects"><br> <!-- created by ParamML Examples on 31.01.2023 --><br> <P N="height" V="100" /><br> <P N="width" V="10" /><br> <P N="depth" V="2" /><br> <P N="step" V="50" /><br> <O N="TShape1" T="Shape"><br> <O T="Point" X="-width/2" Y="-depth/2" /><br> <O T="Point" X="-width/2" Y="depth/2" /><br> <O T="Point" X="width/2" Y="depth/2" /><br> <O T="Point" X="width/2" Y="-depth/2" /><br> </O><br> <O N="Column3D_1" T="Line"><br> <O T="Point" X="0" Y="0" Z="0" /><br> <O T="Point" X="0" Y="step" Z="height" /><br> <O N="Section_1" T="Section"><br> <O N="Shape1" T="Shape" Extends="TShape1" Override="1" /><br> </O><br> </O><br> <O N="Column3D_2" T="Line"><br> <O T="Point" X="0" Y="step" Z="height" /><br> <O T="Point" X="0" Y="step*2" Z="0" /><br> <O N="Section_2" T="Section"><br> <O N="Shape2" T="Shape" Extends="TShape1" Override="1" /><br> </O><br> </O><br> <O N="Column3D_3" T="Line"><br> <O T="Point" X="0" Y="step*2" Z="0" /><br> <O T="Point" X="0" Y="" Z="0" /><br> <O N="Section_2" T="Section"><br> <O N="Shape2" T="Shape" Extends="TShape1" Override="1" /><br> </O><br> </O><br></O><br>

Example:

<br><O N="LineObject3" T="Project" Category="3D Geometric Objects"><br> <!-- created by ParamML Examples on 31.01.2023 --><br> <P N="height" V="40" /><br> <P N="width" V="2" /><br> <P N="depth" V="4" /><br> <P N="dx" V="8" /><br> <O N="Column3D" T="Line"><br> <O T="Point" X="0" Y="0" Z="0" /><br> <O T="Point" X="0" Y="0" Z="height" /><br> <O T="Section"><br> <O T="Shape"><br> <O T="Point" X="-width/2" Y="-depth/2" /><br> <O T="Point" X="-width/2" Y="depth/2" /><br> <O T="Point" X="width/2" Y="depth/2" /><br> <O T="Point" X="width/2" Y="-depth/2" /><br> </O><br> <O T="Shape"><br> <O T="Point" X="-width/4+dx" Y="-depth" /><br> <O T="Point" X="-width/4+dx" Y="depth" /><br> <O T="Point" X="width*2+dx" Y="depth" /><br> </O><br> </O><br> </O><br></O><br>

Example:

<br><O N="LineObject4" T="Project" Category="3D Geometric Objects"><br> <!-- created by ParamML Examples on 31.01.2023 --><br> <O T="Line"><br> <P N="DrawFaceA" V="0" /><br> <P N="DrawFaceB" V="0" /><br> <P N="DrawFaceABorder" V="1" /><br> <P N="DrawFaceBBorder" V="1" /><br> <O T="Point" X="0" Y="0" Z="0" /><br> <O T="Point" X="0" Y="0" Z="9" /><br> <O T="Circle"><br> <P N="Radius" V="10" /><br> </O><br> </O><br></O><br>

The Line object is used in conjunction with the “Draw Face” and “Draw Border” parameters.

Parameters:

1

Label

Mandatory

Name and Type Attributes

Default Description and Value Attributes

Other Attributes

2

Curved

No

N="IsCurved"

D="Curved?: Does this line curve along alignment definitions. [Yes=1/No=0]" V="0"

Role="Input"

3

Skew About X @ Start

No

N="StartSkewX"

D="Skew About X @ Start: The skew angle at the start of the line about X axis of the cross-section." V="0"

Role="Input" UT="Angle" UC="Section"

4

Skew About Y @ Start

No

N="StartSkewY"

D="Skew About Y @ Start: The skew angle at the start of the line about Y axis of the cross-section." V="0"

Role="Input" UT="Angle" UC="Section"

5

Skew About X @ End

No

N="EndSkewX"

D="Skew About X @ End: The skew angle at the end of the line about X axis of the cross-section." V="0"

Role="Input" UT="Angle" UC="Section"

6

Skew About Y @ End

No

N="EndSkewY"

D="Skew About Y @ End: The skew angle at the end of the line about Y axis of the cross-section." V="0"

Role="Input" UT="Angle" UC="Section"

7

Beta Angle

No

N="BetaAngle"

D="Beta Angle: The orientation angle to rotate the cross-section about the length of the line." V="0"

Role="Input" UT="Angle" UC="Section"

8

Section

No

N="Section" T="Section"

D="Section: The cross-section extruded along the length of the line's length." V=""

Role="Input"

9

Alignment

No

N="Alignment " T="Alignment"

D="Alignment: The alignment assignment of the object." V=""

Role="Input"

10

Draw Face A

No

N="DrawFaceA"

D="Draw Face A?: Should graphics display face A of this volume? [Yes=1/No=0]" V="1"

Role="Input"

11

Draw Face B

No

N="DrawFaceB"

D="Draw Face B?: Should graphics display face B of this volume? [Yes=1/No=0]" V="1"

Role="Input"

12

Draw Border

No

N="DrawBorder"

D="Draw Border?: Should graphics display a border along the lines connecting the faces? [Yes=1/No=0]" V="1"

Role="Input"

13

Draw Border Around Face A

No

N="DrawFaceABorder"

D="Draw Border Around Face A?: Should graphics display a border around face A? [Yes=1/No=0]" V="1"

Role="Input"

14

Draw Border Around Face B

No

N="DrawFaceBBorder"

D="Draw Border Around Face B?: Should graphics display a border around face B? [Yes=1/No=0]" V="1"

Role="Input"

15

PolyLine

No

N="PolyLine"

D="Draw multiple lines? Multiple points can be placed, a line is formed between consecutive points [Yes=1/No=0]" V="1"

Role="Input"

Last updated