Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This section will discuss the use of Surface object(s) to represent a 2D surface or a 3D volume if thickness parameter is specified.

To create a Surface object, at least three points are required. The values of these points at each corner of the surface must be determined in the coordinate system and the surface must be defined by connecting the points in a consecutive, counter-clockwise manner.

Surface objects conform to the cross-sectional definition of the assigned Alignment in the transverse direction.

Syantax:

Code Block
languagexml
...
<O T="Surface">
...
...
</O>

Example:

The "Surface" object combines the entered points and defines them as a surface. In simpler terms, the surface is formed by grouping each entered point under the Surface object.

Code Block
languagexml
<O N="SurfaceObject1" T="Project" Category="3D Geometric Objects">
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O T="Surface" Z="20">
        <O T="Point" X="-10" Y="-10" />
        <O T="Point" X="10" Y="-10" />
        <O T="Point" X="10" Y="10" />
        <O T="Point" X="-10" Y="10" />
    </O>
</O>
Image Added

To view this example in the library, see (https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&folder=3D+Geometric+Objects&obj=objidskk4yc2vmxerkzijy3xxwi)

Example:

Code Block
languagexml
<O N="SurfaceObject2" T="Project" Category="3D Geometric Objects" TransAlignRule="Right"> 
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O N="HBeam" T="Surface">
        <O N="1stP" T="Point" X="1" Y="5" />
        <O N="2ndP" T="Point" X="7" Y="5" />
        <O N="3rdP" T="Point" X="7" Y="7" />
        <O N="4thP" T="Point" X="-7" Y="7" />
        <O N="5thP" T="Point" X="-7" Y="5" />
        <O N="6thP" T="Point" X="-1" Y="5" />
        <O N="7thP" T="Point" X="-1" Y="-5" />
        <O N="8thP" T="Point" X="-7" Y="-5" />
        <O N="9thP" T="Point" X="-7" Y="-7" />
        <O N="10thP" T="Point" X="7" Y="-7" />
        <O N="11thP" T="Point" X="7" Y="-5" />
        <O N="12thP" T="Point" X="1" Y="-5" />
    </O>
</O>
Image Added

If point objects are not entered consecutively, the surface may not be created as desired or an error may occur.

Code Block
languagexml
<O N="SurfaceObject2" T="Project" Category="3D Geometric Objects" TransAlignRule="Right">
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O N="HBeam" T="Surface">
        <O N="1stP" T="Point" X="1" Y="5" />
        <O N="2ndP" T="Point" X="7" Y="5" />
        <O N="3rdP" T="Point" X="7" Y="7" />
        <O N="4thP" T="Point" X="-7" Y="7" />
        <O N="5thP" T="Point" X="-7" Y="5" />
        <O N="6thP" T="Point" X="-1" Y="5" />
        <O N="7thP" T="Point" X="-1" Y="-5" />
        <O N="8thP" T="Point" X="-7" Y="-5" />
        <O N="9thP" T="Point" X="-7" Y="-7" />
        <O N="11thP" T="Point" X="7" Y="-5" />
        <O N="10thP" T="Point" X="7" Y="-7" />
        <O N="12thP" T="Point" X="1" Y="-5" />
    </O>
</O>
Image Added

Therefore, the order in which the points are entered is important. If the points are entered in the wrong order, the surface will not be formed correctly.

To view this example in the library, see (https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&obj=objidbveqbtvtsmlok7f4rym85&folder=3D+Geometric+Objects)

Example:

By specifying a thickness value, the "surface" becomes a 3D volume object. The Thickness parameter can be assigned a value in the same unit system used for the coordinates of the points.

Code Block
languagexml
<O N="SurfaceObject3" T="Project" Category="3D Geometric Objects" TransAlignRule="Right">
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O N="SurfaceEx" T="Surface">
        <P N="Thickness" V="5" />
        <O T="Point" X="0" Y="0" Z="0" />
        <O T="Point" X="20" Y="0" Z="0" />
        <O T="Point" X="20" Y="20" Z="0" />
        <O T="Point" X="0" Y="20" Z="0" />
    </O>
</O>
Image Added

To view this example in the library, see (https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&obj=objidw4e1ttr9nvekrroeuw8rp&folder=3D+Geometric+Objects)

