These functions are only available if you have the Surveying (Topo) plugin.
.
More...
Enumerations | |
enum | CrossSectionOrientation { vertical , locallyPerpendicular } |
enum | InspectionType { TunnelType , RoadType } |
enum | TunnelComputedObj { TunnelMesh , TunnelCloud , TunnelNoiseCloud } |
enum | TunnelMeshingStrategy { FastMesh , RegularResampling , RefineMesh , LastMeshingStrategy } |
Functions | |
static Array | CompareCrossSections (Array< SComp > tblDComp, InspectionType iInspectionType, SVector iDirection2D, String iReferenceName, Array iOptions=Array(), SReportData ipReportData) |
Compare sections by pair. To keep the compatibility between sections, they should be generated using the command Create along axis. This command gives new lines with colorized segments, showing the differences between two profiles. These differences may have positive or negative values. More... | |
static Array | ComputeDsm (Array< SCloud > iClouds, Number iStep=0.) |
Compute the Digital Surface Model of one (or several) cloud(s) More... | |
static Array | ContourLine (SCloud iCloud, SVector iPlaneNormal, Number iStep, Number iHeightStart, Number iHeightEnd, Number iPlaneThickness, Number iChainingDist, Boolean iCheckNoise, Array renderingOption=Array(), Number iMinClosedLine, Number iMinUnclosedLine) |
Creates contour lines on meshes or clouds. More... | |
static Array | ContourLine (SPoly iPoly, SVector iPlaneNormal, Number iStep, Number iHeightStart, Number HeightEnd, Array renderingOption=Array(), Number iMinClosedLine, Number iMinUnclosedLine) |
static Array | CreateCrossSections (SComp FirstComp, SComp SecondComp, SComp NeutralAxis, Array< Number > iDistanceList=Array< Number >(), Array iSections=Array(), Array iOptions=Array()) |
Create cross sections on an object (mesh or point cloud) along a polyline. More... | |
static Array | ExtractGround (SCloud iCloud, Number Step, Number AngleDeg, SVector Direction, Number GroundExtractionStrategy, Number MeshingStrategy) |
Extract points on the ground (in a grid) and Create a mesh corresponding to the terrain in the point cloud. More... | |
static Array | ExtractTunnel (SCloud initialCloud, SMultiline NeutralAxis, Number Step, TunnelComputedObj ComputedObjects, TunnelMeshingStrategy MeshStrategy, Boolean TryToKeepDetails) |
Extract points on exterior layer of the tunnel and create a mesh from those points. More... | |
static Array | FilterFeatureLines (SSetMultiline RidgeLines, SSetMultiline RavineLines, Number Length, Number Pertinence) |
Filter feature lines according to their length/pertinence. More... | |
static Array | FlattenCylindricCloud (SCloud CloudToFlatten, SMultiline Axis, Number Radius, Boolean WithRelief, SVector Direction=SVector(0, 0, -1), Array iGridOptions=Array()) |
Flatten a cloud representing a tubular shape (for example a tunnel) More... | |
static Array | FlattenCylindricPoly (SPoly Poly, SMultiline Axis, Number Radius, Boolean WithRelief, SVector Direction=SVector(0, 0, -1), Array iGridOptions=Array()) |
Flatten a polyhedron representing a tubular shape (for example a tunnel) More... | |
static Array | FloorFlatness (Array< SComp > iCompToTreat, SVector iDirection, Number iRulerLength, Number iTolerance) |
static String | GetType () |
To return the type of the object. More... | |
static Array | SlopeAnalysis (Array< SComp > iCompToTreat, Number iSlopeTolerance, Boolean isPercentage, Number iNeighborsDistance) |
Get the slope on each point of the object. More... | |
static Array | SurfaceLevelness (Array< SComp > iCompToTreat, SVector iDirection, SPoint iPlanePosition) |
Compute a surface levelness analysis on meshes or clouds. More... | |
String | toString () |
Get the type of the variable. More... | |
static Array | UnrollAlong (Array< SMultiline > iMultiToUnroll, SMultiline iAxis, Number iAltiRef) |
Unroll polylines along an axis. More... | |
static Array | WallsAndFloors (Array< SCloud > iCloudsToTreat, Array iOptions) |
Segment walls, floors and ceilings from a point cloud. More... | |
These functions are only available if you have the Surveying (Topo) plugin.
.
|
static |
Compare sections by pair. To keep the compatibility between sections, they should be generated using the command Create along axis. This command gives new lines with colorized segments, showing the differences between two profiles. These differences may have positive or negative values.
Array.ErrorCode | The error code.
|
Array.CompTbl | a table containing the inspected DSet of multi. The colors are defined. Blue for underbreak and red for overbreak |
[in] | tblDComp | table of SComp containing the DSet and the DPoints |
[in] | iInspectionType | Define the inspection type : 2D(RoadType) or 3D(TunnelType) |
[in] | iDirection2D | Define the direction for 2D inspection. If 3D inspection choose Z direction |
[in] | iReferenceName | Name of the reference DSet |
[in] | iOptions | data structure containing filtering options
|
[in] | ipReportData | The SReportData to fill with compared sections data, view set, ... |
|
static |
Compute the Digital Surface Model of one (or several) cloud(s)
Array.ErrorCode | The error code.
|
Array.Poly | a mesh of the computed DSM |
[in] | iClouds | initial cloud(s) used to create the DSM |
[in] | iStep | the step used for the grid size (auto if <= 0) |
|
static |
Creates contour lines on meshes or clouds.
Array.ErrorCode | The error code:
|
Array.SetMulti | the created set of multiline |
[in] | iCloud | SCloud on which to create sections |
[in] | iPlaneNormal | Normal vector of the plane |
[in] | iStep | step between sections |
[in] | iHeightStart | starting height - Major lines (if any) will be located at this height |
[in] | iHeightEnd | ending height or 0 if sections all over |
iPlaneThickness | 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. | |
iChainingDist | If the distance between two neighbor points is less than this value a segment is created. | |
iCheckNoise | Should we activate noise reduction ? | |
[in] | renderingOption | data structure containing rendering options this data structure should contain the following fields:
|
[in] | iMinClosedLine | delete closed lines whose number of segments is less than this value. |
[in] | iMinUnclosedLine | delete unclosed lines whose number of segments is less than this value. |
|
static |
[in] | iPoly | SPoly on which to create sections |
[in] | iPlaneNormal | Normal vector of the plane |
[in] | iStep | step between sections |
[in] | iHeightStart | starting height - Major lines (if any) will be located at this height |
[in] | HeightEnd | ending height or 0 if sections all over |
[in] | renderingOption | data structure containing rendering options this data structure should contain the following fields:
|
[in] | iMinClosedLine | delete closed lines whose number of segments is less than this value. |
[in] | iMinUnclosedLine | delete unclosed lines whose number of segments is less than this value. |
|
static |
Create cross sections on an object (mesh or point cloud) along a polyline.
Array.ErrorCode | The error code.
|
Array.CompTbl | a table containing the computed DComps : the table of points and the computed sections |
Array.ReportData | The SReportData containing all sections data, view set, ... |
[in] | FirstComp | first comp (could be a mesh or a cloud) |
[in] | SecondComp | second comp if any (could be a mesh or a cloud) |
[in] | NeutralAxis | neutral axis of the tunnel to extract |
[in] | iDistanceList | This is the first option to create sections: Define a list of distances (ex:[10,20,30]. If you prefer the step option, enter []. |
[in] | iSections | data structure containing rendering options if you chose the distance list options choose This is the second option to create sections with a regular step : -- step: [Number] step to create sections -- begin: [Number] define the start of the range of values -- end: [Number] define the end of the range of values |
[in] | iOptions | data structure containing rendering options
|
|
static |
Extract points on the ground (in a grid) and Create a mesh corresponding to the terrain in the point cloud.
Array.ErrorCode | The error code.
|
Array.PolyGround | |
Array.GroundCloud | |
Array.CloudNotOnGround | |
Array.CloudNoisy |
[in] | iCloud | The Cloud to apply the extraction |
[in] | Step | step = dimension of the squares inside the mesh |
[in] | AngleDeg | Max slope angle in degree of the terrain that can be seen on the ground. Zero means a terrain perfectly flat, in other words, perfectly perpendicular to the horizontal plane normal vector. |
[in] | Direction | Normalized normal vector of the horizontal plane. Most of the time, this vector is (0, 0, 1) |
[in] | GroundExtractionStrategy | Ground extraction strategy
|
[in] | MeshingStrategy | Meshing strategy
|
|
static |
Extract points on exterior layer of the tunnel and create a mesh from those points.
Array.ErrorCode | The error code.
|
Array.Poly | : a mesh of the tunnel |
Array.Cloud | : Useful points to make a tunnel mesh |
Array.CloudNoisy | : Useless points to make a tunnel mesh |
[in] | initialCloud | initial point cloud of the tunnel |
[in] | NeutralAxis | neutral axis of the tunnel to extract |
[in] | Step | step to travel along the neutral axis. This value directly implies: output mesh density and number of slices |
[out] | ComputedObjects | you can extract 3 different objects : TunnelMesh (see enum TunnelComputedObj) : mesh corresponding to the tunnel shape/ TunnelCloud : sub-cloud of points that are on the tunnel / TunnelNoiseCloud : sub-cloud of points that are INSIDE or OUTSIDE the tunnel and suspected to be noisy |
[in] | MeshStrategy | Meshing strategy (cf TunnelMeshingStrategy)
|
[in] | TryToKeepDetails | Options of tunnel extraction processing (cf TunnelExtractor::Options)
|
|
static |
Filter feature lines according to their length/pertinence.
Array.ErrorCode | The error code:
|
Array.SetMultiTbl | A table of SSetMultiline containing successively the filtered convex (item 0) and concave lines (item 1). |
[in] | RidgeLines | Convex lines to filter |
[in] | RavineLines | Convex lines to filter |
[in] | Length | Minimal length threshold |
[in] | Pertinence | Minimal pertinence threshold (between 0 and 1) |
|
static |
Flatten a cloud representing a tubular shape (for example a tunnel)
Array.ErrorCode | The error code:
|
Array.Cloud | The new Flatted Cloud. |
Array.ReportData | The SReportData containing the unroll data. |
[in] | CloudToFlatten | cloud to flatten |
[in] | Axis | neutral axis of the cloud |
[in] | Radius | mean radius of the cloud |
[in] | WithRelief | if true: the relief is preserved; if false: the result is completely flat |
[in] | Direction | on which direction is projected the axis |
[in] | iGridOptions | the array of grid options
|
|
static |
Flatten a polyhedron representing a tubular shape (for example a tunnel)
Array.ErrorCode | The error code:
|
Array.Poly | The new Flatted Poly. |
Array.ReportData | The SReportData containing the unroll data. |
[in] | Poly | poly to flatten |
[in] | Axis | neutral axis of the poly |
[in] | Radius | mean radius of the poly |
[in] | WithRelief | if true: the relief is preserved; if false: the result is completely flat |
[in] | Direction | on which direction is projected the axis |
[in] | iGridOptions | the array of grid options
|
|
static |
Array.PolyTbl | a table containing the new colored polys representing flatness on input Polyhedrons |
Array.CloudTbl | a table containing the new colored clouds representing flatness on input Clouds |
Array.ReportData | The SReportdata containing the floor flatness data. |
[in] | iCompToTreat | the object to use (only meshes or clouds are processed) |
[in] | iDirection | Normalized normal vector of the horizontal plane. Most of the this vector is (0, 0, 1) |
[in] | iRulerLength | The ruler length |
[in] | iTolerance | The tolerance |
|
static |
To return the type of the object.
|
static |
Get the slope on each point of the object.
Array.PolyTbl | a table containing the new colored polys representing slope on input Polyhedrons |
Array.CloudTbl | a table containing the new colored clouds representing slope on input Clouds |
Array.ReportData | The SReportData containing the slope analysis data. |
[in] | iCompToTreat | the object to use (only meshes or clouds are processed) |
[in] | iSlopeTolerance | slope tolerance in degrees |
[in] | isPercentage | true if results should be displayed in percentage |
[in] | iNeighborsDistance | This distance will be used to approximate the normal ( > 0) (searching the neighbors at this distance). if iNeighborsDistance <= 0 than iNeighborsDistance = cLoud.GetMeanDistance()*2.0; |
|
static |
Compute a surface levelness analysis on meshes or clouds.
Array.PolyTbl | a table containing the new colored polys representing levelness on input Polyhedrons |
Array.CloudTbl | a table containing the new colored clouds representing levelness on input Clouds |
Array.ReportData | The SReportData containing surface levelness data. |
[in] | iCompToTreat | the object to use (only meshes or clouds are processed) |
[in] | iDirection | Normal direction of the surface |
[in] | iPlanePosition | A point on the surface |
String SSurveying::toString | ( | ) |
Get the type of the variable.
|
static |
Unroll polylines along an axis.
Array.ErrorCode | The error code:
|
Array.SetMulti | a set of unrolled polylines. |
Array.ReportData | The SReportData containing the unroll along axis data. |
[in] | iMultiToUnroll | the polylines to unroll |
[in] | iAxis | the axis for the unroll |
[in] | iAltiRef | reference altitude to use for the unroll |
|
static |
Segment walls, floors and ceilings from a point cloud.
Array.ErrorCode | The error code:
|
Array.WallsTbl | a table containing the computed DClouds corresponding to walls. |
Array.FloorsTbl | a table containing the computed DClouds corresponding to floors and ceilings. |
Array.OtherTbl | a table containing the computed DClouds corresponding to other points. |
[in] | iCloudsToTreat | the clouds to use |
[in] | iOptions | data structure containing computation options segmentWalls: [Boolean] segment walls or not segmentFloors: [Boolean] segment floors and ceilings or not segmentOther: [Boolean] segment other points or not wallsTolerance: [Number] angular tolerance for walls segmentation (in degree) between 0 and 90 degree floorsTolerance: [Number] angular tolerance for floors segmentation (in degree) between 0 and 90 degree |