3D Line-Plane Parallelism
Operator Function
Calculate the geometric tolerance - line-plane parallelism
As shown in the figure below, compute the perpendicular distance 𝑑1, 𝑑2, …, 𝑑n from each measurement point on the measured plane to the datum axis. The parallelism is:
𝑑𝑚𝑎𝑥 − 𝑑𝑚𝑖𝑛
where
𝑑𝑚𝑎𝑥 = 𝑚𝑎𝑥(𝑑1, 𝑑2, …, 𝑑n)
𝑑𝑚𝑖𝑛 = min(𝑑1, 𝑑2, …, 𝑑n)
Parameters
Input Parameters

| Parameter | Range | Default | Description | Diagram |
|---|---|---|---|---|
| Input Image | 0-8 | 0 | IM index of the input image | ![]() |
Calculation Parameters

| Parameter | Range | Default | Description | Diagram |
|---|---|---|---|---|
| Actual Plane | Plane | - | A point on the actual plane and its normal vector | |
| Datum Line | 3D Line | - | A point on the datum line and its direction vector | |
| Measurement Point File | json file | - | Measurement point file on the measured plane | |
| Use Region Parameter | true/false | false | When enabled, use Region as input; when disabled, use Input Image as input | |
| Region | 2D Window / 2D Circular Window / 2D Polygon Window / Box / Cylinder Box / Rotated Box / Point Set (binding only) | Box | Manually select a suitable ROI regionYou can select an existing ROI region by binding | |
| Auxiliary Vector | 3D Vector | - | A vector not parallel to the line, used to assist in obtaining the normal vector |
Result Display

| Parameter | Range | Default | Description | Diagram |
|---|---|---|---|---|
| Actual Plane | true/false | false | The input actual plane; when enabled, displayed on the IM | |
| Datum Line | true/false | false | The input datum line; when enabled, displayed on the IM | |
| Intersection Points | true/false | false | Display two sets of points: the input measurement points and the feet of perpendicular from the measurement points to the actual plane; when enabled, displayed on the IM | |
| Lines Connecting Measurement Points and Their Feet on the Fitted Datum Plane | true/false | false | The lines connecting the feet of perpendicular from the input measurement points to the actual plane; when enabled, displayed on the IM | |
| Parallelism | true/false | false | The output parallelism; when enabled, displayed on the IM |
Output Parameters

| Name | Type | Range | Description |
|---|---|---|---|
| Result | bool | true/false | true for success false for failure |
| Warning | bool | true/false | true indicates a warning false indicates none |
| Message | string | Output success, error, or warning message; empty if no error or warning | |
| Time | float | Operator execution time, unit: ms | |
| distance | float[] | Distance from measurement points to the reference plane | |
| parallelism | float | Parallelism | |
| result | string | OK/NG | Whether the parallelism is within range |
Tip
For more details on parameter types, please refer to Type Definition
Troubleshooting
| No. | Exception Message | Corresponding Parameter | Solution |
|---|---|---|---|
| 1 | Input point cloud is empty | Confirm whether the IM contains valid points. If no valid point exists, load the point cloud or switch to an IM with valid points | |
| 2 | The type of the input actual plane is {0}, an invalid plane type | Plane Type | Check whether the plane type is a plane |
| 3 | The normal vector of the input plane is 0 | Check whether the plane normal vector is all zeros | |
| 4 | The minimum value of the input parallelism range is greater than the maximum, an invalid parallelism range | Set the minimum of the parallelism range to be less than or equal to the maximum | |
| 5 | Parameter {0} cannot be empty | Path | Check whether the path is empty |
| 6 | File {0} does not exist or cannot be accessed | Path | Check whether the path is valid |
| 7 | The input theoretical position point cloud is empty | Check whether the theoretical position point json file is empty | |
| 8 | The type of the input datum line is {0}, an invalid datum line type | Datum Line Type | Check whether the datum line type is a 3D Line |
| 9 | The input region type is {0}, an invalid region type | Region Type | Check whether the region type is one of 2D Window / 2D Circular Window / 2D Polygon Window / Box / Cylinder Box / Rotated Box / Point Set |
| 10 | The number of polygon vertices is less than 3, cannot form a polygon | Add 2D polygon window vertices so that the number of vertices is at least three | |
| 11 | The input region point cloud is empty | 1. Check whether the selection is empty 2. Check whether the point set is empty |
Examples
Engineering Setup
Select the
Load Point Cloudtool to load the 3D point cloud to be processed into IM0;Select the
3D Square Probetool to fit the actual plane.Select the
3D Square Probetool to fit the datum line.Select the
3D Line-Plane Parallelismtool.
Tool Usage
Select the input image to be operated on; the image index must match the IM index of the image in the project.
Either disable the use-region parameter, or enable the region and select the region type as Box, then move the box to the position to be measured so that it encloses the point cloud to be measured.
Usage Tips
1. Drag or scale the box via the ROI controller on the image window;
2. Directly modify the start or end coordinates of the box in the calculation parameters to adjust the box position and size
Set the parameters.
Check the items to be displayed in the Result Display panel.
Click
Testto check whether the image window and parameters meet expectations.After confirming there are no problems, click
Save, then run the operator in the run list to view the running result in the corresponding IM.