Example:

The “IsCutout” parameter can be used to specify if the surface should be cut or not. A value of 1 or "Yes" indicates that the surface should be cut, and a value of 2 or "No" indicates that the surface should not be cut and should be created as is.

Code Block
languagexml
<O N="SurfaceObject4" T="Project" Category="3D Geometric Objects" TransAlignRule="Right">
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O N="SurfaceEx" T="Surface">
        <O T="Point" X="-20" Y="-20" />
        <O T="Point" X="-20" Y="20" />
        <O T="Point" X="20" Y="20" />
        <O T="Point" X="20" Y="-20" />
        <O N="Surface_tobecut" T="Surface" IsCutout="Yes">
            <O T="Point" X="-10" Y="-10" />
            <O T="Point" X="-10" Y="10" />
            <O T="Point" X="10" Y="10" />
            <O T="Point" X="10" Y="-10" />
        </O>
    </O>
</O>
Image Added

The Draw Border parameter queries whether to draw border lines on the shape. Default value is 1

“Yes” which means the border lines will be drawn, and a value of “No” means that the border lines will not be drawn.

Code Block
languagexml
<O N="SurfaceObject4" T="Project" Category="3D Geometric Objects" TransAlignRule="Right">
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O N="SurfaceEx" T="Surface" Thickness="20" DrawBorder="No">
        <O T="Point" X="-20" Y="-20" />
        <O T="Point" X="-20" Y="20" />
        <O T="Point" X="20" Y="20" />
        <O T="Point" X="20" Y="-20" />
        <O N="Surface_tobecut" T="Surface" IsCutout="Yes">
            <O T="Point" X="-10" Y="-10" />
            <O T="Point" X="-10" Y="10" />
            <O T="Point" X="10" Y="10" />
            <O T="Point" X="10" Y="-10" />
        </O>
    </O>
</O>
Image Added

To view this example in the library, see (https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&folder=3D+Geometric+Objects&obj=objid98i17ric0hkcbe4wgm2hj)

Example:

Code Block
languagexml
<O N="SurfaceObject5" T="Project" Category="3D Geometric Objects" TransAlignRule="Right">
    <!-- created by ParamML Examples on 31.01.2023 -->
    <O N="BeamSurface_1" T="Surface">
        <P N="w" V="5" D="width" />
        <P N="l" V="30" D="length" />
        <P N="d" V="3" D="depeth" />
        <P N="r" V="1" D="Radius" />
        <P N="Thickness" V="l" />
        <O T="Point" X="0" Y="-w/2" R="r" Z="d/2" />
        <O T="Point" X="0" Y="w/2" R="r" Z="d/2" />
        <O T="Point" X="0" Y="w/2" R="r" Z="-d/2" />
        <O T="Point" X="0" Y="-w/2" R="r" Z="-d/2" />
    </O>
    <O N="BeamSurface_2" T="Surface" Y="10">
        <P N="w" V="5" D="width" />
        <P N="l" V="30" D="length" />
        <P N="d" V="3" D="depeth" />
        <P N="c" V="0.5" D="Chamfer size" />
        <P N="Thickness" V="l" />
        <O T="Point" X="0" Y="-w/2" C="c" Z="d/2" />
        <O T="Point" X="0" Y="w/2" C="c" Z="d/2" />
        <O T="Point" X="0" Y="w/2" C="c" Z="-d/2" />
        <O T="Point" X="0" Y="-w/2" R="c" Z="-d/2" />
    </O>
</O>
Image Added

To view this example in the library, see (https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&obj=objiducyic65pevl00jk42lkvh)

Label

Mandatory

Name and Type Attributes

Default Description and Value Attributes

Other Attributes

1

Curved

No

N="IsCurved"

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

V="0"

Role="Input"

2

Cutout

No

N="IsCutout"

D="Cutout: Does this surface represent a cutout? [Yes=1/No=0]"

V="0"

Role="Input"

3

Draw Border

No

N="DrawBorder"

D="Draw Border: Should a border drawn around the surface? [Yes=1/No=0]"

V="0"

Role="Input"

4

Thickness

No

N="Thickness"

D="Thickness: The thickness of the surface. (optional)"

V="2"

Role="Input"UT="Length"
UC="Section"