Boolean Operations and Wireframing

Introduction to Boolean and Plane Wireframe Operations

Boolean and Plane Wireframing Operations

Your application has a comprehensive set of commands and processes for performing boolean and other related operations on wireframes, such as: unions, intersections and splits. All the operations are driven by similar dialogs and can be accessed through the Wireframes menu; either as Boolean Operations or Plane Operations. In addition to these, there are a number of other very useful commands: verification, decimation and the calculation of a wireframe volume.

note.gif (1017 bytes)

This help file is common to all Studio applications. Depending on the Studio product in use, not all commands may be available.

 

Boolean Interactive Commands vs the BOOLEAN Process

With the exception of the strings from intersections command, Boolean operations require at least two wireframe objects to be available before a command is accessed. If using interactive boolean commands, wireframe input data must be loaded into memory first. If you are processing data using the BOOLEAN process, data is processed directly from disk, not in-memory objects.

The BOOLEAN process provides file-based boolean functionality for the following boolean operations:

  1. Union - Takes two wireframes and creates a single wireframe with the same surface appearance and volume of both wireframes. Also, see the help file for the wireframe-union interactive command dialog. *OUTTR and *OUTPT will be generated with this method.
  2. Difference - Takes the difference of the second from the first wireframe by removing the first volume that is common to the second. The results will differ if the first and second wireframe are swapped. Also, see the help file for the wireframe-difference interactive command dialog. *OUTTR and *OUTPT will be generated with this method.
  3. Intersection - Takes two wireframes and creates a single wireframe output of their overlapping (common) volume. Also, see the help file for the wireframe-intersection interactive command dialog. *OUTTR and *OUTPT will be generated with this method.
  4. Extract Separate - Takes two wireframes and creates discrete pieces of a two wireframe intersection. The parameters WIRE1IN, WIRE1ON, WIRE1OUT, WIRE2IN, WIRE2ON, WIRE2OUT indicate which outputs are created. Also, see the help file for the wireframe-extract-separate interactive command dialog. *OUTTR and *OUTPT will be generated with this method.
  5. Strings from Intersection - Takes two wireframes and creates a string outlines where the surfaces intercept. Also, see the help file for the wf-intersections interactive command dialog. *OUTSTR will be generated with this method.
  6. Solid Hull - Creates a single shell around multiple overlapping surfaces. The option only uses the first wireframe input (*WIRE1TR, *WIRE1PT). Also, see the help file for the convert-wf-hull interactive command dialog. *OUTTR and *OUTPT will be generated with this method.

Boolean Methods - Interactive Commands

All the operations described here require the data to be loaded into memory first. Wireframe selection is, by default, object-based as each wireframe loaded into memory exists as a separate object. Wireframe Selection: more

note.gif (1017 bytes)

Selection can be altered to GROUP, SURFACE or Attribute by changing the Wireframing settings in the Project Settings dialog (activate the Home ribbon and select Settings).

 

Most Boolean and plane wireframe operations recommend that the wireframe be verified before running the operation. The standard dialogs contain check boxes (checked by default) which trigger wireframe verification before the operation is run.

Click on the following links to navigate to a summary of each command.

Boolean Operations

Plane Operations

Other Commands

Merge*

Split

Verify

Union

Multiple Split

Decimate

Intersection

Split by String

Calculate Volume

Difference

Section

 

Extract Separate

Multiple Section

 

Strings from Intersections

Hull to Strings

 

Solid Hull

Project DTM to Plane

 

Update DTM

Divide by Strings

 

 

Section Strings from Wireframe

 

 

Boolean Interactive Commands Overview

All Boolean operations use similar dialogs which provide two methods for selecting wireframes: from a drop-down box or by picking with the mouse pointer.

True boolean operations such as the Union, Intersection and Difference are only well defined for closed wireframes. They may be used with open wireframes, but the result may be unspecified if the open wireframe is complex. In these cases it may be better to useExtract Separate.

Merge*

The Wireframe Merge command has been replaced by the Extract Separate command which produces the same result as the old Merge. The command name and the quick key will run the Extract Separate command.

Command

Quick Key

wireframe-merge

wme

Please note that this command is no longer supported. Instead, use the Extract Separate command.

note.gif (1017 bytes) If you want to add two wireframes together and retain all the attributes of both, use the Combine Objects command.

Union

Command

Quick Key

wireframe-union

wun

The Union operation takes two wireframe objects and creates a single wireframe with the same surface appearance and characteristics as the two component wireframes together. Any common volume is not distinguishable.

The Union dialog allows you to select the wireframes to be used and choose whether or not to verify them. Verification is recommended.

Intersection

Command

Quick Key

wireframe-intersection

win

The Intersection command takes two wireframe objects and creates a separate wireframe of their overlapping (common) volume.

The Intersection dialog allows you to select the wireframes and choose whether or not to verify them. Verification is recommended.

 Difference

Command

