Automated Revision Detection
In the engineering and design workflow, clients frequently submit revised 3D models, often without specific documentation regarding what has been altered. This turns the review process into a high-stakes game of “Spot the Differences,” where missing a subtle change—such as a shifted mounting hole or a shortened beam—can lead to costly production errors. Relying on the human eye to detect these modifications in complex assemblies is both time-consuming and prone to oversight.
To address this, I developed a custom Python script for Rhinoceros that completely automates the change detection process. Upon execution, the tool scans a selected directory, identifies files marked as _OLD and _NEW, and imports them into dedicated layers with specific transparency settings. Internally, the script normalizes the geometry by exploding blocks and converting surfaces into dense meshes. It then performs a bi-directional vertex analysis, mathematically comparing the physical position of every point in the old model against the new one based on a user-defined tolerance.
The result is a clear, visual diagnostic of the revision. Rather than simply overlaying shapes, the script generates high-contrast point clouds that isolate the specific differences. Geometry that exists only in the old version is highlighted (e.g., in Red) to show what was removed, while geometry found only in the new version is highlighted (e.g., in Gold) to show what was added. This allows the user to instantly identify and verify modifications, ensuring that every geometric deviation is accounted for before the project moves to the next stage.
1. INITIALIZATION
User Input: Defines tolerance threshold (mm).
File Scan: Auto-detects _OLD / _NEW extensions in selected folder.
Import: Routes geometry to dedicated layers.
2. GEOMETRY PREP
Visualization: Applies ARGB transparency (50% Alpha) for visual overlay.
Normalization: Explodes blocks; forces properties to “By Layer”.
Meshing: Converts surfaces to dense meshes for analysis.
3. COMPARISON LOGIC
Algorithm: Bi-directional vertex distance check.
Criteria: Deviations > tolerance identified as changes.
4. OUTPUT GENERATION
Layers: Creates specific result layers (_RES_OLD, _RES_NEW).
Format: Generates Point Clouds highlighting added vs. removed geometry.
Reporting: Displays execution time and change statistics.