Skip to main content

Collision Detection

The Collision Detection tool identifies and visualizes intersecting regions between two surface objects. This analysis is essential for assembly verification, interference checking, and ensuring components fit together properly without unwanted overlaps.

Overview

Collision detection examines two surfaces and identifies triangles that intersect or come within a specified tolerance of each other. The results are displayed by highlighting the colliding triangles, providing immediate visual feedback about interference locations.

Common applications include:

  • Assembly verification: Checking that parts fit together without interference
  • Clearance analysis: Verifying minimum gaps between components
  • Design validation: Ensuring modeled parts don't overlap unintentionally
  • Motion analysis: Checking for collisions during simulated movement
  • Quality control: Identifying manufacturing deviations that cause interference

Accessing the Tool

Navigate to the Surface ribbon tab and locate Collision Detection in the Analyze section. At least two surface objects must be present in the workspace to use this tool.

Surface Selection

Input 1

Select the first surface for collision testing from the dropdown menu. All available surface objects in the project are listed.

Input 2

Select the second surface for collision testing. This should be different from Input 1 to detect collisions between distinct objects.

Note: While you can technically select the same surface for both inputs to detect self-intersections, the tool is primarily designed for inter-object collision detection. Use the Diagnostics and Fixes tool for dedicated self-intersection analysis.

Parameters

Tolerance

The tolerance parameter (in mm) controls the sensitivity of the collision detection:

ToleranceBehavior
0.0Only actual geometric intersections are detected
Small positiveDetects near-misses where surfaces come close but don't touch
Larger valuesIncreases the collision envelope; more triangles may be flagged

Default value: 1.5 mm

When to use different tolerances:

  • Tight tolerance (0.0 - 0.5 mm): Precision assembly, exact interference detection
  • Medium tolerance (0.5 - 2.0 mm): General assembly checking with manufacturing tolerances
  • Larger tolerance (2.0+ mm): Clearance verification, safety margin checking

Visualization

When collisions are detected, the intersecting triangles are highlighted on both surfaces:

  • Colliding regions: Displayed with a distinct highlight color
  • Non-colliding regions: Displayed with normal surface rendering

This visual feedback allows you to:

  • Quickly locate interference areas
  • Assess the extent of collisions
  • Identify specific problematic regions

Click Update to recalculate collision detection after changing parameters or modifying surface positions.

Practical Applications

Assembly Fit Verification

Before manufacturing or 3D printing assembly components:

  1. Position both parts in their assembled configuration
  2. Select each part as Input 1 and Input 2
  3. Set tolerance based on manufacturing precision
  4. Run collision detection
  5. Highlighted regions indicate design conflicts

Clearance Analysis

To verify minimum clearances between parts:

  1. Set tolerance to the required minimum clearance
  2. Run collision detection
  3. Any highlighted regions violate the clearance requirement
  4. Adjust designs until no collisions are detected at the specified tolerance

Iterative Design Refinement

During design iteration:

  1. Run collision detection after each design change
  2. Use the visual feedback to guide modifications
  3. Repeat until all interferences are resolved
  4. Document final clearance verification

Motion Path Analysis

For parts that move relative to each other:

  1. Position parts at various points along the motion path
  2. Run collision detection at each position
  3. Identify any positions where interference occurs
  4. Modify designs to ensure clearance throughout the motion range

Technical Considerations

Algorithm

The collision detection uses spatial acceleration structures (typically bounding volume hierarchies) to efficiently test triangle pairs for intersection. The algorithm:

  1. Builds spatial index for each surface
  2. Identifies potentially colliding triangle pairs using broad-phase testing
  3. Performs precise triangle-triangle intersection tests
  4. Expands collision detection by tolerance margin

Tolerance Implementation

The tolerance creates an expanded collision envelope:

  • Triangles are tested as if they were slightly larger by the tolerance amount
  • This catches near-misses and provides a safety margin
  • Higher tolerances increase computation but catch more potential issues

Performance

Collision detection performance depends on:

  • Surface complexity: More triangles require more tests
  • Spatial proximity: Nearby surfaces require more detailed testing
  • Tolerance value: Larger tolerances may increase detected pairs

For complex surfaces, initial detection may take several seconds. Subsequent updates are often faster due to caching.

Limitations

  • Static analysis: The tool checks current positions only; it doesn't analyze motion
  • Triangle-level: Results are at triangle granularity, not sub-triangle precision
  • Binary result: Triangles are either colliding or not; penetration depth is not reported

Workflow Recommendations

Systematic Assembly Checking

For assemblies with multiple parts:

  1. Check pairs of adjacent parts systematically
  2. Document collision-free results
  3. Address any detected collisions before proceeding
  4. Re-verify after design changes

Tolerance Selection Strategy

  1. Start with zero tolerance to detect actual intersections
  2. If none found, increase tolerance to check clearances
  3. Use tolerance values matching manufacturing tolerances
  4. Document the tolerance used for traceability

Resolving Detected Collisions

When collisions are detected:

  1. Identify the collision location from the visualization
  2. Determine which part should be modified
  3. Use editing tools (Cut, Boolean, etc.) to resolve
  4. Re-run collision detection to verify resolution

Common Issues and Solutions

IssueLikely CauseSolution
No collisions detectedParts don't actually intersectVerify part positions; reduce tolerance if checking clearances
Too many collisionsTolerance too highReduce tolerance value
Detection is slowVery complex surfacesReduce mesh complexity if possible
Same triangles always highlightedStatic collisionParts need to be repositioned or redesigned
Unexpected collision regionsTolerance expanding collision envelopeReduce tolerance for precise intersection detection