![]() |
0.1.22
|
Classes | |
| class | ULiDARcloud |
| Opaque structure for LiDARcloud C++ class. More... | |
Functions | |
| _check_error (result, func, args) | |
| Automatic error checking for all LiDAR functions. | |
| None | destroyLiDARcloud (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Destroy LiDARcloud instance. | |
| int | addLiDARScan (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[float] origin, int Ntheta, Tuple[float, float] theta_range, int Nphi, Tuple[float, float] phi_range, float exit_diameter, float beam_divergence, Optional[List[str]] column_format=None, float range_noise_stddev=0.0, float angle_noise_stddev=0.0, float scan_tilt_roll=0.0, float scan_tilt_pitch=0.0) |
| Add a LiDAR scan to the point cloud. | |
| int | addLiDARScanMultibeam (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[float] origin, List[float] beam_zenith_angles, int Nphi, Tuple[float, float] phi_range, float exit_diameter, float beam_divergence, Optional[List[str]] column_format=None, float range_noise_stddev=0.0, float angle_noise_stddev=0.0, float scan_tilt_roll=0.0, float scan_tilt_pitch=0.0) |
| Add a spinning multibeam LiDAR scan (rotating multi-channel sensor) | |
| float | getLiDARScanTiltRoll (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get the global scanner tilt roll angle (radians) for a scan. | |
| float | getLiDARScanTiltPitch (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get the global scanner tilt pitch angle (radians) for a scan. | |
| int | getLiDARScanPattern (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get the scan pattern (0 = raster, 1 = spinning multibeam). | |
| List[float] | getLiDARScanBeamZenithAngles (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get the per-channel beam zenith angles (radians) for a multibeam scan (empty for raster). | |
| bool | isLiDARHitMiss (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Return True if the hit is a miss (a transmitted beam that returned nothing). | |
| bool | lidarHasMisses (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Return True if the cloud contains at least one miss. | |
| float | getLiDARMissDistance () |
| Return the LIDAR_MISS_DISTANCE constant (meters). | |
| int | getLiDARScanCount (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Get number of scans in the cloud. | |
| List[float] | getLiDARScanOrigin (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get origin of a specific scan. | |
| int | getLiDARScanSizeTheta (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get number of zenith scan points. | |
| int | getLiDARScanSizePhi (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get number of azimuthal scan points. | |
| float | getLiDARScanRangeNoiseStdDev (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get the range (along-beam) measurement noise standard deviation for a scan (meters) | |
| float | getLiDARScanAngleNoiseStdDev (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID) |
| Get the angular (beam-pointing) jitter standard deviation for a scan (radians) | |
| None | addLiDARHitPoint (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID, List[float] xyz, List[float] direction) |
| Add a hit point to the cloud. | |
| None | addLiDARHitPointRGB (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID, List[float] xyz, List[float] direction, List[float] color) |
| Add a hit point with color to the cloud. | |
| None | addLiDARHitPoints (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID, xyzs, directions, int count, colors=None) |
| Add many hit points to the cloud in a single call (bulk ingestion). | |
| None | addLiDARHitPointsWithData (ctypes.POINTER(ULiDARcloud) cloud_ptr, int scanID, xyzs, directions, int count, colors=None, labels=None, data_values=None) |
| Bulk-ingest hit points carrying a per-hit data map in one call. | |
| int | getLiDARHitCount (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Get total number of hit points. | |
| List[float] | getLiDARHitXYZ (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get coordinates of a hit point. | |
| List[float] | getLiDARHitRaydir (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get ray direction of a hit point. | |
| List[float] | getLiDARHitColor (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get color of a hit point. | |
| int | getLiDARHitScanID (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get the scan ID a hit point belongs to. | |
| bool | doesLiDARHitDataExist (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index, str label) |
| Check whether a named scalar data value exists for a hit point. | |
| float | getLiDARHitData (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index, str label) |
| Get a named scalar data value for a hit point. | |
| List[float] | getLiDARHitData_all (ctypes.POINTER(ULiDARcloud) cloud_ptr, str label, int n) |
| Bulk-export a named scalar data value for all hit points in one call. | |
| Tuple[List[float], List[float]] | getLiDARHitsXYZRGB_all (ctypes.POINTER(ULiDARcloud) cloud_ptr, int n) |
| Bulk-export XYZ coordinates and RGB colors for all hit points in one call. | |
| None | deleteLiDARHitPoint (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Delete a hit point from the cloud. | |
| None | lidarCoordinateShift (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[float] shift) |
| Translate all hit points by a shift vecto. | |
| None | lidarCoordinateRotation (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[float] rotation) |
| Rotate all hit points by spherical rotation angles. | |
| None | lidarTriangulateHitPoints (ctypes.POINTER(ULiDARcloud) cloud_ptr, float Lmax, float max_aspect_ratio) |
| Generate triangle mesh from hit points. | |
| int | getLiDARTriangleCount (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Get number of triangles in the mesh. | |
| dict | getLiDARTriangulationStats (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Filter diagnostics from the most recent triangulateHitPoints() call. | |
| getLiDARTriangleVertices_all (ctypes.POINTER(ULiDARcloud) cloud_ptr, int tri_count) | |
| Bulk-export every triangle's vertices (and source scan) in one call. | |
| None | lidarDistanceFilter (ctypes.POINTER(ULiDARcloud) cloud_ptr, float maxdistance) |
| Filter hit points by maximum distance. | |
| None | lidarReflectanceFilter (ctypes.POINTER(ULiDARcloud) cloud_ptr, float minreflectance) |
| Filter hit points by minimum reflectance. | |
| None | lidarFirstHitFilter (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Keep only first return hit points. | |
| None | lidarLastHitFilter (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Keep only last return hit points. | |
| None | exportLiDARPointCloud (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename, bool write_header=True) |
| Export point cloud to ASCII file (optionally with a '#'-prefixed column header) | |
| None | exportLiDARLeafAreaUncertainty (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export per-voxel leaf-area sampling uncertainty to a self-describing ASCII file. | |
| None | exportLiDARScans (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export all scans to an XML metadata file plus one ASCII data file per scan. | |
| None | loadLiDARXML (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Load scan metadata from XML file. | |
| None | lidarDisableMessages (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Disable console output messages. | |
| None | lidarEnableMessages (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Enable console output messages. | |
| None | addLiDARGrid (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[float] center, List[float] size, List[int] ndiv, float rotation) |
| Add a rectangular grid of voxel cells. | |
| None | addLiDARGridCell (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[float] center, List[float] size, float rotation) |
| Add a single grid cell. | |
| int | getLiDARGridCellCount (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Get number of grid cells. | |
| List[float] | getLiDARCellCenter (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get center position of a grid cell. | |
| List[float] | getLiDARCellSize (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get size of a grid cell. | |
| float | getLiDARCellLeafArea (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get leaf area of a grid cell. | |
| float | getLiDARCellLeafAreaDensity (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get leaf area density of a grid cell. | |
| None | calculateLiDARHitGridCell (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Calculate hit point grid cell assignments. | |
| None | syntheticLiDARScan (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr) |
| Perform synthetic discrete-return LiDAR scan. | |
| None | syntheticLiDARScanAppend (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr, bool append) |
| Perform synthetic scan with append control. | |
| None | syntheticLiDARScanDiscrete (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr, bool scan_grid_only, bool record_misses, bool append) |
| Perform discrete-return synthetic scan with miss-recording control. | |
| None | syntheticLiDARScanWaveform (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr, int rays_per_pulse, float pulse_distance_threshold) |
| Perform synthetic full-waveform LiDAR scan. | |
| None | syntheticLiDARScanFull (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr, int rays_per_pulse, float pulse_distance_threshold, bool scan_grid_only, bool record_misses, bool append) |
| Perform synthetic scan with full control. | |
| None | calculateLiDARLeafArea (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr) |
| Calculate leaf area for each grid cell. | |
| None | calculateLiDARLeafAreaMinHits (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr, int min_voxel_hits) |
| Calculate leaf area with minimum voxel hits threshold. | |
| None | calculateLiDARLeafAreaUncertainty (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr, int min_voxel_hits, float element_width) |
| Calculate leaf area plus per-voxel sampling uncertainty (Pimont et al. | |
| int | getLiDARCellBeamCount (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get the beam count N entering a grid cell (-1 if calculateLeafArea not run). | |
| float | getLiDARCellRelativeDensityIndex (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get the relative density index I_rdi for a grid cell. | |
| float | getLiDARCellMeanPathLength (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get the mean beam path length (m) through a grid cell. | |
| float | getLiDARCellLADVariance (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get the per-voxel LAD sampling variance (-1 if unavailable). | |
| getLiDARCellLeafAreaConfidenceInterval (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index, float confidence_level=0.95) | |
| Single-voxel leaf-area confidence interval. | |
| getLiDARGroupLADConfidenceInterval (ctypes.POINTER(ULiDARcloud) cloud_ptr, List[int] indices, float confidence_level=0.95) | |
| Group-scale LAD confidence interval over a set of cells (recommended path). | |
| None | exportLiDARTriangleNormals (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export triangle normal vectors. | |
| None | exportLiDARTriangleAreas (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export triangle areas. | |
| None | exportLiDARLeafAreas (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export leaf areas for each grid cell. | |
| None | exportLiDARLeafAreaDensities (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export leaf area densities for each grid cell. | |
| None | exportLiDARGtheta (ctypes.POINTER(ULiDARcloud) cloud_ptr, str filename) |
| Export G(theta) values for each grid cell. | |
| float | getLiDARCellGtheta (ctypes.POINTER(ULiDARcloud) cloud_ptr, int index) |
| Get G(theta) value for a grid cell. | |
| None | setLiDARCellGtheta (ctypes.POINTER(ULiDARcloud) cloud_ptr, float Gtheta, int index) |
| Set G(theta) value for a grid cell. | |
| None | gapfillLiDARMisses (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Gapfill sky/miss points. | |
| None | calculateSyntheticLiDARLeafArea (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr) |
| Calculate synthetic leaf area for validation. | |
| None | calculateSyntheticLiDARGtheta (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr) |
| Calculate synthetic G(theta) for validation. | |
| None | addLiDARTrianglesToContext (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr) |
| Add triangulated mesh to Context as primitives. | |
| None | initializeLiDARCollisionDetection (ctypes.POINTER(ULiDARcloud) cloud_ptr, ctypes.POINTER(UContext) context_ptr) |
| Initialize CollisionDetection for ray tracing. | |
| None | enableLiDARCDGPUAcceleration (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Enable GPU acceleration for collision detection. | |
| None | disableLiDARCDGPUAcceleration (ctypes.POINTER(ULiDARcloud) cloud_ptr) |
| Disable GPU acceleration for collision detection. | |
| mock_createLiDARcloud (*args, **kwargs) | |
| mock_lidar_operation (*args, **kwargs) | |
Variables | |
| argtypes | |
| restype | |
| errcheck | |
| bool | _LIDAR_FUNCTIONS_AVAILABLE |
| createLiDARcloud () = mock_createLiDARcloud | |
| Create LiDARcloud instance. | |
| addLiDARScan = mock_lidar_operation | |
| addLiDARHitPoint = mock_lidar_operation | |
|
protected |
Automatic error checking for all LiDAR functions.
Definition at line 25 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARGrid | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[float] | center, | ||
| List[float] | size, | ||
| List[int] | ndiv, | ||
| float | rotation ) |
Add a rectangular grid of voxel cells.
Definition at line 1108 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARGridCell | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[float] | center, | ||
| List[float] | size, | ||
| float | rotation ) |
Add a single grid cell.
Definition at line 1127 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARHitPoint | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID, | ||
| List[float] | xyz, | ||
| List[float] | direction ) |
Add a hit point to the cloud.
Definition at line 780 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARHitPointRGB | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID, | ||
| List[float] | xyz, | ||
| List[float] | direction, | ||
| List[float] | color ) |
Add a hit point with color to the cloud.
Definition at line 796 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARHitPoints | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID, | ||
| xyzs, | |||
| directions, | |||
| int | count, | ||
| colors = None ) |
Add many hit points to the cloud in a single call (bulk ingestion).
xyzs and directions must be contiguous float32 buffers (e.g. numpy arrays) of shape (count, 3). colors, if given, must be a contiguous float32 buffer of shape (count, 3); pass None to add without color. The buffers are passed straight through to C without per-point Python marshalling.
Definition at line 821 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARHitPointsWithData | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID, | ||
| xyzs, | |||
| directions, | |||
| int | count, | ||
| colors = None, | |||
| labels = None, | |||
| data_values = None ) |
Bulk-ingest hit points carrying a per-hit data map in one call.
xyzs/directions (and colors, if given) must be contiguous float32 buffers of shape (count, 3); directions is (radius, elevation, azimuth). labels is a list of data-map key names; data_values must be a contiguous float64 buffer of shape (count, len(labels)). Pass labels=None/empty (and data_values=None) to ingest with an empty data map.
Definition at line 840 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.addLiDARScan | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[float] | origin, | ||
| int | Ntheta, | ||
| Tuple[float, float] | theta_range, | ||
| int | Nphi, | ||
| Tuple[float, float] | phi_range, | ||
| float | exit_diameter, | ||
| float | beam_divergence, | ||
| Optional[List[str]] | column_format = None, | ||
| float | range_noise_stddev = 0.0, | ||
| float | angle_noise_stddev = 0.0, | ||
| float | scan_tilt_roll = 0.0, | ||
| float | scan_tilt_pitch = 0.0 ) |
Add a LiDAR scan to the point cloud.
Definition at line 609 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.addLiDARScanMultibeam | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[float] | origin, | ||
| List[float] | beam_zenith_angles, | ||
| int | Nphi, | ||
| Tuple[float, float] | phi_range, | ||
| float | exit_diameter, | ||
| float | beam_divergence, | ||
| Optional[List[str]] | column_format = None, | ||
| float | range_noise_stddev = 0.0, | ||
| float | angle_noise_stddev = 0.0, | ||
| float | scan_tilt_roll = 0.0, | ||
| float | scan_tilt_pitch = 0.0 ) |
Add a spinning multibeam LiDAR scan (rotating multi-channel sensor)
Definition at line 643 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.addLiDARTrianglesToContext | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr ) |
Add triangulated mesh to Context as primitives.
Definition at line 1402 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.calculateLiDARHitGridCell | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Calculate hit point grid cell assignments.
Definition at line 1184 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.calculateLiDARLeafArea | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr ) |
Calculate leaf area for each grid cell.
Definition at line 1242 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.calculateLiDARLeafAreaMinHits | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr, | ||
| int | min_voxel_hits ) |
Calculate leaf area with minimum voxel hits threshold.
Definition at line 1250 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.calculateLiDARLeafAreaUncertainty | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr, | ||
| int | min_voxel_hits, | ||
| float | element_width ) |
Calculate leaf area plus per-voxel sampling uncertainty (Pimont et al.
2018)
Definition at line 1259 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.calculateSyntheticLiDARGtheta | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr ) |
Calculate synthetic G(theta) for validation.
Definition at line 1394 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.calculateSyntheticLiDARLeafArea | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr ) |
Calculate synthetic leaf area for validation.
Definition at line 1386 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.deleteLiDARHitPoint | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Delete a hit point from the cloud.
Definition at line 946 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.destroyLiDARcloud | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Destroy LiDARcloud instance.
Definition at line 603 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.disableLiDARCDGPUAcceleration | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Disable GPU acceleration for collision detection.
Definition at line 1425 of file ULiDARWrapper.py.
| bool pyhelios.wrappers.ULiDARWrapper.doesLiDARHitDataExist | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index, | ||
| str | label ) |
Check whether a named scalar data value exists for a hit point.
Definition at line 908 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.enableLiDARCDGPUAcceleration | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Enable GPU acceleration for collision detection.
Definition at line 1418 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARGtheta | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export G(theta) values for each grid cell.
Definition at line 1358 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARLeafAreaDensities | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export leaf area densities for each grid cell.
Definition at line 1351 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARLeafAreas | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export leaf areas for each grid cell.
Definition at line 1344 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARLeafAreaUncertainty | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export per-voxel leaf-area sampling uncertainty to a self-describing ASCII file.
Definition at line 1073 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARPointCloud | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename, | ||
| bool | write_header = True ) |
Export point cloud to ASCII file (optionally with a '#'-prefixed column header)
Definition at line 1065 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARScans | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export all scans to an XML metadata file plus one ASCII data file per scan.
Definition at line 1080 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARTriangleAreas | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export triangle areas.
Definition at line 1337 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.exportLiDARTriangleNormals | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Export triangle normal vectors.
Definition at line 1330 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.gapfillLiDARMisses | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Gapfill sky/miss points.
Definition at line 1379 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARCellBeamCount | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get the beam count N entering a grid cell (-1 if calculateLeafArea not run).
Definition at line 1269 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARCellCenter | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get center position of a grid cell.
Definition at line 1150 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARCellGtheta | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get G(theta) value for a grid cell.
Definition at line 1365 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARCellLADVariance | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get the per-voxel LAD sampling variance (-1 if unavailable).
Definition at line 1290 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARCellLeafArea | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get leaf area of a grid cell.
Definition at line 1170 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.getLiDARCellLeafAreaConfidenceInterval | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index, | ||
| float | confidence_level = 0.95 ) |
Single-voxel leaf-area confidence interval.
Returns (valid, lower, upper). valid is False when the interval is gated out by the Pimont validity envelope (the bounds are then not trustworthy).
Definition at line 1301 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARCellLeafAreaDensity | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get leaf area density of a grid cell.
Definition at line 1177 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARCellMeanPathLength | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get the mean beam path length (m) through a grid cell.
Definition at line 1283 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARCellRelativeDensityIndex | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get the relative density index I_rdi for a grid cell.
Definition at line 1276 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARCellSize | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get size of a grid cell.
Definition at line 1160 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARGridCellCount | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Get number of grid cells.
Definition at line 1143 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.getLiDARGroupLADConfidenceInterval | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[int] | indices, | ||
| float | confidence_level = 0.95 ) |
Group-scale LAD confidence interval over a set of cells (recommended path).
Returns (valid, mean_lad, lower, upper).
Definition at line 1315 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARHitColor | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get color of a hit point.
Definition at line 891 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARHitCount | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Get total number of hit points.
Definition at line 864 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARHitData | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index, | ||
| str | label ) |
Get a named scalar data value for a hit point.
Definition at line 915 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARHitData_all | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | label, | ||
| int | n ) |
Bulk-export a named scalar data value for all hit points in one call.
Definition at line 922 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARHitRaydir | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get ray direction of a hit point.
Definition at line 881 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARHitScanID | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get the scan ID a hit point belongs to.
Definition at line 901 of file ULiDARWrapper.py.
| Tuple[List[float], List[float]] pyhelios.wrappers.ULiDARWrapper.getLiDARHitsXYZRGB_all | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | n ) |
Bulk-export XYZ coordinates and RGB colors for all hit points in one call.
Returns a tuple (xyz_flat, rgb_flat) of flat 3*n-element lists.
Definition at line 935 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARHitXYZ | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Get coordinates of a hit point.
Definition at line 871 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARMissDistance | ( | ) |
Return the LIDAR_MISS_DISTANCE constant (meters).
Definition at line 728 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARScanAngleNoiseStdDev | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get the angular (beam-pointing) jitter standard deviation for a scan (radians)
Definition at line 773 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARScanBeamZenithAngles | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get the per-channel beam zenith angles (radians) for a multibeam scan (empty for raster).
Definition at line 702 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARScanCount | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Get number of scans in the cloud.
Definition at line 735 of file ULiDARWrapper.py.
| List[float] pyhelios.wrappers.ULiDARWrapper.getLiDARScanOrigin | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get origin of a specific scan.
Definition at line 742 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARScanPattern | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get the scan pattern (0 = raster, 1 = spinning multibeam).
Definition at line 695 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARScanRangeNoiseStdDev | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get the range (along-beam) measurement noise standard deviation for a scan (meters)
Definition at line 766 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARScanSizePhi | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get number of azimuthal scan points.
Definition at line 759 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARScanSizeTheta | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get number of zenith scan points.
Definition at line 752 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARScanTiltPitch | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get the global scanner tilt pitch angle (radians) for a scan.
Definition at line 688 of file ULiDARWrapper.py.
| float pyhelios.wrappers.ULiDARWrapper.getLiDARScanTiltRoll | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | scanID ) |
Get the global scanner tilt roll angle (radians) for a scan.
Definition at line 681 of file ULiDARWrapper.py.
| int pyhelios.wrappers.ULiDARWrapper.getLiDARTriangleCount | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Get number of triangles in the mesh.
Definition at line 985 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.getLiDARTriangleVertices_all | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | tri_count ) |
Bulk-export every triangle's vertices (and source scan) in one call.
Returns (xyz_flat, scan_ids) as numpy arrays: xyz_flat is (tri_count*9,) float32 laid out [v0x,v0y,v0z, v1x,v1y,v1z, v2x,v2y,v2z] per triangle, and scan_ids is (tri_count,) int32. Returns empty arrays when tri_count is 0.
Definition at line 1018 of file ULiDARWrapper.py.
| dict pyhelios.wrappers.ULiDARWrapper.getLiDARTriangulationStats | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Filter diagnostics from the most recent triangulateHitPoints() call.
Returns a dict with candidate/dropped counts. Each dropped triangle is attributed to one primary reason, so: candidates == kept + dropped_lmax + dropped_aspect + dropped_degenerate where kept equals getLiDARTriangleCount(). All zero if triangulation has not been run.
Definition at line 999 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.initializeLiDARCollisionDetection | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr ) |
Initialize CollisionDetection for ray tracing.
Definition at line 1410 of file ULiDARWrapper.py.
| bool pyhelios.wrappers.ULiDARWrapper.isLiDARHitMiss | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| int | index ) |
Return True if the hit is a miss (a transmitted beam that returned nothing).
Definition at line 714 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarCoordinateRotation | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[float] | rotation ) |
Rotate all hit points by spherical rotation angles.
Definition at line 965 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarCoordinateShift | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| List[float] | shift ) |
Translate all hit points by a shift vecto.
Definition at line 953 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarDisableMessages | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Disable console output messages.
Definition at line 1094 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarDistanceFilter | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| float | maxdistance ) |
Filter hit points by maximum distance.
Definition at line 1037 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarEnableMessages | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Enable console output messages.
Definition at line 1101 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarFirstHitFilter | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Keep only first return hit points.
Definition at line 1051 of file ULiDARWrapper.py.
| bool pyhelios.wrappers.ULiDARWrapper.lidarHasMisses | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Return True if the cloud contains at least one miss.
Definition at line 721 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarLastHitFilter | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr | ) |
Keep only last return hit points.
Definition at line 1058 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarReflectanceFilter | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| float | minreflectance ) |
Filter hit points by minimum reflectance.
Definition at line 1044 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.lidarTriangulateHitPoints | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| float | Lmax, | ||
| float | max_aspect_ratio ) |
Generate triangle mesh from hit points.
Definition at line 977 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.loadLiDARXML | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| str | filename ) |
Load scan metadata from XML file.
Definition at line 1087 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.mock_createLiDARcloud | ( | * | args, |
| ** | kwargs ) |
Definition at line 1433 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.mock_lidar_operation | ( | * | args, |
| ** | kwargs ) |
Definition at line 1439 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.setLiDARCellGtheta | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| float | Gtheta, | ||
| int | index ) |
Set G(theta) value for a grid cell.
Definition at line 1372 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.syntheticLiDARScan | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr ) |
Perform synthetic discrete-return LiDAR scan.
Definition at line 1191 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.syntheticLiDARScanAppend | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr, | ||
| bool | append ) |
Perform synthetic scan with append control.
Definition at line 1199 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.syntheticLiDARScanDiscrete | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr, | ||
| bool | scan_grid_only, | ||
| bool | record_misses, | ||
| bool | append ) |
Perform discrete-return synthetic scan with miss-recording control.
Definition at line 1208 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.syntheticLiDARScanFull | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr, | ||
| int | rays_per_pulse, | ||
| float | pulse_distance_threshold, | ||
| bool | scan_grid_only, | ||
| bool | record_misses, | ||
| bool | append ) |
Perform synthetic scan with full control.
Definition at line 1227 of file ULiDARWrapper.py.
| None pyhelios.wrappers.ULiDARWrapper.syntheticLiDARScanWaveform | ( | ctypes.POINTER(ULiDARcloud) | cloud_ptr, |
| ctypes.POINTER(UContext) | context_ptr, | ||
| int | rays_per_pulse, | ||
| float | pulse_distance_threshold ) |
Perform synthetic full-waveform LiDAR scan.
Definition at line 1217 of file ULiDARWrapper.py.
|
protected |
Definition at line 582 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.addLiDARHitPoint = mock_lidar_operation |
Definition at line 1448 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.addLiDARScan = mock_lidar_operation |
Definition at line 1447 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.argtypes |
Definition at line 33 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.createLiDARcloud = mock_createLiDARcloud |
Create LiDARcloud instance.
Definition at line 1446 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.errcheck |
Definition at line 35 of file ULiDARWrapper.py.
| pyhelios.wrappers.ULiDARWrapper.restype |
Definition at line 34 of file ULiDARWrapper.py.