The SCloud class provides point cloud manipulation.
The SCloud creation can be done by calling the static functions:
.
More...
Public Types | |
enum | BestRectangleForce { NO_FORCE , FORCE_NORMAL , FORCE_PLANE , FORCE_MAIN_DIRECTION , FORCE_LENGTH , FORCE_WIDTH , FORCE_SQUARE , FORCE_IN_BEST_PLANE , FORCE_CENTER } |
How the best square slot is forced. More... | |
enum | CircleEnum { CIRCLE_FORCE_NOTHING , CIRCLE_FORCE_RADIUS , CIRCLE_FORCE_CENTER , CIRCLE_FORCE_NORMAL } |
Bit mask to know which parameter(s) are forced and do not need to be computed. More... | |
enum | CloudRepresentationTypeEnum { CLOUD_FLAT , CLOUD_SMOOTH , CLOUD_SMOOTH_BACK , CLOUD_COLORED , CLOUD_INSPECTION , CLOUD_SURFACIC , CLOUD_CLASSIFICATION , CLOUD_DEBUG_SPLATTING_SMOOTH , CLOUD_DEBUG_SPLATTING_COLORED } |
The different representation types for clouds. Use SCloud.FLAT. More... | |
enum | CloudScriptTypesEnum { _3PI , _3PI_TRANSF , ASC_ESRI , ASC_SCAN , CSV_ASCII , CSV_CSLM , GSN_TRANF , AUTO_DETECT } |
The set of possible files to load. The FromFile() function requires to specify extension type for specific formats. If it's not a specific format as described below use SCloud.AUTO_DETECT. More... | |
enum | CylinderEnum { CYL_FORCE_NOTHING , CYL_FORCE_RADIUS , CYL_INIT_RADIUS , CYL_FORCE_CENTER , CYL_INIT_CENTER , CYL_FORCE_DIRECTION , CYL_INIT_DIRECTION } |
Bit mask to know which parameter(s) are forced and do not need to be computed. More... | |
enum | FillCloudEnum { FILL_ALL , FILL_IN_ONLY , FILL_OUT_ONLY , FILL_NONE } |
Bit mask to know which cloud(s) should be filled when separated from a feature or calculating a best feature. More... | |
enum | LineEnum { LINE_FORCE_NOTHING , LINE_FORCE_POINT , LINE_FORCE_DIRECTION } |
Bit mask to know which parameter(s) are forced and do not need to be computed. More... | |
enum | MethodBestCircleEnum { BEST_CIRCLE , BEST_CIRCULARITY } |
enum | MethodBestSqSlotEnum { BEST_SQ_SLOT } |
method to measure the slot (best, inner, outer) More... | |
enum class | OutputCloudsTypeClippPlanesEnum { Clipped , Unclipped , Both } |
enum class | OutputCloudsTypeInspectionValuesEnum { Inside , Outside , Both } |
enum | PlaneEnum { PLANE_FORCE_NOTHING , PLANE_FORCE_POINT , PLANE_FORCE_NORMAL } |
Bit mask to know which parameter(s) are forced and do not need to be computed. More... | |
enum | SphereEnum { SPHERE_FORCE_NOTHING , SPHERE_FORCE_RADIUS , SPHERE_FORCE_CENTER } |
Bit mask to know which parameter(s) are forced and do not need to be computed. More... | |
Public Types inherited from SComp | |
enum | RepresentationTypeEnum { SMOOTH , FLAT , WIRE , SMOOTH_WIRE , FLAT_WIRE , SMOOTH_ROTWIRE , FLAT_ROTWIRE , TEXTURE , INSPECTION } |
The different representation types for inherited classes. Use (inherited class).SMOOTH. Example: for a cloud, use SCloud.SMOOTH. More... | |
Public Slots | |
AddPoint (SPoint PointToAdd) | |
Add a new point to the cloud. More... | |
static Array | All (Number VisCrit) |
To get all the SComp in the document. More... | |
Array | BestCircle (MethodBestCircleEnum Method, Number NbPointElim, CircleEnum Force, SPoint iCenter={}, SVector Normal={}, Number Radius, FillCloudEnum fillCloud) |
Calculates the best circle fitting with the cloud in the mean squares sense. Best fit with all the points. More... | |
Array | BestCone (FillCloudEnum fillCloud, Number nbPointsElim) |
Calculates the best cone fitting with the cloud. More... | |
Array | BestCylinder (Number NbPointElim, CylinderEnum Force, SPoint iCenter={}, SVector DirectionVector={}, Number Radius, FillCloudEnum fillCloud) |
Initialise a slot using the best slot extracted from a cloud (inner, outer...) More... | |
Array | BestLine (Number NbPointElim, LineEnum Force, SPoint iAveragePoint={}, SVector DirectionVector={}, FillCloudEnum fillCloud) |
Calculates the best line fitting with the cloud. More... | |
Array | BestPlane (Number NbPointElim, PlaneEnum Force, SPoint iPtToForce={}, SVector DirectionToForce={}, FillCloudEnum fillCloud) |
Calculates the best plane fitting with all points from the cloud. More... | |
Array | BestSphere (Number NbPointElim, SphereEnum Force, SPoint iCenter={}, Number Radius, FillCloudEnum fillCloud) |
Calculates the best sphere fitting with the cloud. More... | |
Array | BestSqSlot (MethodBestSqSlotEnum method, Number NbPointElim, BestRectangleForce Force, SPoint iCenter={}, SVector Normal={}, SVector MainDirection={}, Number Length, Number Width, FillCloudEnum fillCloud) |
Calculates the best square slot fitting with the cloud. More... | |
Array | Chain (Number ChainingDist) |
Chains the current point cloud and creates the shortest SMultiline(s). More... | |
static Array | Classify (Array< SCloud > iClouds, String iModelName) |
Classify the point clouds using a trained model. More... | |
Array | CleanFeatureOrientation (SComp FeatureType, Number Angle, Number DistanceTolerance, Boolean useEstimatedDirection, FillCloudEnum fillCloud) |
Gets all the points found to be scanned (or estimated) with an angle to the feature normal lower than a threshold. More... | |
Array | CleanPolyOrientation (SPoly Polyhedron, Number Angle, Number DistanceTolerance, Boolean useEstimatedDirection, Boolean checkForThinParts, FillCloudEnum fillCloud) |
Gets all the points found inside (or outside) a SPoly. More... | |
Array | CleanWithLocalNormal (Number Angle, FillCloudEnum fillCloud) |
Cleans the cloud according to the angle between: . More... | |
Clear () | |
To deallocate memory of the object. More... | |
Array | ClosestPoint (SPoint iInputPt, SPoint CenterPt, Number Distance) |
Finds the point in the current cloud that is the closest from an input point and optionally inside a sphere. More... | |
static Array | ColorAlongDir (Array< SCloud > Clouds, SVector DirectionVect, SPoint iOrigin) |
Color the clouds along a direction with a gradient. More... | |
Array | Compare (SCloud MeasuredCloud, Number DistMax, SVector Direction, Boolean checkBothDirection, Number maxCosAngle=-2, Boolean checkNormals) |
Calculates the distances between 2 point clouds. More... | |
Array | ComputeFlatAndCurvedAreas (Number iNeighborhoodRadius=0.0, Number iOptionMask=0) |
Computes the flat and curved areas on the cloud. More... | |
Array | ConvertInspectionToColor () |
Convert the gradient of inspection into color for each point. More... | |
Array | Explode (Number MaxDistance, Number DelNb, Number MaxNb) |
Splits a SCloud into a group of point SClouds based on the distance between the points. More... | |
Array | ExplodeByClass () |
Explode a classified cloud by class. More... | |
static Array | ExplodeCloudClassification (SCloud iCloud) |
Split a point cloud that has been classified into several clouds according the point classes. More... | |
Array | ExplodeColor () |
Explodes a SCloud by inspection colors or real colors if no inspection colors. More... | |
Array | ExplodeWithInspectionSteps () |
Splits the cloud according to the inspection steps. More... | |
static Array | Extract (Array< SComp > TableSComp, Number SamplingDistance, Boolean GenerateColor) |
To extract the cloud from an SComp array. More... | |
Array | ExtractCylinder (Array< SPoint > SeedPoint, Number Tolerance, CylinderEnum Force, SPoint iCenter={}, SVector DirectionVector={}, Number Radius, FillCloudEnum fillCloud) |
Extract the cylinder region on the current cloud starting from seed point(s). More... | |
Array | ExtractMedianPointOnWhiteLine (SPoint iSeedPoint, Number iSphereRadius, Number iOptionMask, FillCloudEnum iFillCloud=FILL_NONE) |
This function searches a point on the median of the nearest white line of the seed point, in the area of a sphere with the given radius. More... | |
Array | ExtractMultilineFromSeed (SPoint iSeedPoint, Number iTolerance, Number iCylinderLength, Number iSearchRange, Boolean iChainOption) |
Extract a polyline inside a section cloud, from a seed point. More... | |
Array | ExtractPlane (Array< SPoint > SeedPoint, Number Tolerance, PlaneEnum Force, SPoint iAveragePoint={}, SVector DirectionVector={}, FillCloudEnum fillCloud) |
Extract the planar region on the current cloud starting from seed point(s). More... | |
Array | ExtractSphere (Array< SPoint > SeedPoint, Number Tolerance, SphereEnum Force, SPoint iCenter={}, Number Radius, FillCloudEnum fillCloud) |
Extract the spherical region on the current cloud starting from seed point(s). More... | |
Array | FilterByNormalDirection (SVector iDirection, Number iMinCosAngle, Boolean isDirectionSigned) |
Filter a cloud in function of the direction of the normals. The missing normals will be computed and stored in the extra data of the cloud. More... | |
Array | FilterMovingObjects (Number iResolutionAt10m, Number iThreshold) |
Function allowing to separate point cloud into moving and fixed points. More... | |
static Array | FilterWithInspectionValues (Array< SCloud > iCloudOfPoints, Number iLowerThreshold, Number iUpperThreshold, OutputCloudsTypeInspectionValuesEnum iOutputCloudsType) |
Separate cloud(s) into 2 clouds according to inspection values. The range is defined by iLowerThreshold and iUpperThreshold values. Good points correspond to points inside the range, bad points correspond to points outside the range. More... | |
Array | FlipIntensities () |
Turns intensity values upside down. More... | |
static Array | FromAsciiFile (String iFileName, String iFormat, Number iNbPtToKeep, Boolean iImportScanDir) |
Reads an ascii point cloud. More... | |
static Array | FromClick () |
Displays a dialog box to select an SComp in the scene. More... | |
static Array | FromFile (String FileName, CloudScriptTypesEnum IndexType, Number NbPtToKeep, Boolean ImportScanDir) |
Imports clouds from a file. Authorized file extensions : .ac, .asc, .csv, .fls, .fws, .gsn, .iso, .nsd, .ply, .psl, .pts, .ptx, .raw, .stl, .txt, .xyz, .yxz, .3pi. More... | |
static Array | FromName (String Name) |
Search all the component with the given name. More... | |
static Array | FromSel () |
To get all the selected SComp. More... | |
static Array | GetCategoriesInModel (String iModelName) |
Get the categories available in the given model. More... | |
Array | GetCentroid () |
To compute the Centroid of a point cloud. More... | |
static Array | GetClassificationModels () |
Get a table of the names of all the classification models available. More... | |
static Array | GetClassName (Number iClassId) |
Get the class name for a given class ID. More... | |
CloudRepresentationTypeEnum | GetCloudRepresentation () |
Return the current representation. More... | |
Array | GetColorGradient () |
To get the color gradient of the SCloud. More... | |
Array | GetConvexContour (SVector ViewDirection, SPoint PointOnPlane, Boolean Is3dContour) |
Computes the convex contour of the cloud according to a direction. More... | |
Array | GetConvexHull () |
Compute the convex hull of a point cloud. More... | |
Array | GetHighestPoint (SVector Direction) |
Get the highest point according to the Direction. More... | |
SCloudIterator | GetIterator () |
Array | GetLowestPoint (SVector Direction) |
Get the lowest point according to the Direction. More... | |
Number | GetMeanDistance () |
Calculate the average distance between points of the cloud. More... | |
Number | GetNumber () |
Number | GetPointSize () |
Return the current point size. More... | |
Array | GetScanningPositions () |
Extract the scanning positions of the cloud. More... | |
Number | HasColor () |
Check if the cloud has color information. More... | |
Number | HasGriddedInformation () |
Check if points are organized as a gridded structure. More... | |
Number | HasInspection () |
Check if the cloud has inspection information. More... | |
Boolean | hasScanDir () |
Allows the user to know if the cloud contains a scanning direction. More... | |
Array | LoadColorGradient (String FilePath) |
Loads the color gradient from a file (*.rsi binary file). More... | |
Array | LocalizeValues (Number iMin, Number iMax) |
Extract the minimum and maximum threshold values of an inspected cloud. More... | |
static Array | Merge (Array< SCloud > TableSCloud) |
To merge an array of clouds into one single cloud. More... | |
static SCloud | New () |
Default constructor to create an empty new SCloud. More... | |
static SCloud | New (SCloud Other) |
Constructs an SCloud by copying the SCloud _iOther. More... | |
Array | NoiseReductionSplit (unsigned Threshold) |
The goal of noise reduction is to split the cloud in 2 clouds according to a noise reduction threshold: 1) The "good" points. 2) The "bad" points (noisy points). The technique used in this function supposes that the point density within the cloud is constant or nearly. The function will consider as noisy the points in the zone under a certain density threshold. More... | |
Array | ProjDir (SPoint iPointToProject, SVector Direction, Number Aperture, Boolean DirectionUnsigned) |
Calculates the projection of a point on a cloud. More... | |
static Array | ProjectGrid (SPoly iPoly, SPoint iOrigin, SVector iProjectionDir, SVector iHorizontalDir, Number iStepHorizontal, Number iStepVertical) |
Calculate the grid cloud projected onto a mesh. More... | |
Array | ProjectOnPlane (SPlane iPlane) |
Projects the point cloud onto a plane. More... | |
Array | Reduce (unsigned NumberOfPoints) |
Calculates a reduced point cloud with points evenly spaced (as much as possible). More... | |
Array | ReduceBest (Number MiniAverageDist, Number MaxAverageDist) |
Calculates a reduced point cloud keeping only the "best" points as much as possible evenly spaced. More... | |
Array | RegionGrowFreePolyline (SPoint iSeedPoint, Number iSamplingStep) |
Extract polyline using a seed point on the line and a sampling step that includes the line. More... | |
Array | Save (String FilePath, QChar decimalSeparator='.', Boolean EXPORT_SCAN_DIR, SMatrix CoordinateSystemMatrix={}) |
Saves the cloud into a file. Supported extensions : .asc, .csv, .igs, .nsd, .pts, .ptx. Refer to SSurveyingFormat::ExportCloud() to save into .las or .laz format. More... | |
Array | SaveColorGradient (String FilePath) |
Saves the color gradient into a file (*.rsi binary file). More... | |
Array | SectionPlane (SVector NormalVectorOfThePlanes, SPoint iPointOnTheFirstPlane, Number NumberOfParallelPlanes, Number DistanceBeetweenParallelPlanes, Number PlaneThickness, Number ChainingDist, Boolean NoiseReduction) |
Intersection of a point cloud by parallel planes. More... | |
Array | Separate (SMultiline iClosedContour, SVector Direction, SPoint PntFirstPlane, SPoint PntSecondPlane, FillCloudEnum fillCloud) |
Makes a copy of points found INside and (or) OUTside the box and preserve the current cloud. More... | |
Array | SeparateFeature (SComp FeatureType, Number Tolerance, FillCloudEnum fillCloud) |
Gets all the points found inside (or outside) a feature (circle, cylinder, plane). More... | |
Array | SeparateMultiline (SMultiline Multiline, Number Tolerance, FillCloudEnum fillCloud) |
Separates the points in two parts with an offset on both sides of the multiline. More... | |
Array | SeparatePoly (SPoly Polyhedron, Number Tolerance, FillCloudEnum fillCloud) |
Gets all the points found inside (or outside) a SPoly. More... | |
static Array | SeparateWithClippingObjects (Array< SCloud > iCloudOfPoints, OutputCloudsTypeClippPlanesEnum iOutputCloudsType) |
Separate cloud(s) according to active clipping objects. More... | |
static Array | SeparateWithRealColors (Array< SCloud > iCloudOfPoints, Number iColorR, Number iColorG, Number iColorB, Number iTolerance) |
Separate cloud(s) into 2 clouds according to real colors. User has to define a RGB value, then, points with similar color will be separated. More... | |
static Array | SeparateWithScanningPositions (Array< SCloud > iClouds, Boolean CreateCloudWithoutScanningPositions) |
Separate cloud(s) into many clouds according to their scanning positions. More... | |
static Array | SeparateWithScanPatches (Array< SCloud > iClouds, Boolean CreateCloudWithoutScanPatches) |
Separate cloud(s) into many clouds according to scan patches. More... | |
SetCloudRepresentation (CloudRepresentationTypeEnum Representation) | |
The representation of the component is modified. More... | |
SetPointSize (Number pointSize) | |
New point size. More... | |
String | toString () |
Get the type of the variable. More... | |
static String | toString () |
Get the type of the variable. More... | |
Public Slots inherited from SComp | |
AddToDoc () | |
To add the object to the document. More... | |
static Array | All (Number VisCrit) |
To get all the SComp in the document. More... | |
ApplyTransformation (SMatrix iMatrix) | |
To apply a geometric transformation to the current object by making a product with the given matrix. More... | |
Clear () | |
To deallocate object memory. More... | |
static Array | FromClick () |
Displays a dialog box to select an SComp in the scene. More... | |
static Array | FromName (String Name) |
Search all the component with the given name. More... | |
static Array | FromSel () |
To get all the selected SComp. More... | |
Array | GetBoundingBox () |
Calculates the bounding box of the component. More... | |
Array | GetColors () |
To get the colors of the component. More... | |
String | GetFolderName () |
String | GetName () |
Invert () | |
Normal of the component is inverted. More... | |
Boolean | IsInDoc () |
Return if the component is in the document or not. More... | |
Boolean | IsVisible () |
MoveToGroup (String GroupPath, Boolean MoveInsideTopParent) | |
Move the object to the document group represent by the given path. If some groups, in the path, don't exist, they will be created. More... | |
RemoveFromDoc () | |
To remove the object from the document. More... | |
SetClippable (Boolean clipping) | |
Set clippable or not. More... | |
SetColors (Number Red, Number Green, Number Blue) | |
Sets the colors of the component. More... | |
SetName (String ComponentName) | |
To set the component's name. More... | |
SetRepresentationType (RepresentationTypeEnum Representation) | |
The shading type of the component is modified. More... | |
SetTransparency (Number Alpha) | |
Sets the transparency of the component. More... | |
SetVisibility (Boolean Visible) | |
Sets the component to be visible, or not visible. More... | |
String | toString () |
Get the type of the variable. More... | |
String | toString () |
Get the type of the variable. More... | |
Translate (SVector Vector) | |
To make a translation of the current object with an SVector. More... | |
Public Slots inherited from SObject | |
Clear () | |
To deallocate memory of the object. More... | |
String | toString () |
Get the type of the variable. More... | |
The SCloud class provides point cloud manipulation.
The SCloud creation can be done by calling the static functions:
.
How the best square slot is forced.
enum SCloud::CircleEnum |
The different representation types for clouds.
Use SCloud.FLAT.
Enumerator | |
---|---|
CLOUD_FLAT | |
CLOUD_SMOOTH | |
CLOUD_SMOOTH_BACK | |
CLOUD_COLORED | |
CLOUD_INSPECTION | |
CLOUD_SURFACIC | |
CLOUD_CLASSIFICATION | |
CLOUD_DEBUG_SPLATTING_SMOOTH | |
CLOUD_DEBUG_SPLATTING_COLORED |
The set of possible files to load.
The FromFile() function requires to specify extension type for specific formats.
If it's not a specific format as described below use SCloud.AUTO_DETECT.
Enumerator | |
---|---|
_3PI | |
_3PI_TRANSF | |
ASC_ESRI | |
ASC_SCAN | |
CSV_ASCII | |
CSV_CSLM | |
GSN_TRANF | |
AUTO_DETECT |
enum SCloud::CylinderEnum |
enum SCloud::LineEnum |
|
strong |
|
strong |
enum SCloud::PlaneEnum |
enum SCloud::SphereEnum |
|
slot |
Add a new point to the cloud.
[in] | PointToAdd | The point to add |
|
inlinestaticslot |
|
slot |
Calculates the best circle fitting with the cloud in the mean squares sense.
Best fit with all the points.
Array.ErrorCode | The error code:
|
Array.Circle | The resulting best SCircle. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.FormError | The form error. In this case, circularity. |
Array.InCloud | The extracted points. THIS OPTION IS ONLY VALID IF THE METHOD SELECTED IS BEST OR CIRCULARITY |
Array.OutCloud | The cloud without the extracted points. THIS OPTION IS ONLY VALID IF THE METHOD SELECTED IS BEST_CIRCLE OR BEST_CIRCULARITY |
[in] | Method | method to measure the circle (best, circularity) |
[in] | NbPointElim | The number of points to eliminate. The worst points are eliminated. This number should not be greater than the total number of points -4 |
[in] | Force | Bit mask to know which option(s) is forced or selected. CIRCLE_FORCE_RADIUS (ForceOption & CIRCLE_FORCE_RADIUS) Radius is forced (using the value of the current circle) CIRCLE_FORCE_CENTER (ForceOption & CIRCLE_FORCE_CENTER) Center is forced (using the value of the current circle) CIRCLE_FORCE_NORMAL (ForceOption & CIRCLE_FORCE_NORMAL) Normal vector is forced (using the value of the current circle) THIS VALUE WILL NOT BE USED IF THE METHOD SELECTED IS MAX INSCRIBED OR MIN CIRCUMSCRIBED |
[in] | iCenter | First point of the center line. |
[in] | Normal | Normed Normal vector of the plane. |
[in] | Radius | Radius of the circle |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Calculates the best cone fitting with the cloud.
Array.ErrorCode | The error code:
|
Array.Cone | The resulting best SCone. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.FormError | The form error. In this case, conicity. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
[in] | nbPointsElim | optional number of points to eliminate or 0 if none |
|
slot |
Initialise a slot using the best slot extracted from a cloud (inner, outer...)
Array.ErrorCode | The error code:
|
Array.Cylinder | The resulting best cylinder. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.FormError | The form error. In this case, cylindricity. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | NbPointElim | The number of points to eliminate. The worst points are eliminated. This number should not be greater than the total number of points -4 |
[in] | Force | Bit mask to know which parameter(s) is forced or initialized (initializing the computation provides a more rapid computation. CYL_FORCE_RADIUS (Force & CYL_FORCE_RADIUS) Radius is forced CYL_INIT_RADIUS (Force & CYL_INIT_RADIUS) Radius is initialized (near from its good value) CYL_FORCE_CENTER (Force & CYL_FORCE_CENTER) Center is forced (an axis passing through Center should be found) CYL_INIT_CENTER (Force & CYL_INIT_CENTER) Center is initialized (near from its good position) CYL_FORCE_DIRECTION (Force & CYL_FORCE_DIRECTION) Direction is forced (DirectionVector exactly) CYL_INIT_DIRECTION (Force & CYL_INIT_DIRECTION) Direction is approximately (DirectionVector nearly) |
[in] | iCenter | First point of the center line. |
[in] | DirectionVector | Normed Normal vector of the plane. |
[in] | Radius | Radius of the circle |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Calculates the best line fitting with the cloud.
Array.ErrorCode | The error code:
|
Array.Line | The resulting best SLine. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.FormError | The form error. In this case, linearity. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | NbPointElim | The number of points to eliminate. The worst points are eliminated. This number should not be greater than the total number of points -3 |
[in] | Force | Bit mask to know which parameter(s) are forced and do not need to be computed. LINE_FORCE_POINT (Force & LINE_FORCE_POINT) Average point is forced (a line passing by this point should be found) LINE_FORCE_DIRECTION (Force & LINE_FORCE_DIRECTION) Line direction is forced (a line with this direction should be found) |
[in] | iAveragePoint | The point of the cloud that the line pass through |
[in] | DirectionVector | Normed direction vector of the line. |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Calculates the best plane fitting with all points from the cloud.
Array.ErrorCode | The error code:
|
Array.Plane | The resulting best SPlane. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.FormError | The form error. In this case, flatness. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | NbPointElim | The number of points to eliminate. The worst points are eliminated. This number should not be greater than the total number of points -3 |
[in] | Force | Bit mask to know which parameter(s) are forced and do not need to be computed. PLANE_FORCE_POINT (Force & PLANE_FORCE_POINT) Average point is forced (a plane passing by this point should be found) PLANE_FORCE_NORMAL (Force & PLANE_FORCE_NORMAL) Normal is forced (a plane with this normal should be found) |
[in] | iPtToForce | The average point of the cloud to force |
[in] | DirectionToForce | Normed Normal vector of the plane to force. |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Calculates the best sphere fitting with the cloud.
Array.ErrorCode | The error code:
|
Array.Sphere | The resulting best SSphere. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.FormError | The form error. In this case, sphericity. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | NbPointElim | The number of points to eliminate. The worst points are eliminated. This number should not be greater than the total number of points -4 |
[in] | Force | Bit mask to know which parameter(s) is forced SPHERE_FORCE_RADIUS (Force & SPHERE_FORCE_RADIUS) Radius is forced SPHERE_FORCE_CENTER (Force & SPHERE_FORCE_CENTER) Center is forced |
[in] | iCenter | The center of the sphere to force |
[in] | Radius | Radius of the sphere to force |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Calculates the best square slot fitting with the cloud.
Array.ErrorCode | The error code:
|
Array.SquareSlot | The resulting best SSquareSlot |
Array.InCloud | The extracted points. THIS OPTION IS ONLY VALID IF THE METHOD SELECTED IS BEST_SQ_SLOT |
Array.OutCloud | The cloud without the extracted points. THIS OPTION IS ONLY VALID IF THE METHOD SELECTED IS BEST_SQ_SLOT |
[in] | method | method to measure the slot (best, inner, outer) |
[in] | NbPointElim | The number of points to eliminate. The worst points are eliminated. This number should not be greater than the total number of points -4 |
[in] | Force | Only with BEST_SQ_SLOT Bit mask to know which parameter(s) is forced or initialized (initializing the computation provides a more rapid computation. NO_FORCE (Force & NO_FORCE) nothing is forced FORCE_NORMAL (Force & FORCE_NORMAL) to force only the normal, translation along this axis allowed FORCE_PLANE (Force & FORCE_PLANE) to force rectangle plane, only rotation and translation in the plane is allowed FORCE_MAIN_DIRECTION (Force & FORCE_MAIN_DIRECTION) to force the main direction of the rectangle FORCE_LENGTH (Force & FORCE_LENGTH) to force rectangle length FORCE_WIDTH (Force & FORCE_WIDTH) to force rectangle width FORCE_SQUARE (Force & FORCE_SQUARE) the rectangle is forced to a square, width and length will have same value. If FORCE_LENGTH and FORCE_WIDTH are used too, the length value will be used to define side square. FORCE_IN_BEST_PLANE (Force & FORCE_IN_BEST_PLANE) to force rectangle in the best plane, normal and point on the rectangle is compute. If FORCE_NORMAL, FORCE_CENTER or FORCE_PLANE are used, they will have no influence FORCE_CENTER (Force & FORCE_CENTER) to force rectangle center |
[in,out] | iCenter | Center of the rectangle. |
[in,out] | Normal | Normal to the rectangle |
[in,out] | MainDirection | main direction of the rectangle |
[in,out] | Length | length of the rectangle |
[in,out] | Width | width of the rectangle |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Chains the current point cloud and creates the shortest SMultiline(s).
Array.ErrorCode | The error code:
|
Array.MultiTbl | the table of SMultiline. |
[in] | ChainingDist | If the distance between two neighbor points is less than this value a segment is created. If <=0, no limit. |
|
staticslot |
Classify the point clouds using a trained model.
[in] | iClouds | The table of clouds to classify |
[in] | iModelName | The model name |
Array.CloudTbl | Table of classified clouds |
Array.ErrorCode | The error codes:
|
|
slot |
Gets all the points found to be scanned (or estimated) with an angle to the feature normal lower than a threshold.
Array.ErrorCode | The error code:
|
Array.InCloud | The resulting points with a scan angle lower than the threshold when compared to the feature local normal. |
Array.OutCloud | The resulting points with a scan angle higher than the threshold when compared to the feature local normal. |
[in] | FeatureType | The feature to use when dissociating the points in the cloud |
[in] | Angle | Angle (range 0-180) in degrees between the scanning direction/local normal of the cloud and |
DistanceTolerance | local feature normal on which is projected the point. When compared to the scanning direction, a value of 90 degrees guaranties that the point could be scanned |
[in] | useEstimatedDirection | this boolean is set to true, the estimated normal of the point is used instead of the scan direction however if no scan direction is available for the cloud, the estimated normal will be used regardless of the value of this parameter |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Gets all the points found inside (or outside) a SPoly.
Array.ErrorCode | The error code:
|
Array.InCloud | The resulting points found inside the SPoly |
Array.OutCloud | The resulting points found outside the SPoly |
[in] | Polyhedron | The SPoly to use when dissociating the points in the cloud |
[in] | Angle | Angle (range 0-180) in degrees between the scanning direction of the cloud and the triangle normal |
DistanceTolerance | on which is projected the point. When compared to the scanning direction, a value of 90 degrees guaranties that the point could be scanned |
[in] | useEstimatedDirection | if this boolean is set to true we always use the estimated normal of the point instead of the scan direction |
[in] | checkForThinParts | if this boolean is set to true, the point projection will try to find a suitable triangle that both fit the maximum angle and the distance tolerance instead of the closest triangle. This option is useful if a thin part was scanned from both sides. This option is used only if the scan direction is used (and not the estimated point normal) |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Cleans the cloud according to the angle between:
.
Array.ErrorCode | The error code: |
Array.InCloud | The resulting points found valid according to the angular threshold |
Array.OutCloud | The resulting points found NOT valid according to the angular threshold |
[in] | Angle | Angle (range 0-90) in degrees between the scanning direction of one point and its local estimated normal. This angle represents a threshold to fill the InCloud or the OutCloud |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
To deallocate memory of the object.
Finds the point in the current cloud that is the closest from an input point and optionally inside a sphere.
Array.ErrorCode | The error code.
|
Array.Point | The closest point found. |
[in] | iInputPt | The point from which the closest has to be found |
[in] | CenterPt | If not null, center point: the point returned must be inside a sphere with this center. |
[in] | Distance | If not null, the point returned must have a distance from the center less than this value. The center is iCenterPt, if not null or InputPt otherwise. |
|
staticslot |
Color the clouds along a direction with a gradient.
Array.ErrorCode | The error code:
|
Array.CloudTbl | The resulting colored clouds This table contains the same number of clouds as the input table |
Clouds | Clouds to color | |
DirectionVect | Direction to use for coloring | |
[in] | iOrigin | the origin (the point at which the value should be zero) |
|
slot |
Calculates the distances between 2 point clouds.
Array.ErrorCode | The error code.
|
Array.Cloud | The new SCloud, which is the result of the comparison |
Array.ReportData | The new SReportData, which contains the view set with the inspected component. |
[in] | MeasuredCloud | SCloud considered as the measured object to project |
[in] | DistMax | ignore point having a distance greater than this one. |
[in] | Direction | The direction of the inspection
|
[in] | checkBothDirection | do we have to check direction in both side? |
[in] | maxCosAngle | max cos value for angle (used to check orientation of normals and directions of projections) |
[in] | checkNormals | do we have to take care of normals? |
|
slot |
Computes the flat and curved areas on the cloud.
iNeighborhoodRadius | [in] Radius of the sphere used to consider points as neighbors if 0.0, an automatic value is computed according to the average distance between points ( 12.0 * GetMeanDistance(); ) |
iOptionMask | [in] option bit mask
|
Array.ErrorCode | : * 0 Success
|
Array.Cloud | a new cloud with color & inspection if successful |
|
slot |
Convert the gradient of inspection into color for each point.
Array.ErrorCode | The error code.
|
Array.Cloud | a new cloud with color & inspection |
|
slot |
Splits a SCloud into a group of point SClouds based on the distance between the points.
Array.ErrorCode | The error code:
|
Array.CloudTbl | The exploded SCloud table |
[in] | MaxDistance | Distance threshold, which determines if two points belong to the same cloud or not. If you enter zero, the function will take a default value of 3*(the average distance between points of the cloud. As this dimention is a statistic, it is meaningful only if the number of points is high (minimum 1000 points)) |
[in] | DelNb | Delete threshold or 0 if none. All clusters having a number of points less or equal to this value are deleted. |
[in] | MaxNb | Maximum number of clusters to return. If 0, taking the default value of 1000. Smallest cluster are automatically deleted so that the total number of component returned do not exceed this value. |
|
slot |
Explode a classified cloud by class.
Array.ErrorCode | The error code
|
Array.CloudTbl | Table of the exploded clouds. |
Array.ClassTbl | Table of classes. Each class correspond to the cloud with the same index in CloudTbl. |
|
staticslot |
Split a point cloud that has been classified into several clouds according the point classes.
[in] | iCloud | The cloud to split. |
Array.ErrorCode | The error code.
|
Array.CloudTbl | An array with one cloud per classification classes present in the cloud. |
|
slot |
Explodes a SCloud by inspection colors or real colors if no inspection colors.
Array.ErrorCode | The error code:
|
Array.CloudTbl | The resulting list of component. |
|
slot |
Splits the cloud according to the inspection steps.
Array.ErrorCode | The error code:
|
Array.CloudTbl | The resulting list of component. |
|
staticslot |
To extract the cloud from an SComp array.
Array.ErrorCode | The error code:
|
Array.Cloud | The SCloud merge from all the SComp. |
[in] | TableSComp | The SComp array from which to extract the cloud |
[in] | SamplingDistance | The maxi sampling distance for the SPoly. If the sampling distance equals to zero, the cloud is filled only with the vertices of the polyhedron |
[in] | GenerateColor | To generate the new color of the cloud, or not:
|
|
slot |
Extract the cylinder region on the current cloud starting from seed point(s).
Array.ErrorCode | The error code:
|
Array.Cylinder | The resulting best SCylinder. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | SeedPoint | Seed points around which the cylindrical region should be extracted. |
[in] | Tolerance | Extract only the region that is inside the tolerance that is: only the vertices whose distance with the ideal sphere is less than this threshold. |
[in] | Force | Bit mask to know which parameter(s) is forced or initialized (initializing the computation provides a more rapid computation. CYL_FORCE_RADIUS (Force & CYL_FORCE_RADIUS) Radius is forced CYL_INIT_RADIUS (Force & CYL_INIT_RADIUS) Radius is initialized (near from its good value) CYL_FORCE_CENTER (Force & CYL_FORCE_CENTER) Center is forced (an axis passing through Center should be found) CYL_INIT_CENTER (Force & CYL_INIT_CENTER) Center is initialized (near from its good position) CYL_FORCE_DIRECTION (Force & CYL_FORCE_DIRECTION) Direction is forced (DirectionVector exactly) CYL_INIT_DIRECTION (Force & CYL_INIT_DIRECTION) Direction is approximately (DirectionVector nearly) |
[in] | iCenter | First point of the center line. |
[out] | DirectionVector | Normed Normal vector of the cylinder. |
[in] | Radius | Radius of the cylinder to force |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
This function searches a point on the median of the nearest white line of the seed point, in the area of a sphere with the given radius.
iSeedPoint | [in] seed point, center of the sphere of research |
iSphereRadius | [in] radius of the sphere around seed point where we search the white points |
iOptionMask | [in] option bit mask
|
iFillCloud | [in] Which cloud should be filled : both, only one or none In : white line points in the sphere of research Out : the other points in the sphere of research |
Array.ErrorCode | The error code:
|
Array.Point | The median point found on the white line |
Array.InCloud | The white line points found in the research sphere |
Array.OutCloud | The other points found in the research sphere |
|
slot |
Extract a polyline inside a section cloud, from a seed point.
iSeedPoint | [in] Seed point around which the polyline will be extracted |
iTolerance | [in] Extraction tolerance value. It corresponds to a cylinder diameter for the algorithm and thickness for the user |
iCylinderLength | [in] Length of each cylindrical selection. It corresponds to the length of the smallest line which can be extracted, divided by two |
iSearchRange | [in] Maximum distance between two lines of the same line section |
iChainOption | [in] true : Chain sections, false : no chain |
Array.Multi | The extracted multiline |
Array.LineTbl | Returned lines useful because lines can be unchained |
Array.InCloudTbl | Table of clouds containing points used for each extraction |
Array.OutCloud | Cloud containing all points except points used for the multiline extraction |
Array.OutExtractedPtsCloud | Cloud containing all points used for multiline extraction |
Array.ErrorCode | The error code.
|
|
slot |
Extract the planar region on the current cloud starting from seed point(s).
Array.ErrorCode | The error code:
|
Array.Plane | The resulting extracted SPlane. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | SeedPoint | Seed point(s) around which the planar region should be extracted. |
[in] | Tolerance | Extract only the region that is inside the tolerance that is: only the vertices whose distance with the ideal plane is less than this threshold. |
[in] | Force | Bit mask to know which parameter(s) are forced and do not need to be computed. PLANE_FORCE_POINT (Force & PLANE_FORCE_POINT) Average point is forced (a plane passing by this point should be found) PLANE_FORCE_NORMAL (Force & PLANE_FORCE_NORMAL) Normal is forced (a plane with this normal should be found) |
[in] | iAveragePoint | The average point of the cloud |
[in] | DirectionVector | Normed Normal vector of the plane. |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Extract the spherical region on the current cloud starting from seed point(s).
Array.ErrorCode | The error code:
|
Array.Sphere | The resulting best SSphere. |
Array.StdDeviation | The standard deviation. |
Array.DistWorstPt | The distance of the worst point to the best shape found. |
Array.InCloud | The extracted points. |
Array.OutCloud | The cloud without the extracted points. |
[in] | SeedPoint | Seed points around which the spherical region should be extracted. |
[in] | Tolerance | Extract only the region that is inside the tolerance that is: only the vertices whose distance with the ideal sphere is less than this threshold. |
[in] | Force | Bit mask to know which parameter(s) is forced SPHERE_FORCE_RADIUS (Force & SPHERE_FORCE_RADIUS) Radius is forced SPHERE_FORCE_CENTER (Force & SPHERE_FORCE_CENTER) Center is forced |
[in] | iCenter | The center of the sphere to force |
[in] | Radius | Radius of the sphere to force |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Filter a cloud in function of the direction of the normals. The missing normals will be computed and stored in the extra data of the cloud.
[in] | iDirection | The kept points must have this similar direction. |
[in] | iMinCosAngle | The angle threshold to filter the normals. |
[in] | isDirectionSigned | Do we check the sign of the direction ? |
Array.ErrorCode |
|
|
slot |
Function allowing to separate point cloud into moving and fixed points.
[in] | iResolutionAt10m | Resolution at 10 m. |
[in] | iThreshold | value under which two points are considered identical. |
Array.InCloud | => Cloud containing fixed objects. |
Array.OutCloud | => Cloud containing moving objects. |
Array.ErrorCode |
|
|
staticslot |
Separate cloud(s) into 2 clouds according to inspection values. The range is defined by iLowerThreshold and iUpperThreshold values. Good points correspond to points inside the range, bad points correspond to points outside the range.
Array.CloudTbl | This function returns a table of clouds |
Array.ErrorCode | The error code:
|
[in] | iCloudOfPoints | The table of clouds to filter |
[in] | iLowerThreshold | The lower threshold value |
[in] | iUpperThreshold | The upper threshold value |
[in] | iOutputCloudsType | Output type Inside : Keep only clouds inside the range Outside : Keep only outside the range Both : Keep both inside and outside clouds |
|
slot |
Turns intensity values upside down.
Array.ErrorCode | The error code.
|
Array.Cloud | The resulting reduced cloud. |
|
staticslot |
Reads an ascii point cloud.
Array.ErrorCode | The error code:
|
Array.Cloud | The loaded SCloud |
iFileName | The file name path | |
[in] | iFormat | if empty the format will be automatically recognized, provided the format is XY or XYZ or XYZI or XYZRGB of XYZIRGB. Characters must respect the convention as follows:
|
[in] | iNbPtToKeep | Number of points to keep in the reduced cloud
|
[in] | iImportScanDir | Should we import scanning direction if exists? |
|
inlinestaticslot |
|
staticslot |
Imports clouds from a file. Authorized file extensions : .ac, .asc, .csv, .fls, .fws, .gsn, .iso, .nsd, .ply, .psl, .pts, .ptx, .raw, .stl, .txt, .xyz, .yxz, .3pi.
Array.ErrorCode | The error code:
|
Array.CloudTbl | The loaded array of SCloud |
[in] | FileName | The file name path |
[in] | IndexType | The file type, a CloudScriptTypesEnum value (AUTO_DETECT or another value for special file types) |
[in] | NbPtToKeep | The maximum number of points to load (in case of memory save), or 0 if unlimited. Defaults to 6,000,000 if unspecified. |
[in] | ImportScanDir | Should we import scanning direction if exists? |
|
inlinestaticslot |
Search all the component with the given name.
Array | all the SCloud with the given name |
|
staticslot |
|
staticslot |
Get the categories available in the given model.
[in] | iModelName | The model name |
Array.StringTbl | Table of the name of the categories |
Array.ErrorCode | The error codes:
|
|
slot |
To compute the Centroid of a point cloud.
Array.ErrorCode | The error code.
|
Array.Point | Cloud centroid |
|
staticslot |
Get a table of the names of all the classification models available.
|
staticslot |
Get the class name for a given class ID.
[in] | iClassId | Tee class ID, in the 0-255 interval |
Array.Name | The name of the class |
Array.ErrorCode | The error code:
|
|
slot |
Return the current representation.
|
inlineslot |
To get the color gradient of the SCloud.
Array.ErrorCode | The error code.
|
Array.Gradient | the SColorGradient associated to the current SCloud |
|
slot |
Computes the convex contour of the cloud according to a direction.
Array.ErrorCode | The error code.
|
Array.Multi | The computed convex contour. |
[in] | ViewDirection | Direction in which the computation must be done. If null, the direction is the normal to the best plane of the points. |
[in] | PointOnPlane | If a planar result is requested, a point of the plane. If null, the average point of the cloud is taken. |
[in] | Is3dContour | if false a planar contour is computed. if true a 3D contour is computed. |
|
slot |
Compute the convex hull of a point cloud.
Array.ErrorCode | The error code.
|
Array.Poly | The computed convex hull. |
|
slot |
Get the highest point according to the Direction.
Array.ErrorCode | The error code.
|
Array.Point | The highest point found. |
[in] | Direction | Direction in which the highest point must be found. |
|
slot |
|
slot |
Get the lowest point according to the Direction.
Array.ErrorCode | The error code.
|
Array.Point | The lowest point found. |
[in] | Direction | Direction in which the highest point must be found. |
|
slot |
Calculate the average distance between points of the cloud.
The | statistic distance between points in the cloud. As this dimension is a statistic, it is meaningful only if the number of points is high (minimum 1000 points). |
|
slot |
|
slot |
Return the current point size.
|
slot |
Extract the scanning positions of the cloud.
Array.ErrorCode | The error code.
|
Array.PointTbl | Table of points corresponding to the scan positions. |
|
slot |
Check if the cloud has color information.
|
slot |
Check if points are organized as a gridded structure.
|
slot |
Check if the cloud has inspection information.
|
slot |
Allows the user to know if the cloud contains a scanning direction.
|
inlineslot |
Loads the color gradient from a file (*.rsi binary file).
Array.ErrorCode | The error code.
|
Array.Gradient | The color gradient associated to the current SCloud |
FilePath | The complete file path to load from |
|
slot |
Extract the minimum and maximum threshold values of an inspected cloud.
Array.ErrorCode | The error code
|
Array.Results | A table of result. Each result is a structure with the following members: |
[in] | iMin | Minimum threshold |
[in] | iMax | Maximum threshold |
|
staticslot |
To merge an array of clouds into one single cloud.
Array.ErrorCode | The error code:
|
Array.Cloud | The SCloud merge from all the SComp. |
[in] | TableSCloud | The SCloud array to merge all together |
|
slot |
The goal of noise reduction is to split the cloud in 2 clouds according to a noise reduction threshold: 1) The "good" points. 2) The "bad" points (noisy points). The technique used in this function supposes that the point density within the cloud is constant or nearly. The function will consider as noisy the points in the zone under a certain density threshold.
Array.ErrorCode | The error code:
|
Array.GoodCloud | The cloud containing the good points. |
Array.BadCloud | The cloud containing the bad points. |
Threshold | Noise reduction threshold : 0 <= Threshold <= 100 |
|
slot |
Calculates the projection of a point on a cloud.
Array.ErrorCode | The error code.
|
Array.Point | The projection found : this point of the cloud is the nearest point along Direction |
[in] | iPointToProject | The point to project. |
[in] | Direction | Projection normalized vector |
[in] | Aperture | the distance around the ray that is used to find the point |
[in] | DirectionUnsigned | true: Direction is considered as an unsigned vector
|
|
staticslot |
Calculate the grid cloud projected onto a mesh.
[in] | iPoly | Mesh on which the grid must be projected |
[in] | iOrigin | The origin point of the grid |
[in] | iProjectionDir | The direction of projection |
[in] | iHorizontalDir | The horizontal direction of the grid |
[in] | iStepHorizontal | Horizontal step of the grid (in project unit) |
[in] | iStepVertical | Vertical step of the grid (in project unit) |
Array.MinCloud | Cloud of the grid minimum |
Array.MaxCloud | Cloud of the grid maximum |
Array.ErrorCode | The error code:
|
|
slot |
Projects the point cloud onto a plane.
Array.ErrorCode | The error code.
|
Array.Cloud | The cloud projected ont the plane |
[in] | iPlane | the plane on which to project |
|
slot |
Calculates a reduced point cloud with points evenly spaced (as much as possible).
Array.ErrorCode | The error code:
|
Array.Cloud | The resulting reduced cloud. |
[in] | NumberOfPoints | Number of points to keep in the reduced cloud |
|
slot |
Calculates a reduced point cloud keeping only the "best" points as much as possible evenly spaced.
Array.ErrorCode | The error code:
|
Array.Cloud | The resulting reduced cloud. |
[in] | MiniAverageDist | Mini average distance between points. |
[in] | MaxAverageDist | Maxi average distance between points or zero if none. This parameter will reject points in the low density areas, which are suspected to be noisy. If not zero, this value should be at least twice MiniAverageDist. |
|
slot |
Extract polyline using a seed point on the line and a sampling step that includes the line.
iSeedPoint | [in] point on the line to extract |
iSamplingStep | [in] sampling step of the polyline to extract from the cloud The sampling step must be big enough to include line curvature and to have enough points in the cloud in a step size The sampling step must be small enough to have good accuracy and to avoid merging several lines Typically for electric lines or catenary wires detection a good value is between 0.5 and 2m |
Array.ErrorCode |
|
Array.Multi | the multiLine found |
|
slot |
Saves the cloud into a file. Supported extensions : .asc, .csv, .igs, .nsd, .pts, .ptx. Refer to SSurveyingFormat::ExportCloud() to save into .las or .laz format.
Array.ErrorCode | The error code.
|
Array.IsDemoVersion | Indicates if this is a demo version or not |
Array.IsScanDirAvailable |
|
Array.IsScanDirExported | Indicates if the chosen format is compatible with Scanning directions |
[in] | FilePath | The complete file path to save into |
[in] | decimalSeparator | Decimal separator in number representation |
[in] | EXPORT_SCAN_DIR | If .asc or .csv formats: true will export the scanning directions (in addition to XYZ and IRGB), false will only export XYZIRGB Otherwise, this parameter is set automatically, thanks to format compatibility |
[in] | CoordinateSystemMatrix | The matrix to define a UCS used for the export (or identity to use the WCS) |
|
inlineslot |
Saves the color gradient into a file (*.rsi binary file).
Array.ErrorCode | The error code.
|
Array.IsDemoVersion | Indicates if this is a demonstration version or not |
FilePath | The complete file path to save into |
|
slot |
Intersection of a point cloud by parallel planes.
Array.ErrorCode | The error code:
|
Array.MultiTbl | The resulting planar sections |
NormalVectorOfThePlanes | Normal vector of the plane |
iPointOnTheFirstPlane | Point on the first plane |
NumberOfParallelPlanes | Number of parallel planes.
|
DistanceBeetweenParallelPlanes | Distance between planes |
PlaneThickness | Plane thickness. We consider that all points between two parallel planes belong to the section. Half of the thickness is taken on each side of each plane. |
ChainingDist | If the distance between two neighbor points is less than this value a segment is created. |
NoiseReduction | Should we activate noise reduction ? |
|
slot |
Makes a copy of points found INside and (or) OUTside the box and preserve the current cloud.
Array.ErrorCode | The error code, some information about the result
|
Array.InCloud | Cloud with points INside the box |
Array.OutCloud | Cloud with points OUTside the box |
[in] | iClosedContour | Closed polygonal contour that cuts the current cloud. |
[in] | Direction | Direction of the extrusion. |
[in] | PntFirstPlane | Point on the first plane of the box. The plane is normal to the ViewDirection. If 0 the extrusion in considered as unlimited. |
[in] | PntSecondPlane | Point on the second plane of the box. The plane is normal to the ViewDirection. If 0 the extrusion in considered as unlimited. |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Gets all the points found inside (or outside) a feature (circle, cylinder, plane).
Array.ErrorCode | The error code:
|
Array.InCloud | The resulting points found inside the feature |
Array.OutCloud | The resulting points found outside the feature |
[in] | FeatureType | The feature to use when dissociating the points in the cloud |
[in] | Tolerance | Tolerance If <=0, option only valid for Surfacic features (plane, sphere and cylinders) In this case, the surface defines the border which will separate the points If >0 the feature is used as a skin and points lying at a distance lower than the Tolerance from the feature are output |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Separates the points in two parts with an offset on both sides of the multiline.
Array.ErrorCode | The error code:
|
Array.InCloud | The resulting points found near the multiline |
Array.OutCloud | The resulting points found far the multiline |
[in] | Multiline | The multiline to use when dissociating the points in the cloud |
[in] | Tolerance | Tolerance The multiline is used as a skin and points lying at a distance lower than the Tolerance from the multiline are inside |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
slot |
Gets all the points found inside (or outside) a SPoly.
Array.ErrorCode | The error code:
|
Array.InCloud | The resulting points found inside the SPoly |
Array.OutCloud | The resulting points found outside the SPoly |
[in] | Polyhedron | The SPoly to use when dissociating the points in the cloud |
[in] | Tolerance | Tolerance If <=0, the surface defines the border which will separate the points If >0 the surface is used as a skin and points lying at a distance lower than the Tolerance from the surface are output |
[in] | fillCloud | Which cloud should be filled: both, only one or none |
|
staticslot |
Separate cloud(s) according to active clipping objects.
Array.CloudTbl | This function returns a table of clouds |
Array.ErrorCode | The error code:
|
[in] | iCloudOfPoints | The table of clouds to filter |
[in] | iOutputCloudsType | Output type Clipped : Keep only visible clouds Unclipped : Keep only invisible clouds Both : Keep visible and invisible clouds |
|
staticslot |
Separate cloud(s) into 2 clouds according to real colors. User has to define a RGB value, then, points with similar color will be separated.
Array.CloudTbl | This function returns a table of clouds (even: inClouds; odd: outClouds) |
Array.ErrorCode | The error code:
|
[in] | iCloudOfPoints | The table of clouds to filter |
[in] | iColorR | R value of reference color to separate the clouds [0-255] |
[in] | iColorG | G value of reference color to separate the clouds [0-255] |
[in] | iColorB | B value of reference color to separate the clouds [0-255] |
[in] | iTolerance | Tolerance to determine close and distant colors
|
|
staticslot |
Separate cloud(s) into many clouds according to their scanning positions.
Array.CloudTbl | This function returns a table of clouds |
Array.ErrorCode | The error code:
|
[in] | iClouds | The table of clouds to filter |
[in] | CreateCloudWithoutScanningPositions | Should we create a cloud containing all points without scanning position? |
|
staticslot |
Separate cloud(s) into many clouds according to scan patches.
Array.CloudTbl | This function returns a table of clouds |
Array.ErrorCode | The error code:
|
[in] | iClouds | The table of clouds to filter |
[in] | CreateCloudWithoutScanPatches | Should we create a cloud containing all points without scanning patch? |
|
slot |
The representation of the component is modified.
[in] | Representation | The cloud representation type |
|
slot |
New point size.
[in] | pointSize | The new point size |
|
slot |
Get the type of the variable.
|
staticslot |
Get the type of the variable.