Face Analyzer Command
Command Licensing and Default Menu Location
- The Face Analyzer command is part of the RPS Tool Shed Toolbox
- The command is located on the Tool Shed macros menu ribbon
- The command is located in the QA Point Clouds menu group
Command Description
*The Face Analyzer command is a QA tool that provides the ability to compare measured point cloud or point data to 3D surface models or geolocated 3D faces / polygons in any orientation extracted from 3D solid objects (IFC Shells, Solids) or for structures like bridges, walls, piers etc. to determine the quality of construction or to the faces of a 3D surface model.
The command creates push pins perpendicular to the faces of the structure / surface that indicate the points in / out of tolerance using a color map schema (Green is In tolerance, Orange is close to tolerance, Red or Blue shades are Out of tolerance High or Low / Inside or Outside the face).
The tool also creates projected planes for each face analyzed and projects the point cloud or point data into the projected plane to show a color coded image (of push pin results) along with statistical analysis information that gives you the QA results needed for approvals and sign off. The graphical reports, results tables and color legend are created fully automatically.
Bridge Wing Wall Analysis
The projected point data is now in a planar coordinate system and can be modeled using surface modeling techniques and that surface can be analyzed against a surface model made from the projected plane to carry out surface to surface comparisons.
Latest Updates
September 21st 2022:
The command has been updated to allow the Default Point Cloud Region to be selected. In addition we added some error checking for triangles in surface models that fail the TBC plane definition (e.g. 3 points in a straight line would pass as a triangle face but fail as a 3D planar surface). These changes result in improved performance and the ability to execute in more data scenarios.
Command Prerequisites
You will need to use the RPS Explode Solids command to create the 3D face data that you require for the analysis in this command. This will convert the faces of the solids into closed polygon faces that can be used for this analysis.
You may also want to run the Point Cloud Processor command on Point Clouds prior to running this command on the point cloud. Working on smaller point cloud data sets will execute more quickly, especially when you are analyzing on small grid spacings.
Face and Point Cloud Region Preparation:
The training video for the command (at the base of this document) walks through the best way to prepare the face data and point cloud data for use in the command. The main steps are as follows
- If you are working with vertical solid objects e.g. a set of Bridge Wingwalls, You need to extract the face or faces of each solid object that you want to analyze. You can explode the solid into Faces using the Explode Solids command from the Data Prep Toolbox.
- Separate the faces that you want to work with onto a separate Layer and in a defined Layer Group in TBC.
- If you are comparing point cloud data with the 3D faces then you should create point cloud regions for each face being analyzed - be aware that if you have scanned both the front face and back face of an object, that you will need to separate the front face scan data from the back face scan data, depending on how far apart the front and back faces of the object are apart and how that distance relates to the tolerances that you define in the command.
- The name of the 3D Face and the name of the Point Cloud Region should match exactly i.e. if you have faces called Wing Wall 1, Wing Wall 2, Wing Wall 3, Wing Wall 4 etc. then you should have corresponding point cloud regions with the same names.
- Because the face objects may have different origin (line start points) and start bearing (between node 1 and node 2 on the face line) the orientation of each face in the projected drawings that are created may not be laid out or oriented as you want them. Because of this we have added the ability to create an Axes definition line to solve this (see the next point).
- The axes definition line can be on the same layer or on a different layer to the 3D faces. The axis definition line should have the same name as the corresponding face and point cloud with an extension “XY” i.e. Wing Wall 1 would have Wing Wall 1 XY for its axes definition. The line can be 2 or 3 nodes. Node 1 is the point on the face that you want to use as the origin point in the drawing. Node 2 is used to define the direction of the X axis in the projection drawings. The third point is used to define the Y axis of the projection drawing. For example if you have a roof that you scanned and want to project, pick the lower left corner as node 1, the lower right corner as node 2 and any point on the roof ridge line as node 3. This creates a sloping plane that follows the roof slope that is your projection plane for the drawing output. If you have a Wing Wall that is vertical, the first node is the lower left corner, the second node is the lower right corner and the third point is not needed because the plane is vertical. Note that if node 3 is above the line between points 1 and 2 on a vertical face, then the positive Z axis is into the screen. If node 3 is drawn below the line between node 1 and 2 then the positive Z axis is out of the screen towards you. When you apply a color map you can decide which color represents points behind the plane or in front of the plane defined by the face.
In the above drawing the dark blue lines are the axis definition lines, the red faces are the planar faces for the analysis. By adding these lines, the drawing layout is fully under your own control. In the results created in the above example, the positive Z axis is into the screen as indicated by the 3 axis indicator drawn at the origin point for each face being analyzed.
Command Interface Description
The Face Analyzer command dialog looks as follows
Points / Point Cloud:
Select the points or Point cloud region that you want to analyze against the selected faces of your model.
You now have the choice whether you are comparing the points to 3D faces or to a surface model. Select the option required by clicking the appropriate Radio button.
Faces layer:
Select this option to compare points / point clouds with 3D face objects. Select the layer on which the faces that you want to analyze are located.
Note: the face names should match the point cloud region names when you are selecting multiple faces for analysis in one execution. The application uses the matching names to compare the correct point cloud region with the correct face in the model. If you select a set of 3D points and a set of 3D faces, the application will work out which points belong to which of the selected faces for the analysis.
Surface:
Select this option to compare points / point clouds with a 3D TIN surface model. Select the surface to which you want to compare the points from the pull down list.
Outside face tolerance:
When working with 3D faces, the selected points or point cloud data are compared to the face. You can ignore point data that falls outside the area of the face in question by more than a defined tolerance.
Enter the tolerance value at which you wish to automatically exclude selected points from the analysis i.e. points that are further from the face limits (outside the bounds of the face) than the entered tolerance will be ignored in the analysis.
Off face tolerance:
When working with 3D faces, the selected points or point cloud data are compared to the face. You can ignore point data that falls too far away from the face (inside / outside or above / below the face in question by more than a defined tolerance.
Enter the tolerance value at which you wish to automatically exclude points from the analysis i.e. points that are further than the tolerance from the face in terms of offset from the face (in front of or behind the selected face) will be ignored in the analysis.
Use point bin checkbox:
The analysis of a point cloud uses a binning technique that groups points from the selected points / point cloud into grid squares of the defined size and then analyzes the points in each bin to determine the worst point in each bin (the point with the maximum error) and utilizes that point only in the analysis.
If you leave this checkbox unchecked, every point selected including all points in the source point cloud regions will be analyzed - note that with large point clouds this can take a while to run the analysis.
The worst case point is utilized at the centroid of the BIN grid cell. Note that if you have points along the edge of a face, the centroid of the bin grid cell may be outside the face. This can generate “push pins” that lie outside the face and in some cases these may be further from the face than the Outside Face tolerance defined earlier.
Bin size:
If you check the Use point bin checkbox, then enter the bin size. The bin size is the side of a square computed in the plane of the selected faces. The bin definition is computed in the plane of the face.
Plot projected plane checkbox:
The command will create error pins in the 3D model as one output and the second output option is to create projected planes. If you enable this checkbox, the plane is recomputed and drawn in the XY plane of the plan view, all of the selected points are then also projected into that same plane so that the Z value for each point is the offset from the plane. The points are color coded using the color settings (see below). The points and or the projected plane can be computed into surface models, they can be contoured or just plotted for QA documentation purposes. Multiple projected planes are created, one for each selected face of the model. The faces are laid out from a start location and with a spacing that you define next.
The projected planes will also have a statistical analysis computed, the results of which will be drawn as a data table below the projected plane drawings.
A detailed analysis for all points is also computed and displayed in the command dialog report area. If you wish to copy any of the data in the report area you can copy it to your Windows clipboard and then use the RPS Paste command to place it on the plan view or sheet view drawings, you can also paste it into a Word document or Notepad etc.
Define the layer onto which you want to place the projected plane data. The default layer name is the source faces layer name ({L}) with a suffix of " - Projected"
**Plot projection axis
The axes (X,Y and Z) of the projected plane can be drawn at the origin location for each face in the 3D model space and in the projected plane drawings that are generated.
Check the check box to enable this function and then define the layer name for those axes drawing / model elements. The default layer will be the source faces layer name ({L}) followed by " - Axis"
Location:
The location is the XY location in the plan view at which you want to draw the first face as a projection plane. The second face projection plane is drawn at the same Y value but is spaced from the maximum coordinate of the first face based on the spacing setting below.
Spacing:
The spacing is the gap between the faces that you want for the layout of the projected planes that are created. The gap is the X spacing between the max X coordinate of the first or previous face and the one to be created. The spacing is also used to separate the projected plane drawing and the data table for that projected plane.
Plot table checkbox:
If you require the statistical analysis table for the projected plane, check this checkbox. The Text Styles that are used for the Table are defined in RPS Settings - Table Settings. You can define a text style for the Table Title, Column Headers and Table Content. Typically use a larger / bolder text style for the Title, a slightly smaller one for the Header and a smaller one with no Bold and maybe italics for the content. Title and Column Header text styles are center justified and Row Headers are left justified. Content text styles are typically left justified.
Check the check box to enable this function and then define the layer name for those table drawing elements. The default layer will be the source faces layer name ({L}) followed by " - Table"
Plot legend checkbox:
The command will use the color mapping defined below to generate a color legend indicating the range of values for the points or 3D push pins. The legend is placed first before the projected planes, and has a layer, a width and height setting (defined below).
When checked, select the layer for the legend to be drawn on. The default is the name of the source faces layer ({L}) with the extension “- Legend”.
Legend width:
When Plot legend is enabled, enter the legend width. The legend width is from the left edge of the legend text (on the left side) to the edge of the legend color box on the right side.
Legend height:
When Plot legend is enabled, enter the legend height. The legend height is from the bottom edge of the legend color box at the base to the top of the Legend Title text at the top.
Scale / Change plot scale:
If the text styles that you have defined for the table text are defined in Sheet units, then the height of that text in the plan view is defined by the sheet unit size x plot scale (usually defined in Project Settings - Display - Plan View). The current project setting for Plan View scale is shown here (For Metric users the value shown e.g. 50 means 1:50 scale i.e. 1mm = 50mm, for US Feet or International Feet users the value means 1" = 50’ i.e. 1:600 scale). If you wish to change the Plan View scale click Change plot scale to change the value.
If your text height is 3mm or 0.08’ Sheet Units and your plan scale is 50 then your text height in the table drawn in the plan view would be 150mm or 4’. Because you will be plotting what may be relatively small faces, you likely do not want to have a large scale number to keep your text size and therefore your data table to a reasonable size.
Plot error vectors checkbox:
The analysis places small vector lines between the selected points and the point on the face / surface where the normal to the target face / surface triangle passes through the selected faces / triangles. Checking this checkbox enables the creation of the error pins. Two lines can be created - the line between the point and the face is drawn at the selected layers lineweight and then an optional extension vector indicator pin is drawn at unit lineweight to highlight the vector location (especially useful for short vectors). The pins that are created are color coded based on the color settings (see below).
Plot vector indicators checkbox:
Check this checkbox to create the vector indicator lines in addition to the error vector pins.
The default layer for the Error vectors is the source faces layer ({L}) with the extension " - Vectors"
The default layer for the Error vector indicators is the source faces layer ({L}) with the extension " - Indicators"
Edit colors:
The edit colors control allows you to create a color coding for the error pins and projected plane point data. In a normal QA process, you will have the error tolerance for the points in terms of an offset from the face in the Up / Back or Down / In directions.
For QA reporting, we recommend that you color code In Tolerance, Near Tolerance and Out of Tolerance Bands for color mapping purposes. In this way it is clear where you are meeting your tolerances, where you are close to meeting your tolerances and where you are not meeting your tolerances at all. You can set as many color bands within each group that you require - the root color is split into variants of that root color automatically based on the number of bands that you define.
Recommended color settings
- In Tolerance = Green
- Near Tolerance = Orange
- Out of Tolerance High / Inside = Red
- Out of Tolerance Low / Outside = Blue
For each color band you can specify the root color, band width and the number of bands e.g. for Out of Tolerance High you can select a root color like Red, specify that you want 5 bands of equal bandwidth 0.05’ making a total of 0.25’ from the origin.
Note that the bands for High and Low Tolerance are computed from the origin. The In Tolerance band is computed from the origin. The Near Tolerance Band is computed from the top of the In Tolerance Band. The first High and Low Tolerance bands will be partly or fully taken up by the In Tolerance or Near tolerance bands depending on the bandwidths defined for those values.
i.e. If we define +/-0.05 for In tolerance and +/-0.05 for Near tolerance (both with a single band width), then In Tolerance will span from -0.05 to +0…05. The Near tolerance on the high side will span from 0.05 to 0.1 and on the low side from -0.05 to -0.1. The Out of Tolerance High and Low may be set to 0.2 and 5 bands so the first band will be limited to 0.1 to 0.2 and then the subsequent bands will go from 0.2 to 0.4, 0.4 to 0.6, 0.6 to 0.8, 0.8 to 1.0 and the same on the low side but with negative values.
The high and low tolerance bands will be color coded with varying shades of the root color from light to dark as you get further from the origin.
The Origin value is normally set to 0 but can be offset from 0 if required. All tolerance values entered are referenced from the origin whether it be at 0 or at a value biased on the high or low side.
Header bar commands
In the header bar of the command dialog you will find quick access to commands that you may need to use while working with this command. Header bar commands include the following
- Command Help
- RPS Settings
- Text Style Manager
- New Layer
- Create Point Cloud Region
- Add to Point Cloud Region
- Create Surface
- Add and remove Surface Members
- Create Quick Contours
- Edit Color Mapping (for surface models)
Command tips
At the base of the command dialog you will find command tips that may assist you in the processing of this type of data. It also provides you with quick access to this help document and video. The command tips can be minimized using the orange arrow selector control.
Apply
When you tap apply, the face analysis will be executed, the error pins and projected planes will be created and the command will ready itself for another selection set and repeat process execution. If you do not want to make a second selection and repeat the process tap Close to finish the process.
Close
Closes the command without further execution.
Video Demonstration
The following video shows how to utilize the Face Analyzer command with 3D face data.
The following video shows how to use the command with 3D Surface Models
Use Case Videos
The following videos show the use of the Face Analyzer command in a work process context
Feedback and Enhancement Requests
If you would like to provide feedback on the use of the Face Analyzer command or to request enhancements or improvements to the command please click Reply below.