Skip to content

3D Plane Surface Profile

Operator Function

Calculate geometric tolerance - Plane Surface Profile
As shown in the figure below, calculate the distance from theoretical points to the actual plane, sort from largest to smallest, denoted as 𝑑1, 𝑑2, ..., 𝑑n. The surface profile calculation formula is:
2 × 𝑚𝑎𝑥(𝑑1, 𝑑2, ..., 𝑑n)

Parameter Introduction

Input Parameters

ParameterRangeDefault ValueDescriptionIllustration
Input Image0-310The IM number for image input
3D ReferenceYou can select a reference via binding
XX-coordinate value of the 3D reference parameter; can be set via binding to X
YY-coordinate value of the 3D reference parameter; can be set via binding to Y
ZZ-coordinate value of the 3D reference parameter; can be set via binding to Z
X-Axis Angle-10000000000.000-10000000000.000X-axis angle value of the 3D reference parameter; can be set via binding for X-Axis Angle
Y-axis angle-10000000000.000-10000000000.0003D reference parameter Y-axis angle value; can be set via binding Y-axis angle
Z-axis angle-10000000000.000-10000000000.0003D reference parameter Z-axis angle value; can be set via the Z-axis angle binding

Calculation Parameters

ParameterRangeDefault ValueDescriptionIllustration
Actual PlanePlane-A point on the actual plane and its normal vector
Theoretical Planejson file-Theoretical plane file
Fit Point Cloudtrue/falsefalseWhen enabled, the point cloud fitting function is used. The theoretical plane fits the selected point cloud as closely as possible
Use Region Parameterstrue/falsefalseEnable when fitting point cloud. When enabled, point cloud selection is activated; when disabled, the entire IM point cloud is selected
Region2D Window/2D Circular Window/2D Polygon Window/Box/Cylindrical Box/Rotated Box/Point Set (binding only)BoxManually select the point cloud to be fitted
Theoretical Plane Fitting MethodLeast Squares/RANSACLeast SquaresUse the corresponding algorithm to fit the plane
Distance Threshold0.0-50.00.02Select an appropriate distance threshold. When there are many noise points, increase this parameter; when there are few noise points, decrease it
Max Iterations100-100001000Set the maximum number of iterations

Result Display

ParameterRangeDefault ValueDescriptionIllustration
Actual Planetrue/falsefalseThe input actual plane. If enabled, displayed on IM
Theoretical Planetrue/falsefalseThe input theoretical plane. If enabled, displayed on IM
Theoretical Points to Actual Plane Perpendicular Feet and Theoretical Plane Pointstrue/falsefalseDisplays two sets of points: the input measurement points and the perpendicular feet from the measurement points to the actual plane, and the input theoretical plane points. If enabled, displayed on IM
Theoretical Points and Actual Plane Perpendicular Foot Connectionstrue/falsefalseThe connections from the input theoretical points to their perpendicular feet on the actual plane. If enabled, displayed on IM
Surface Profiletrue/falsefalseThe output surface profile. If enabled, displayed on IM

Output Parameters

NameTypeRangeDescription
Resultbooltrue/falsetrue for success
false for failure
Warningbooltrue/falsetrue indicates a warning
false indicates no warning
MessagestringOutput success, error, or warning messages. Empty if no error or warning.
TimefloatOperator execution time, unit: ms
theoretical_planeplaneDistance from measurement points to the reference plane
profile_of_surfacefloatSurface profile
resultstringOK/NGWhether the surface profile is within range

Tip

For more detailed parameter type descriptions, please refer to Type Definition

Exception Troubleshooting

No.Exception InformationCorresponding ParameterSolution
1Input point cloud is emptyConfirm whether the IM contains valid points. If not, load a point cloud or switch to an IM with valid points
2Input actual plane type is {0}, invalid plane typePlane TypeCheck if the plane type is Plane
3Input theoretical plane fitting method is {0}, invalid fitting methodFitting MethodCheck if the fitting method is Least Squares/RANSAC
4Input actual plane normal vector is invalidCheck if the plane normal vector is all zeros
5Input profile range minimum is greater than maximum, invalid profile rangeSet the profile range minimum to be less than or equal to the maximum
6Parameter {0} cannot be emptyPathCheck if the path is empty
7File {0} does not exist or cannot be accessedPathCheck if the path is valid
8Input theoretical plane point cloud is emptyCheck if the theoretical position point json file is empty
9Input region type is {0}, invalid region typeRegion TypeCheck if the region type is one of 2D Window/2D Circular Window/2D Polygon Window/Box/Cylindrical Box/Rotated Box/Point Set
10Input polygon has fewer than 3 vertices, cannot form a polygonAdd 2D polygon window vertices to make the number of vertices at least 3
11Input region point cloud is empty1. Check if the selection is empty
2. Check if the point set is empty

Example Introduction

Engineering Design

  1. Select the Load Point Cloud tool to load the 3D point cloud to be processed into IM0;

  2. Select the 3D Square Probe tool to fit the actual plane.

  3. Select the 3D Plane Surface Profile tool.

Tool Usage

  1. Select the input image to be operated on. The image number must match the IM number of the image in the project.

  2. Do not enable region parameters, or enable region and select the region type as Box. Move the box to the position to be tested, surrounding the point cloud to be tested.

Usage Tips

1. Drag or scale the box through 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
  1. Set parameters

  2. Check the desired display content in the result display section

  3. Click Test to check if the image window and parameters meet expectations

  4. If there are no issues, click Save. Run the operator in the run list to view the running results in the corresponding IM.

Local ImageLocal Image

Vision Studio