1#ifndef SCRIPT_TOPO_PROTOTYPE_H
2#define SCRIPT_TOPO_PROTOTYPE_H
4#include "RshGeometry/Old/CommonEnums.h"
5#include "OldDlg/CmdCompareCrossSections.h"
6#include "OldDlg/CmdCreateAlongAxis.h"
7#include <QtCore/QMetaType>
8#include <QtCore/QObject>
9#include <QtCore/QSharedPointer>
10#include <QtScript/Array>
11#include <QtScript/QScriptable>
14namespace rsh::ScriptBinding
61static_assert((Number)TunnelMeshingStrategy::LastMeshingStrategy == (Number)MeshingStrategy::LastMeshingStrategy);
103 Array iGridOptions = Array()
134 Array iGridOptions = Array()
185 Number GroundExtractionStrategy,
190 Number MeshingStrategy
229 Boolean TryToKeepDetails
258 Array<Number> iDistanceList =
261 Array iSections = Array(),
268 Array iOptions = Array()
295 Array<SComp> tblDComp,
301 String iReferenceName,
303 Array iOptions = Array(),
332 Array<SComp> iCompToTreat,
353 Array<SComp> iCompToTreat,
377 Array<SComp> iCompToTreat,
379 Number iSlopeTolerance,
381 Boolean isPercentage,
383 Number iNeighborsDistance,
407 Array<SCloud> iCloudsToTreat,
430 Array<SMultiline> iMultiToUnroll,
461 Array iRenderingOption = Array(),
499 Number iPlaneThickness,
502 Number iChainingDist,
507 Array iRenderingOption = Array(),
533 Array<SCloud> iClouds,
556Q_DECLARE_METATYPE(rsh::ScriptBinding::SSurveying);
The SCloud class provides point cloud manipulation. The SCloud creation can be done by calling the st...
Definition: SCloud.h:41
The SComp class is an abstract class. Use derived classes SCircle, SCylinder, SCloud,...
Definition: SComp.h:32
Class to store a multiline, that is: an ordered list of points. The SMultiline creation can be done b...
Definition: SMultiLine.h:24
3D point manipulation class. The SPoint creation can be done by calling the static functions:
Definition: SPoint.h:23
The SPoly class provides triangular mesh(es) manipulation. The SPoly creation can be done by calling ...
Definition: SPoly.h:39
Class to store reporting data. Reporting data corresponds to a chapter of a report....
Definition: SReportData.h:19
SSetMultiline class is a set of SMultiline, it will allow to regroup SMultiline in an SComp entity,...
Definition: SSetMultiline.h:27
The mathematical object vector.
Definition: SVector3.h:26
Definition: SSurveying.h:30
static Array ContourLinesPoly(SPoly iPoly, SVector iNormalAxis, Number iStep, Number iHeightStart, Number iHeightEnd, Array iRenderingOption=Array(), Number iFilterLength)
Creates contour lines on a mesh.
static Array SurfaceLevelness(Array< SComp > iCompToTreat, SVector iDirection, SPoint iPlanePosition)
Compute a surface levelness analysis on meshes or clouds.
static Array WallsAndFloors(Array< SCloud > iCloudsToTreat, Array iOptions)
Segment walls, floors and ceilings from a point cloud.
static Array UnrollAlong(Array< SMultiline > iMultiToUnroll, SMultiline iAxis, Number iAltiRef)
Unroll polylines along an axis.
static Array ComputeDsm(Array< SCloud > iClouds, Number iStep=0.)
Compute the Digital Surface Model of one (or several) cloud(s)
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)
static Array ContourLinesCloud(SCloud ipCloud, SVector iNormalAxis, Number iStep, Number iHeightStart, Number iHeightEnd, Number iPlaneThickness, Number iChainingDist, Boolean iCheckNoise, Array iRenderingOption=Array(), Number iFilterLength)
Creates contour lines on a cloud.
InspectionType
Definition: SSurveying.h:73
@ RoadType
Definition: SSurveying.h:76
@ TunnelType
Definition: SSurveying.h:74
CrossSectionOrientation
Definition: SSurveying.h:64
@ locallyPerpendicular
Definition: SSurveying.h:67
@ vertical
Definition: SSurveying.h:65
static Array FilterFeatureLines(SSetMultiline RidgeLines, SSetMultiline RavineLines, Number Length, Number Pertinence)
Filter feature lines according to their length/pertinence.
static String GetType()
To return the type of the object.
Definition: SSurveying.h:542
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)
TunnelComputedObj
Definition: SSurveying.h:40
@ TunnelCloud
Definition: SSurveying.h:42
@ TunnelMesh
Definition: SSurveying.h:41
@ TunnelNoiseCloud
Definition: SSurveying.h:44
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.
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.
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 ...
static Array SlopeAnalysis(Array< SComp > iCompToTreat, Number iSlopeTolerance, Boolean isPercentage, Number iNeighborsDistance, SVector iUpVector=SVector(0, 0, 1))
Get the slope on each point of the object.
TunnelMeshingStrategy
Definition: SSurveying.h:49
@ RefineMesh
Definition: SSurveying.h:54
@ FastMesh
Definition: SSurveying.h:50
@ LastMeshingStrategy
Definition: SSurveying.h:57
@ RegularResampling
Definition: SSurveying.h:52
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 ...
static Array FloorFlatness(Array< SComp > iCompToTreat, SVector iDirection, Number iRulerLength, Number iTolerance)
Compute a floor flatness analysis on meshes or clouds.