Before a fluidstream simulation can propagate fluid through a P&ID, AseptSoft must first build the connectivity graph — determining which entities are connected to which. This page describes every mapping strategy that AseptSoft uses to discover connections between pipes, fittings, instruments, and other components.
Each mapper runs independently and contributes edges to the connectivity graph. The mappers execute in sequence, and later mappers can see (and build upon) connections established by earlier ones. Together, they handle the full range of geometric situations found in real-world P&ID drawings.
ℹ️ Note: All mappers described below are shared between AutoCAD Standard and AutoCAD Plant 3D, except the final one — Inline Assets on Line — which is exclusive to Plant 3D.
🧠 Understanding Mapping Strategies
The Fluid Stream depends on AseptSoft knowing which objects on the P&ID are neighbours. Since AseptSoft cannot visually interpret the drawing like a human, it relies on geometric rules (mappers) to determine when two objects are close enough to be considered connected.
During the First Time Setup, all objects on the P&ID are processed and classified:
-
Shapes (blocks of lines) are assigned classes like Valve, Clamp, Heat Exchanger, Tank, Instrument, Pump, etc.
-
Certain blocks may be marked as Sticky or Highly Reactive, which triggers additional geometric checks
-
Once classified, the mappers use these classifications along with geometric tolerances to build the connectivity graph
In most cases, the default settings produce a perfect Fluid Stream. But real P&IDs often contain imperfections — broken clamps, broken lines, unusual spacing — that require specific rules to handle. The mappers below address all these situations.
📋 Overview of All Mapping Strategies
|
# |
Strategy |
What It Detects |
Platform |
|---|---|---|---|
|
1 |
📍 Endpoint Proximity Mapping |
Endpoint-to-entity proximity |
Both |
|
2 |
↔️ Parallel Block-to-Line Mapping |
Internal block lines parallel and aligned with free lines |
Both |
|
3 |
📎 Overlapping Clamp Lines |
Overlapping line segments between Clamp blocks |
Both |
|
4 |
📌 Sticky Block References (Clamp) |
Clamp connection points touching nearby entities |
Both |
|
5 |
⚡ Highly Reactive Block References |
Padded bounding-box overlap for specially marked blocks |
Both |
|
6 |
🔗 Symbol Attachment Points |
Symbol Style attachment points defining explicit connection locations |
Both |
|
7 |
🔲 Line Gap Bridging |
Co-linear pipe segments separated by visual gaps |
Both |
|
8 |
🌀 Arc Connectivity |
Arc entities aligned on the same axis |
Both |
|
9 |
📦 AutoCAD Group Connectivity |
AutoCAD named Group connectivity |
Both |
|
10 |
〰️ Parallel Line Pairing |
Parallel free lines forming a rectangular pipe corridor |
Both |
|
11 |
🏭 Inline Assets on Line (Plant 3D only) |
Plant 3D assets sitting on a PnP Line Segment |
Plant 3D only |
⚙️ Configuring Mappers — Settings Panel
Access the Fluid Stream Mapping Options from the Module Ribbon → Simulations panel. The settings panel lets you:
-
Enable/disable each mapper individually (mandatory mappers are always on)
-
Adjust tolerance values per mapper — expand each mapper to see its specific tolerances
-
Choose parallel mapping mode — radio buttons at the bottom of the panel (see Parallel Block-to-Line Mapping below)
📏 Summary of All Tolerance Settings
|
Setting |
Default |
Description |
Used By |
|---|---|---|---|
|
Tolerance Distance |
0.01 |
Primary proximity threshold — how close two endpoints need to be to connect |
Mappers 1, 2, 4, 7, 10 |
|
Attachment Point Snapping |
0.01 |
Smaller snap radius for precise alignment to midpoints and endpoints of lines |
Mappers 1, 4 |
|
Tolerance Angle |
2° |
Maximum angular deviation from perfect parallelism or perpendicularity |
Mappers 2, 7, 8, 10 |
|
Parallel Lines Difference |
3.5 |
Maximum allowed difference in length between two parallel lines |
Mappers 2, 10 |
|
Parallel Lines Distance Ratio |
1.0 |
Minimum ratio of line length to inter-line gap (prevents connecting distant short lines) |
Mappers 2, 10 |
|
Buffer for Parallel Lines |
0.2 |
Spatial search buffer multiplier for parallel line detection |
Mappers 2, 10 |
|
Max Absolute Gap Length |
0 |
Maximum physical gap distance for line gap bridging (0 = not in use / no limit) |
Mapper 7 |
|
Max Gap as Ratio of Longer Side Line |
1.5 |
Maximum gap expressed as a multiple of the longer side line's length (0 = not in use / no limit) |
Mapper 7 |
|
Spatial Index Buffer |
0.1 |
Broad-phase search buffer for spatial queries |
All mappers |
ℹ️ Note: A value of 0 in the last two gap settings means "not in use / no limit."
💡 Tip: The difference between the Tolerance Distance (setting 1) and the Max Absolute Gap Length (setting 7): Tolerance Distance is for very tiny distances where AseptSoft sees two points as effectively equal. Max Absolute Gap Length is for larger gaps where there must be two lines aligned on the same axis to be considered connected.
📍 1. Endpoint Proximity Mapping
Purpose: The most fundamental mapper. It connects line/polyline/arc/spline endpoints to any nearby entity within a distance tolerance.
How It Works
Imagine every pipe line (Line, Arc, Polyline, or Spline) has two endpoints — a start and an end. For each endpoint, AseptSoft draws an imaginary circle of radius equal to the Tolerance Distance around that point. Any entity whose geometry falls within that circle is considered a neighbour and a connection is established.
Snap-to-Midpoint-or-Ends
In addition to the main tolerance, there is an Attachment Point Snapping tolerance. When a pipe endpoint falls within this smaller snapping distance of another entity's start, midpoint, or end, the connection point is "snapped" to that exact geometric feature. This prevents small drawing imprecisions from creating incorrect graph topologies.
What Gets Connected
-
Pipe endpoint to pipe endpoint (two lines meeting at a corner)
-
Pipe endpoint to block reference (a line ending at a valve symbol)
-
Pipe endpoint to any curve entity within range
Special Behavior with Gap and Pipe Crossing Blocks
If the nearby entity is a Gap or Pipe Crossing Break block (as determined by its classification), the pipe endpoint remains marked as "open-ended" even though a connection is made. This allows subsequent mappers (like the Line Gap Bridging) to properly handle the visual gap.
↔️ 2. Parallel Block-to-Line Mapping
Purpose: Connects a line inside a block reference (e.g., a pipe stub drawn inside a valve symbol) to a free line (an actual pipe segment) when the two are parallel, equal in length, and center-aligned.
How It Works
Many P&ID symbols contain internal lines that represent the pipe passing through the component. When these internal lines are parallel to and aligned with an actual pipe line in the drawing, it indicates the pipe "enters" the symbol from that side.
The mapper checks whether lines overlap (share a common segment) — if so, they connect immediately. Otherwise, it checks if they are parallel (within angle tolerance), equal in length (within difference tolerance), and center-aligned, and verifies no other objects lie in between.
Three Connection Modes
This mapper supports three levels of parallelism checking, configured via radio buttons at the bottom of the Mapping Settings panel:
|
Setting |
Behaviour |
|---|---|
|
Free lines only |
Only checks block internal lines against free pipe lines. This is the most restrictive — only AnyBlock-to-Line clamp connections are accepted |
|
Free lines and Sticky block references |
Also checks block-to-block parallel lines where at least one is a Sticky (Clamp) block. Accepts AnyBlock-Line and StickyBlock-AnyBlock clamp connections |
|
Free lines and any block references |
Checks all block-to-block parallel lines. Accepts AnyBlock-Line, StickyBlock-AnyBlock, and AnyBlock-AnyBlock clamp connections |
💡 Tip: The difference between these modes matters when you have symbols that look like clamps but are composed of multiple overlapping blocks rather than a single block sitting on a pipe line.
📎 3. Overlapping Clamp Lines
Purpose: Connects two Clamp-classified blocks when their internal line segments physically overlap in world space.
How It Works
Some P&ID drawing standards use symbols whose internal lines overlap with the pipe or with adjacent symbols. This is common with "clamp" style connections — fittings that sit directly on the pipe with overlapping geometry.
The mapper identifies all pairs of block references whose bounding boxes intersect, filters to pairs where at least one block is classified as a Clamp, then tests whether any of their internal lines share overlapping segments.
Example: A clamp that visually looks correct but is actually composed of two separate blocks — the bottom line from a heat exchanger together with the top line of an adjacent pipe. The Overlapping Clamp Lines mapper detects this geometric coincidence.
No Tolerance Parameters
This mapper uses only the global geometric tolerance for overlap detection — it either overlaps or it does not.
📌 4. Sticky Block References (Clamp)
Purpose: Connects Clamp blocks to any entity whose geometry touches their connection points — the vertices of special "Clamp" sub-entities defined in the Symbol Style.
How It Works
Certain P&ID symbols are designed to "stick" to whatever pipe or entity passes near their connection points. These connection points are defined either through Symbol Style Clamp entities or (as a fallback) through the start/end points of all internal lines.
The mapper enumerates all Clamp-classified blocks, computes their connection points in world coordinates, then checks nearby entities for geometric contact within the tolerance distance. Clamp-Refuser blocks are excluded from connecting to Clamp blocks.
⚡ 5. Highly Reactive Block References
Purpose: Connects blocks classified as Highly Reactive to any entity whose bounding box overlaps the block's padded bounding box. This is the most aggressive connection strategy.
How It Works
Some components (like tank nozzles or large fittings) need to connect to any pipe that merely passes near them, even without precise geometric contact. These components are classified with the Highly Reactive fluid mode, which gives them an expanded "catch zone."
The padding distance (called Reactive Distance) is configurable per-class. Any entity whose bounding box falls within the padded zone is connected — unless it is classified as Immune to Highly Reactive.
Immunity
Blocks classified with the Immune to Highly Reactive fluid mode are immune to being captured by Highly Reactive blocks. This prevents unwanted connections between overlapping large symbols.
🔗 6. Symbol Attachment Points
Purpose: Creates explicit connection endpoints at Attachment Point locations defined in a symbol's Internal Fluid Map (from the Symbol Editor).
How It Works
The Symbol Editor allows users to define an Internal Fluid Map — a graph of nodes and edges inside a symbol. Among these nodes, Attachment Point nodes mark the exact locations where the symbol should connect to external pipes.
Attachment Points that fall within a No-Connect Area (also defined in the Symbol Style) are registered as disconnection points, explicitly preventing connections at those locations.
Why This Matters
Without this mapper, complex symbols like Block Valves (which contain multiple control modules connected by an internal flow graph) would have no way to define where external pipes should attach.
No Tolerance Parameters
This mapper uses the symbol's exact geometric definitions — no user-configurable tolerances apply.
🔲 7. Line Gap Bridging
Purpose: Reconnects co-linear pipe segments that are visually separated by a gap, as long as no "non-touching" block lies in the gap.
How It Works
In many P&ID standards, a single logical pipe is drawn as multiple line segments with small visual gaps between them. These gaps might exist for clarity (to show instrument tap points) or due to drawing conventions.
The mapper groups all free lines by axis alignment, sorts them by position, then walks through consecutive segments checking if the gap between them is small enough. The two key tolerances are:
-
Max Absolute Gap Length — The gap must be shorter than this value
-
Max Gap as Ratio — The gap must be shorter than a fraction of the longer segment's length
If a Non-Touching block (e.g., an instrument that taps into the pipe without touching it) sits within a gap, the pipe segments connect to that block instead of bridging directly.
Pipe Crossing Breaks
A Pipe Crossing Break represents two pipes crossing over each other (one typically shown with a small gap or bump). The mapper detects the crossing and connects each through-pair correctly without cross-connecting unrelated pipes.
💡 Tip: You use the Max Absolute Gap Length and Max Gap Ratio settings primarily when there is a "fault" in the P&ID — they are a safety measure for PIDs with drawing errors. Both must have lines perfectly aligned on the same axis to trigger.
🌀 8. Arc Connectivity
Purpose: Connects arc entities that share the same axis alignment, bridging gaps between consecutive arcs in a curved pipe run.
How It Works
Some P&ID drawings use arc entities to represent curved pipe segments (bends, elbows, or rounded corners). The mapper groups arcs by orientation and connects consecutive arcs whose endpoints are both "open" (not already connected).
📦 9. AutoCAD Group Connectivity
Purpose: Connects all entities that belong to the same AutoCAD named Group.
How It Works
AutoCAD's named Groups allow users to logically associate entities. When entities are placed in the same Group, AseptSoft treats them as connected regardless of their geometric positions. This is useful for:
-
Connecting components that are drawn far apart but logically belong to the same flow path
-
Forcing connections that no geometric mapper can detect
-
Overriding the default connectivity for special drawing conventions
No Tolerance Parameters
This is a purely logical mapper — geometry is irrelevant.
〰️ 10. Parallel Line Pairing
Purpose: Connects two parallel free lines (not inside blocks) that face each other and form a rectangular corridor, typically representing heat exchangers, double-wall pipes, or other paired-line conventions.
How It Works
The mapper searches for nearby parallel lines that are equal in length and center-aligned. Critically, it verifies that perpendicular lines or curves connect to both parallel lines — this distinguishes a genuine paired-pipe corridor from two unrelated pipes that happen to be parallel.
Why Perpendicular Lines Are Required
Without the perpendicular-line check, any two nearby parallel pipes (which are extremely common in P&IDs) would be incorrectly connected. The perpendicular connectors prove that the two lines form an intentional rectangular structure.
🏭 11. Inline Assets on Line (Plant 3D only)
Purpose: Connects Plant 3D inline assets (valves, instruments) to the PnP Line Segments they sit on. This mapper is mandatory in Plant 3D and does not exist in AutoCAD Standard.
How It Works
In AutoCAD Plant 3D, P&ID components (called "assets") are placed directly onto PnP Line Segments. The Plant 3D data model maintains an explicit parent-child relationship between an asset and its host line. This mapper leverages that native relationship instead of geometric proximity.
No Tolerance Parameters
This mapper uses the Plant 3D data model relationships directly — no geometric tolerances are needed.
🔄 Mapper Execution Order and Interactions
The mappers execute in the order listed above (1 through 11). Some important interactions:
-
Endpoint Proximity Mapping runs first and establishes the baseline connectivity. All subsequent mappers build upon this baseline.
-
Line Gap Bridging respects the "open end" markers set by Endpoint Proximity Mapping — it only bridges gaps between endpoints that remain unconnected.
-
Parallel Line Pairing excludes connected lines from being processed by Line Gap Bridging, preventing double-counting.
-
Symbol Attachment Points can disconnect points (via No-Connect Areas), overriding connections established by earlier mappers.
-
Inline Assets on Line (Plant 3D) runs as a mandatory mapper that always executes.
📌 Custom Connection Points (AseptSoft Connector)
In some cases, the automatic mapping may not find the correct connection points on an object. For example, a heat exchanger may connect at unexpected locations, or you may need additional connection points that don't exist in the symbol definition. The AseptSoft Connector command lets you manually define custom connection points.
How to Use AseptSoft Connector
-
Run the AseptSoft Connector command
-
Click on the object you want to inspect — you will see the existing connection points displayed in blue
-
To add a connection point, click on the desired location — a new connection point appears in green
-
To remove a connection point, click on an existing one — it turns red and fully blocks fluid at that location
-
Fluid will flow through blue (original) and green (custom) points, but not through red (removed) points
Important Behaviours
|
Colour |
Meaning |
|---|---|
|
🔵 Blue |
Original connection point (defined by the symbol) |
|
🟢 Green |
Custom connection point (added by user) |
|
🔴 Red |
Removed connection point (blocks fluid) |
-
Custom connection points are shared across all instances of the same object type — if you add a point to one heat exchanger, all identical heat exchangers receive the same point
-
Connection points do not need to be directly on the object — you can place them at a distance from the symbol
-
If you remove a connection point and then disable the User-Defined Manual Block Connection Override option, AseptSoft reverts to treating the point as a normal connection and allows fluid through. The override only takes effect when the option is enabled.
ℹ️ Nice to know: A line can only connect once with another object, but it can connect to multiple objects at the same time. Also, the ending point of a line CAN connect to more than one object.
🗺️ Verifying with the Neighbours Map
After configuring mappers, you can verify the results using the Neighbours Map (formerly "Fluid Map"). Click Show Neighbours Map from the Module Ribbon → Simulations panel. This displays a diagnostic overlay showing all discovered connections. See the Neighbours Map section on the Fluidstream Simulations page for full details.
💊 Pharma Example: How Mapping Detects a WFI Spray Ball Connection
Consider a pharmaceutical WFI (Water for Injection) distribution loop feeding spray balls inside a CIP vessel. On the P&ID, a spray ball symbol is placed as a clamp-style block sitting directly on the WFI supply line:
-
Endpoint Proximity Mapping first detects that the WFI supply pipe endpoints connect to the distribution loop tee
-
Sticky Block References then detects that the spray ball clamp symbol's connection points touch the WFI branch line running into the vessel
-
Line Gap Bridging bridges any visual gaps in the branch pipe where instrument tap points create small breaks in the line
The result: a complete fluid path from the WFI source, through the distribution loop, down the branch line, and into the spray ball — all detected automatically from your drawing geometry.
🔗 Related Pages
-
Fluidstream Simulations — How fluid propagation works after the graph is built
-
Fluidstream Troubleshooting — Common problems and how to solve them
-
Fluid — Define fluid types and their visual colors
-
Sources — Fluid origin points on your P&ID
-
Engineering Items — Valves, instruments, and fittings that interact with fluid flow
-
State — Determines how each item responds to fluid
-
Symbol Editor — Defining Internal Fluid Maps and Attachment Points
-
PID Components — Component categories and classification
-
Block Valve — Complex symbols with internal flow graphs
-
First Time Setup — Initial configuration including classification and mapping