Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
05 ArchiCAD 11 GDL Reference Guide.pdf
Скачиваний:
59
Добавлен:
11.03.2015
Размер:
3.22 Mб
Скачать

3D Shapes

j4: the bottom edge of the cutting form will be visible j5: the top edge of the cutting form will be visible

j7: controls the viewpont dependent visibility of the lengthwise edge

SOLID GEOMETRY COMMANDS

GDL is capable of performing specialized 3D operations between solids represented by groups. These operations can be one of the following:

ADDGROUP: forming the Boolean union of two solids;

SUBGROUP: forming the Boolean difference of two solids;

ISECTGROUP: forming the Boolean intersection of two solids;

108

ArchiCAD 11 GDL Reference Guide

3D Shapes

ISECTLINES: calculating the intersection lines of two solids;

SWEEPGROUP: sweeping a solid along a vector.

A GDL solid is composed of one or more lumps that appear as separated bodies in the model. A lump has exactly one outer shell and may contain voids. (Voids can be described as “negative” inner shells inside a lump.) The solid in the drawing below is composed of two lumps in such a way that one of them contains a void.

GDL bodies such as BLOCK, SPHERE, etc., appear as outer shells in groups. By means of the following construction the user is capable of putting more than one shell in a solid (note the BODY -1 statement):

GROUP "myGroup" BLOCK 1,1,1 BODY –1 ADDX 1 BLOCK 1,1,1

ENDGROUP

The above solid contains two lumps; each of them is composed of one shell. Voids can be defined by means of primitives, or can occur as a result of a Boolean difference (e.g. subtracting a small cube from the middle of a big one).

See also “Primitive Elements” on page 93.

Although group operations are intended to work with solid objects, they can be applied to surfaces, wireframes or hybrid models, too. (Hybrid models are basically surfaces that may contain edges without neighboring faces.) The result of the operations on such models are summarized in the following tables:

ArchiCAD 11 GDL Reference Guide

109

3D Shapes

Union (base » tool)

 

solid base

surface base

wireframe base

hybrid base

 

 

 

 

 

 

 

 

 

solid tool

solid result

surface result (merging)

wireframe result (merging)

hybrid result (merging)

 

 

 

 

 

 

 

 

 

surface tool

surface result (merging)

surface result (merging)

hybrid result (merging)

hybrid result (merging)

 

 

 

 

 

 

 

 

 

wireframe tool

wireframe result (merging)

hybrid result (merging)

wireframe result (merging)

hybrid result (merging)

 

 

 

 

 

 

 

 

 

hybrid tool

hybrid result (merging)

hybrid result (merging)

hybrid result (merging)

hybrid result (merging)

 

 

 

 

 

 

 

 

 

Difference (base\tool)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

solid base

surface base

 

wireframe base

 

hybrid base

 

 

 

 

 

 

 

solid tool

solid result

surface result

 

wireframe result

 

hybrid result

surface tool

solid base (no effect)

surface base (no effect)

 

wireframe base (no effect)

hybrid base (no effect)

wireframe tool

solid base (no effect)

surface base (no effect)

 

wireframe base (no effect)

hybrid base (no effect)

hybrid tool

solid base (no effect)

surface base (no effect)

 

wireframe base (no effect)

hybrid base (no effect)

Intersection (base « tool)

 

solid base

surface base

wireframe base

hybrid base

 

 

 

 

 

 

 

 

 

solid tool

solid result

surface result

wireframe result

hybrid result

 

surface tool

surface result

empty result

empty result

empty result

 

wireframe tool

wireframe result

empty result

empty result

empty result

 

hybrid tool

hybrid result

empty result

empty result

empty result

 

Intersection lines (base « tool)

 

 

 

 

 

 

 

solid base

surface base

 

wireframe base

 

hybrid base

 

 

 

 

 

 

 

 

 

solid tool

wireframe result

wireframe result

 

empty result

 

wireframe result

 

surface tool

wireframe result

empty result

 

empty result

 

empty result

 

wireframe tool

empty result

empty result

 

empty result

 

empty result

 

hybrid tool

wireframe result

empty result

 

empty result

 

empty result

 

Sweeping

solid

surface

wireframe

hybrid

 

 

 

 

valid result

surface base (no effect)

wireframe base (no effect)

hybrid base (no effect)

110

ArchiCAD 11 GDL Reference Guide

3D Shapes

Surfaces can be explicitly generated by using the MODEL SURFACE command, or implicitly by leaving out non-neighboring face polygons from the model. Wireframes are produced either by using the MODEL WIRE statement or by defining objects without face polygons. Hybrid models can only be generated indirectly by leaving out neighboring face polygons from the model.

In the majority of the cases the required model is solid. GDL bodies appear as shells in group definitions, so in order to achieve fast and reliable operation, the geometric correctness of the generated shells is a critical issue. Handling degenerated objects loads the GDL engine and causes the desired operation to take more time to complete. The main rule to be considered regarding the efficient use of GDL group operations can be summarized as follows: model by conforming to existing physical presence of spatial objects. In practice this can be expressed by the following guidelines:

Avoid self-intersecting objects.

Avoid self-touching objects (apply small gaps).

Avoid zero-sized portions of objects (apply small thickness).

According to the above, these rules are to be followed for shells (defined by bodies), not for solids (defined by groups). (The solid produced by the script in the Group construction above is modeled properly, since the constituent shells touch each other but the shells, themselves, are geometrically correct.)

GROUP

GROUP "name"

Beginning of a group definition. All bodies until the next ENDGROUP statement will be part of the “name” group. Groups are not actually generated (placed), they can be used in group operations or placed explicitly using the PLACEGROUP command. Group definitions cannot be nested, but macro calls containing group definitions and PLACEGROUP commands using other groups can be included.

Group names must be unique inside the current script. Transformations, cutplanes outside the group definition have no effect on the group parts; transformations, cutplanes used inside have no effect on the bodies outside the definition. Group definitions are transparent to attribute DEFINEs and SETs (pens, materials, fills); attributes defined/set before the definition and those defined/set inside the definition are all effective.

ENDGROUP

ENDGROUP

End of a group definition.

ADDGROUP

ADDGROUP (g_expr1, g_expr2)

SUBGROUP

SUBGROUP (g_expr1, g_expr2)

ArchiCAD 11 GDL Reference Guide

111