Quick Key

wireframe-difference

wdi

The Difference command creates a single wireframe object from two component wireframe objects by removing from the first any volume that is common to the second.

(Wireframe 1 - Wireframe 2)  is different from (Wireframe 2 - Wireframe 1).

The Difference dialog allows you to select the wireframes and choose whether or not to verify them. Verification is recommended.

Extract Separate

Command

Quick Key

wireframe-extract-separate

wme

Creates a separate wireframe for each logically discrete piece of a two wireframe interaction. Includes "differences", "intersections" etc.

The  Extract Separate dialog allows you to select the wireframes and choose whether or not to verify them. Verification is recommended.

Strings from Intersections

Command

Quick Key

wf-intersections

sfi

Takes two wireframes and, where they intercept, creates string outlines.

The Strings from Intersections dialog allows you to select the wireframes and choose whether or not to verify them. Verification is recommended.

 Solid Hull

Command

Quick Key

wireframe-solid-hull

soh

Attempts to create a single shell around multiple overlapping surfaces, by applying progressive unions to the sub-objects which can be the surfaces created by verification or another field such as "".

The Solid Hull dialog allows you to select the wireframe and choose whether or not to verify it. Verification is recommended.

Update DTM

Command

Quick Key

wireframe-surface-merge

udt

The Update DTM menu selection runs the wireframe-surface-merge command. It takes two surface wireframes and  modifies the first with the second. The elevation of the second surface will be used in preference to that of the first and any gaps will be filled. The boundary is fixed by the first surface.

The Wireframe Surface Merge dialog allows you to select the wireframes and choose whether or not to verify them. Verification is recommended.

 

Plane Operations

Like the pure Boolean operations, the plane commands use a common base dialog. This provides the means for selecting the wireframe and a number of ways for specifying the plane or planes.

Hull to Strings

Command

Quick Key

convert-wf-hull

hts

Creates strings from the hull (outline) of an existing wireframe object. The orientation of the plane to be used to create the cross-sectional string object is fully configurable.

The Hull to Strings dialog allows you to select the wireframe and specify the projection plane.

 

Split

Command

Quick Key

wireframe-split

spli

Splits a wireframe into two parts using a plane which can be: the view plane; a plane specified by azimuth, inclination and a reference point; or a plane picked using the pointer.

The new parts are discrete objects.

The Wireframe Split dialog allows you to select the wireframe and specify the plane.

 

 Multiple split

Command

Quick Key

multiple-split-multiple

mus

Splits a wireframe into several parts using parallel planes, a set distance apart. The planes can be: the view plane (and parallels); parallel planes specified by azimuth, inclination and a reference point; or parallel planes specified using the pointer.

The Wireframe Split Multiple dialog allows you to select the wireframe and specify the planes.

Split by String

Command

Quick Key

wireframe-split-string

 

This boolean command is used to intersect a wireframe, creating discrete objects, using a defined (and previously selected) string.

The Wireframe Split by String dialog allows you to select the wireframe and specify the projection plane.

Section

Command

Quick Key

wireframe-section

 

Wireframe Section calculates the intersection of a wireframe with a plane, and creates strings or faces to represent the results.

The Wireframe Section dialog allows you to select the wireframe and specify the plane.

Section Multiple

Command

Quick Key

wireframe-section-multiple

 

Creates multiple strings where a defined set of planes intersect a wireframe object.

The Multiple Section dialog allows you to select the wireframe, set an inter-plane distance and specify the cutting plane.

 Project DTM to Plane

Command

Quick Key

wireframe-surface-project

pdv

Project DTM to Plane runs the wireframe-surface-project command which  projects the boundary of a chosen surface wireframe to a specified plane.

Projection is always perpendicular to the chosen plane so the DTM must have no overlaps in this direction. Any overlaps will cause crossing faces which will be reported.

The  Project To Plane dialog allows you to select the wireframe and specify the plane.

 

  Divide by Strings

Command

Quick Key

wireframe-surface-project

-

Splits a wireframe into several parts using multiple selected strings. The Divide Wireframe Dialog is used to specify settings.

 

  Section Strings from Wireframe

Process

Quick Key

WIREPE

-

"Section" wireframe to produce perimeters.


Other Commands

Verify

Command

Quick Key

wireframe-verify

wvf

Wireframe Verify checks for duplicate points, faces and cross-overs according to options specified.

Use the Wireframe Verify dialog to select the wireframe and specify the detail of the verification process.

Decimate

Command

Quick Key

wireframe-decimate

 

Wireframe Decimate reduces the number of edges and faces in a wireframe according to selected reduction criteria. Creates a new decimated wireframe.

Use the Wireframe Decimate dialog to select the wireframe and specify the decimation criteria.

Calculate Volume

Command

Quick Key

wireframe-volume

wvo

 

Use the Wireframe Calculate Volume dialog to select the wireframe and specify the plane and plane separation.