# LineFromLinesOnPlane3D

The LineFromLinesOnPlane3D function Functions are tools that are available in Spreadsheet for processing and analyzing acquisitions or other results. You can add functions to your Spreadsheet job to create tool chains and produce results for specific applications. is used to construct a line segment between two Line3D structures, based on their projections on the specified Plane3D structure. The constructed line is returned as a Line3D structure.

Inputs

The LineFromLinesOnPlane3D function has the following syntax:

LineFromLinesOnPlane3D(PointCloud A point cloud is a 3D structure that consists of the data points collected by a 3D vision system during acquisition.,Line3D0,ExternalLine0,Line3D1,ExternalLine1,Plane3D0,ExternalPlane0,Show)

See the table for a description of the available parameters.

Parameter | Description
PointCloud | Reference to a cell containing a point cloud A point cloud is a 3D structure that consists of the data points collected by a 3D vision system during acquisition.. The default value is $A$0.
Line3D 0 | Specifies the offsets of the first 3D line structure to use. It is offset from the PointCloud origin in the following format with the following arguments: {X0, Y0, Z0, X1, Y1, Z1}
X0 | Offset of the 3D line's starting point on the X-axis from the PointCloud origin.
Y0 | Offset of the 3D line's starting point on the Y-axis from the PointCloud origin.
Z0 | Offset of the 3D line's starting point on the Z-axis from the PointCloud origin.
X1 | Offset of the 3D line's ending point on the X-axis from the PointCloud origin.
Y1 | Offset of the 3D line's ending point on the Y-axis from the PointCloud origin.
Z1 | Offset of the 3D line's ending point on the Z-axis from the PointCloud origin.
Note: This parameter is available only if External Line 0 is set to 0.
External Line 0 | Specifies a reference to a Line3D structure defined in another cell to be used by the function as the first line. Set to 0 (OFF) to use the function's internal Line3D structure instead.
Line3D 1 | Specifies the offsets of the second 3D line structure to use. It is offset from the PointCloud origin in the following format with the following arguments: {X0, Y0, Z0, X1, Y1, Z1}
X0 | Offset of the 3D line's starting point on the X-axis from the PointCloud origin.
Y0 | Offset of the 3D line's starting point on the Y-axis from the PointCloud origin.
Z0 | Offset of the 3D line's starting point on the Z-axis from the PointCloud origin.
X1 | Offset of the 3D line's ending point on the X-axis from the PointCloud origin.
Y1 | Offset of the 3D line's ending point on the Y-axis from the PointCloud origin.
Z1 | Offset of the 3D line's ending point on the Z-axis from the PointCloud origin.
Note: This parameter is available only if External Line 1 is set to 0.
External Line 1 | Specifies a reference to a Line3D structure defined in another cell to be used by the function as the second line. Set to 0 (OFF) to use the function's internal Line3D structure instead.
Plane3D | Specifies the offset and the angle of the plane to use. It is offset from the PointCloud origin in the following format with the following arguments: {X, Y, Z, Tilt, TiltDirection}
X | Offset on the X-axis from the PointCloud origin.
Y | Offset on the Y-axis from the PointCloud origin.
Z | Offset on the Z-axis from the PointCloud origin.
Tilt | Specifies the tilt angle (in degrees) from the PointCloud Z-axis. The value range is 0-180. External references with values outside the allowed range will result in an error.
Tilt Direction | Specifies the direction of tilt (in degrees) from the plane's rotated PointCloud X-axis, about the tool's PointCloud Z-axis. The value range is -360 - 360. External references with values outside the allowed range will be normalized to the allowed range.
Note: This parameter is available only if External Plane is set to 0. Note: You can use Plane3D to mask data for training. The Plane3D function prevents the tool from taking any points that belong to that plane and are within the ROI.
External Plane | Specifies a reference to a Rectangle3D or Circle3D structure defined in another cell to be used by the function. Set to 0 (OFF) to use the function's internal Plane3D structure instead.
Show | Selects the type of graphics to overlay on the image.
0 = hide all (default) | All graphics are hidden, except when the cell containing the function is highlighted in the spreadsheet.
1 = result graphics only | The result graphics of the function are displayed at all times.
2 = input and result graphics | The region of interest, the input data and the results are displayed at all times.

Outputs

Returns | A Line3D data structure as the projected 3D line, or #ERR if any of the input parameters are invalid.
Results | When initially inserted into a cell, the following functions are automatically inserted into the spreadsheet to create a result table.
| X0 | Y0 | Z0 | X1 | Y1 | Z1
❒Line3D | GetX(Line3D, 0) | GetY(Line3D, 0) | GetZ(Line3D, 0) | GetX(Line3D, 1) | GetY(Line3D, 1) | GetZ(Line3D, 1)

Vision Data Access functions

The following Structures 3D Vision Data Access functions are automatically inserted into the spreadsheet to create the result table:

Function | Description
GetX(Line3D, index) | Returns the X-axis coordinate of the 3D line point specified with the index. An index value of 0 indicates the first endpoint of the line, while a value of 1 indicates its second endpoint.
GetY(Line3D, index) | Returns the Y-axis coordinate of the 3D line point specified with the index. An index value of 0 indicates the first endpoint of the line, while a value of 1 indicates its second endpoint.
GetZ(Line3D, index) | Returns the Z-axis coordinate of the 3D line point specified with the index. An index value of 0 indicates the first endpoint of the line, while a value of 1 indicates its second endpoint.