Topology Factory

The Drawing - Topology Factory menu selection is enabled when the optional Business Tools extension has been installed and the focus is on a drawing window. If you have not activated the Business Tools extension with a valid Business Tools serial number you will not be able to use the Drawing - Topology Factory command.

 

The Drawing - Topology Factory command provides an interactive dialog to view and repair common topological errors in drawings. To use Topology Factory, open a drawing and then launch Topology Factory. The system will scan the drawing and report any incidents found in a list, grouping incidents of the same type together. If a selection is present, Topology Factory works only on the selected objects.

 

Selecting a particular type of incident, such as Lines intersecting other lines will choose that set of incidents for repair. If there is more than one such incident of that type, the system will choose the first incident of that type the current incident and will make one of the lines involved in the incident red and the other line blue.

 

Clicking Center incident will zoom into the current incident. Clicking Previous, Next or Last Incident will choose one of the other incidents of that type.

 

Clicking Fix Incident will repair the incident using the method specified, where auto tells Manifold to choose which line to edit, and choosing modify blue or modify red will specify which line is to be modified so that the two lines do not intersect each other.

 

Topology Factory will report many relationships between objects as incidents that may or may not be errors depending on the intent of the drawing. For example, if we intend that some lines will intersect areas or that some areas are to overlap other areas then such incidents are not errors. On the other hand, if we do not want any areas to overlap other areas then such incidents are errors to be repaired. Since Topology Factory does not know what we intend it reports all incidents within the repertoire of incidents for which it scans.

 

To make it easy to see detected incidents out of a list of many possible types of incidents, Manifold provides four buttons to control sort order that may be used to rapidly bring relevant incidents to the top of the incidents pane.

 

Location Precision

 

The Location precision parameter in the View - Properties - Precision dialog guides Topology Factory in deciding when an object is sufficiently "near" another object to trigger an incident. The Location precision factor should be set to a distance value so that proximity of objects over distances smaller than the specified distance will be detected as an incident. For example, if desired, the Location precision factor may be relaxed to a higher value while working with Topology Factory to detect and correct incidents and then set back to a smaller value for more detailed work. For convenience, Topology Factory provides a Precision box to specify precision within Topology Factory.

 

Note that lowering the value of the location precision parameter (making it a smaller number) will increase the precision, that is, it will cause Topology Factory to examine smaller details. Increasing the value of the location precision parameter (making it a larger number) will cause Topology Factory to examine incidents over larger details. Setting the location precision parameter to a larger value, for example, will cause Topology Factory to ignore incidents where lines overshoot areas by very small distances that are less than the large size of the location precision parameter.

 

As with the case when working with any automated tool, keep in mind that making sweeping changes with Topology Factory using a precision parameter that is significantly larger than the precision with which the drawing was originally created may make undesirable changes in the drawing. For example, lines that intersect at a very acute angle may have their point of intersection moved. To avoid unintended changes in such cases, take a moment to save the project before making changes. Examine incidents carefully and make changes only after viewing each incident. Although Topology Factory is quite good at identifying incidents based on the precision parameter in use, it cannot read our minds to know in all cases what we intend. That is why an interactive dialog is provided to make it easy for the user to review incidents and to decide what should be done in each case.

 

Controls

 

(Visual preview pane)

Displays the drawing with the current incident marked in red and/or blue selection color.

images\btn_zoom_tofit.gif

Zoom To Fit - Zoom so that the entire drawing fits within the preview pane.

images\btn_zoom_in.gif

Zoom In - Magnify the view as if seen from a closer distance.

images\btn_zoom_out.gif

Zoom Out - Reduce the view as if seen from farther away.

images\btn_zoom_box.gif

Zoom Box - Zoom to the size of the cursor box drawn with the mouse.

images\btn_center.gif

Center Point - Pan the view so that the spot clicked is centered.

images\btn_grabber.gif

Grabber - Interactive pan: click and drag with the grabber hand. The scene will be panned so that the initial point is moved to the spot where the drag is released.

images\btn_goto.gif

Center Incident - Pan and zoom the display to the current incident.

images\btn_move_to_top.gif

First Incident - Choose the first incident for repair of a set of incidents.

images\btn_move_up.gif

Previous Incident - Choose the previous incident for repair of a set of incidents.

images\btn_move_down.gif

Next Incident - Choose the next incident for repair of a set of incidents.

images\btn_move_to_bottom.gif

Last Incident - Choose the last incident for repair of a set of incidents.

(fix method box)

Choose a method to repair this particular incident: auto - Manifold chooses. modify blue - modify the object shown in blue. modify red - modify the object shown in red.

images\btn_fix_incident.gif

Fix the current incident using the selected method.

images\btn_fix_selected_incidents.gif

Fix all incidents of the highlighted type using the default fix method (auto).

(Incidents list pane)

A list of incidents found in the drawing, with like incidents grouped together in the same type of incidents. Incident types with more than one incident will be shown in boldface together with the number of such incidents. If the repair of a given incident may affect other incidents, the number of incidents for such possibly affected types will be shown with an asterisk to indicate that they should be refreshed.

images\btn_topofact_alpha.gif

Alphabetic - Sort the incidents list pane by alphabetic order.

images\btn_topofact_alpha_blast.gif

Alphabetic, Blanks Last - Sort the incidents list pane by alphabetic order, grouping detected incidents at the top of the list.

images\btn_topofact_recc.gif

Recommended - Sort the incidents list pane by items Manifold recommends we should inspect.

images\btn_topofact_recc_blast.gif

Recommended, Blanks Last - Sort the incidents list pane by items Manifold recommends we should inspect, grouping detected incidents at the top of the list.

Refresh

Re-scan the drawing for possible incidents that need to be repaired.

Scope

[All Objects] or the selection or a saved selection.

Precision

Size of Location Precision and units of measure to use for this Topology Factory session.

OK

Confirm changes made and update the drawing.

Cancel

Exit the dialog without making any changes to the drawing.

 

Types of Incidents

 

Topology Factory identifies the following:

 

Areas near other areas

Areas that are within the precision parameter of other areas, including overlaps.

Areas near themselves

Areas where any portion comes near itself within the precision parameter. Often will flag multi-branched areas with islands or holes when these disjoint portions of the same area are "near" each other.

Areas overlapping other areas

Areas that overlap other areas where the overlap is at least the precision parameter.

Areas overlapping themselves

Areas that overlap themselves (possible to do with pathological topology) where the overlap is at least the precision parameter.

Areas with multiple islands

Areas with multiple branches that form disconnected islands. Holes in multi-branched areas are not islands.

Areas with redundant or invalid metric

Areas where the sequence of coordinates defining the area is either redundant (for example, repeated identical coords) or forms an invalid metric. Multi-branched areas are flagged as possible invalid metric, so areas with islands or holes will be reported.

Lines intersecting areas

Lines that cross over areas, having an intersection of at least the precision parameter.

Lines intersecting other lines

Lines that cross over other lines.

Lines intersecting themselves

Lines that cross over themselves.

Lines near areas

Lines within the precision parameter of an area.

Lines near other lines

Lines within the precision parameter of another line.

Lines near themselves

Lines for which any portion comes near itself within the precision parameter. Often will flag multi-branched lines when these disjoint portions of the same line are "near" each other.

Lines overlapping other lines

Lines that coincide with another line.

Lines overshooting areas

Lines where the end of the line extends past the boundary of an intersected area.

Lines overshooting other lines

Lines where the end of the line extends past an intersection with another line.

Lines overshooting themselves

Lines where the end of the line extends past an intersection with a different portion of the same line.

Lines undershooting areas

Lines where the end of the line does not quite reach the boundary of an area.

Lines undershooting other lines

Lines where the end of the line does not quite reach another line.

Lines undershooting themselves

Lines where the end of the line does not quite reach a different portion of the same line.

Lines with contiguous branches

Multi-branched lines where some branches coincide.

Lines with multiple separate branches

Multi-branched lines where branches do not coincide.

Lines with redundant metric

Lines composed of sequences of coordinates where some coords are repeated or are otherwise unnecessary.

Points coinciding with other points

Points that are located at exactly the same position as another point.

Points near areas

Points that are located within the precision parameter of an area.

Points near ends of lines

Points that are located within the precision parameter of the end of a line.

Points near lines

Points that are located within the precision parameter of any part of a line.

Points near other points

Points that are located within the precision parameter of another point.

 

Incident List Sorting

 

The incident list may be sorted using the four buttons immediately above it as follows:

 

images\dlg_topofact_sort_01.gif

 

Pressing the Alphabetic button sorts incidents by alphabetic order.

 

images\dlg_topofact_sort_02.gif

 

Pressing the Alphabetic, Blanks Last button sorts incidents by alphabetic order, bringing found incidents to the top of the list.

 

images\dlg_topofact_sort_03.gif

 

Pressing the Recommended button sorts incidents by priority in which Manifold recommends they be fixed.

 

images\dlg_topofact_sort_04.gif

 

Pressing the Recommended button sorts incidents by priority in which Manifold recommends they be fixed, bringing found incidents to the top of the list.

 

Example

 

Consider a drawing with two areas and two lines. The two areas are colored in different colors using thematic formatting.

 

images\eg_topofact_01.gif

 

The areas have been drawn so they overlap.

 

images\eg_topofact_02.gif

 

When we launch Drawing - Topology Factory the dialog opens showing the first highlighted incident centered at higher zoom so we can easily see the incident. When two objects are involved in an incident Topology Factory will draw one of them in red and one of them in blue so that we can easily choose which object we would like to modify to resolve the incident.

 

images\eg_topofact_03.gif

 

We have configured the incidents list using the Alphabetic, Blanks Last sort option so that found incidents are displayed at the top of the list. We have highlighted the Areas overlapping other areas incident.

 

images\eg_topofact_04.gif

 

In the upper right corner of the dialog we choose modify blue and then click the Fix Incident button.

 

images\eg_topofact_05.gif

 

Manifold will redraw the display, showing the object that has been modified in green. We can click Refresh to recompute topological relationships (which might have changed as a result of the modification).

 

images\eg_topofact_06.gif

 

After the refresh, we can see that the blue area has had the overlapping portion removed.

 

images\eg_topofact_07.gif

 

If we take a look at the incidents list, we see that there is no longer a report of overlapping areas. Instead, the first item on the list is Areas near other areas, which makes sense because the two areas are now adjacent.

 

In the above way we can proceed through the list of all incidents reported by Topology Factory, examining each and deciding how we would like each reported incident to be resolved.