• Marus Documentation
Show / Hide Table of Contents
  • Marus
    • BoatPhysics
    • BoatPhysicsMath
    • DebugPhysics
    • ModifyBoatMesh
    • SlammingForceData
    • TriangleData
  • Marus.Actuators
    • AUVRosController
    • PwmThruster
    • PwmThruster.AllowedVoltages
    • ThrusterController
  • Marus.Actuators.Datasheets
    • T200ThrusterDatasheet
  • Marus.Communications
    • RangeReading
  • Marus.Communications.Acoustics
    • AcousticDevice
    • AcousticDevice<T>
    • AcousticMedium
    • AcousticMediumHelper
    • AcousticMessage
    • AcousticReceiver
    • AcousticTranciever
    • AcousticTransmiter
    • AcousticTransmiterParams
    • MediumBase
    • Nanomodem
    • NanomodemMessage
    • NanomodemROS
    • TransmitionType
  • Marus.Communications.Rf
    • LoraDevice
    • LoraDeviceRos
    • LoraDummyTransmitter
    • LoraMessage
    • LoraRanging
    • LoraRangingRos
    • RfDevice
    • RfDevice<T>
    • RfMediumHelper
    • RfMessage
    • RfReceiver
    • RfTranciever
    • RfTransmiter
    • RfTransmitterParams
    • TransmitionType
  • Marus.Controllers
    • DiverGuidanceController
    • FishController
    • VesselForceController
    • VesselVelocityController
  • Marus.Core
    • GeographicFrame
    • GeoPoint
    • PauseMenu
    • TfExtensions
    • TimeHandler
  • Marus.CustomInspector
    • ConditionalHideAttribute
    • ConditionalHideInInspectorAttribute
    • HideInRuntimeInspectorAttribute
  • Marus.Logger
    • DataLogger
    • DataLoggerUtilities
    • GameObjectLogger
    • GameObjectLogger<T>
    • LogRecord
    • LogRecord<T>
  • Marus.Networking
    • MessageExtensions
    • ParamServerHandler
    • RosConnection
    • ServerStreamer<T>
    • ServerStreamer<T>.MessageHandleMode
    • ServiceCaller
    • TfHandler
    • VisualizationROS
  • Marus.NoiseDistributions
    • AlfaBeta
    • Gaussian
    • INoise
    • Noise
    • NoiseParameters
  • Marus.ObjectAnnotation
    • CameraObjectDetectionSaver
    • ClassObjects
    • ObjectRecord
    • PointCloudSegmentationSaver
  • Marus.Ocean
    • WaterHeightSampler
  • Marus.Quest
    • QuestControl
    • QuestWaypoint
  • Marus.ROS
    • TfStreamerROS
  • Marus.Sensors
    • CameraSensor
    • CameraSensorROS
    • LidarConfig
    • LidarReading
    • RaycastJobHelper
    • RaycastJobHelper<T>
    • RaycastJobHelper<T>.CreateRaycastCommandsJob
    • RaycastJobHelper<T>.ReadbackDataJob
    • RaycastLidar
    • RaycastLidarPointCloud2ROS
    • RaycastLidarROS
    • RayDefinitionType
    • RayInterval
    • SensorBase
    • SensorCallback
    • SensorSampler
    • SensorStreamer<TClient, TMsg>
    • Sonar2D
    • Sonar3D
    • SonarReading
  • Marus.Sensors.AIS
    • AISClassType
    • AisDevice
    • AisManager
    • AisMessage
    • AISMessageType
    • AisSensor
    • AisSensorROS
    • ManeuverIndicator
    • MMSIGenerator
    • NavigationStatus
    • PositionAccuracy
    • PositionReportClassA
    • Raim
    • TimeIntervals
  • Marus.Sensors.Core
    • CameraFrustum
    • ComputeBufferDataExtractor<T>
    • DepthCameras
    • DepthCameras.BufferPrecision
    • LidarMessage
    • PointField
    • SphericalProjectionFilter
  • Marus.Sensors.Primitive
    • DepthSensor
    • DvlSensor
    • GnssSensor
    • ImuROS
    • ImuSensor
    • PoseSensor
    • PoseSensorROS
    • RangeSensor
    • Sonar2DROS
    • Sonar3DROS
    • SonarPrimitive
    • SonarPrimitiveROS
  • Marus.Sensors.ROS
    • DepthSensorROS
    • DvlROS
    • GnssROS
  • Marus.StatisticsUI
    • MousePointToImagePointController
    • PathRecordingsVisualization
    • ScrollViewController
    • StatisticsEntry
    • StatisticsUIController
  • Marus.UI
    • Compass
    • Depth
  • Marus.Utils
    • Helpers
    • PCDLoader
    • PCDSaver
    • PointCloud
    • Singleton<T>
  • Marus.Visualization
    • ArrowVisualController
    • LineVisualController
    • LiveMovementVisualizer
    • ObjectBoundingBoxVisualizer
    • PathRecorder
    • PathVisualController
    • PointCloudManager
    • PointCloudRosVisualizer
    • PointVisualController
    • TransformVisualController
    • Visualizer
    • Visualizer.FilterValues
  • Marus.Visualization.Primitives
    • Arrow
    • Line
    • Path
    • Point
    • PointcloudMesh
    • Transform
    • VisualElement
  • TestUtils
    • ParameterServerMock
    • PingMock
    • TestClient
    • TfMock
    • Utils
  • UniColliderInterpolator
    • BoundsDivider
    • ColliderInterpolator
  • UnityStandardAssets.Characters.ThirdPerson
    • ThirdPersonSwimmer
    • ThirdPersonSwimmerController

Class RaycastLidar

Lidar implemented using rays Implemented using IJobParallelFor on CPU Can drop performance

Inheritance
System.Object
SensorBase
RaycastLidar
Inherited Members
SensorBase.Awake()
SensorBase.frameId
SensorBase.SampleFrequency
SensorBase.streamInFixedUpdate
SensorBase._vehicle
SensorBase.hasData
SensorBase.vehicle
SensorBase.UpdateVehicle()
SensorBase.Logger
SensorBase.Log<W>(W)
Namespace: Marus.Sensors
Assembly: cs.temp.dll.dll
Syntax
public class RaycastLidar : SensorBase

Fields

_rayAngles

Declaration
public NativeArray<(float, float)> _rayAngles
Field Value
Type Description
NativeArray<System.ValueTuple<System.Single, System.Single>>

_rayIntervals

Declaration
public List<RayInterval> _rayIntervals
Field Value
Type Description
List<RayInterval>

_rayType

Declaration
public RayDefinitionType _rayType
Field Value
Type Description
RayDefinitionType

blackHoleLayers

Declaration
public LayerMask blackHoleLayers
Field Value
Type Description
LayerMask

ConfigIndex

Declaration
public int ConfigIndex
Field Value
Type Description
System.Int32

Configs

Declaration
public List<LidarConfig> Configs
Field Value
Type Description
List<LidarConfig>

HeightRes

Number of vertical rays

Declaration
public int HeightRes
Field Value
Type Description
System.Int32

HorizontalFieldOfView

Declaration
public float HorizontalFieldOfView
Field Value
Type Description
System.Single

MaxDistance

Maximum range in meters

Declaration
public float MaxDistance
Field Value
Type Description
System.Single

MinDistance

Minimum range in meters

Declaration
public float MinDistance
Field Value
Type Description
System.Single

ParticleMaterial

Material set for point cloud display

Declaration
public Material ParticleMaterial
Field Value
Type Description
Material

pointCloudShader

PointCloud compute shader

Declaration
public ComputeShader pointCloudShader
Field Value
Type Description
ComputeShader

Points

Declaration
public NativeArray<Vector3> Points
Field Value
Type Description
NativeArray<Vector3>

Readings

Declaration
public NativeArray<LidarReading> Readings
Field Value
Type Description
NativeArray<LidarReading>

VerticalFieldOfView

Declaration
public float VerticalFieldOfView
Field Value
Type Description
System.Single

WidthRes

Number of horizontal rays

Declaration
public int WidthRes
Field Value
Type Description
System.Int32

Methods

ApplyLidarConfig()

This method applies parameters and configuration Active configuration is selected using dropdown from inspector

Declaration
public void ApplyLidarConfig()

InitializeRayArray()

Initializes ray directions from ray angles, custom ray intervals or uniform distribution. These directions emulate lidar vertical array rotating to get the surrounding pointcloud

Declaration
public void InitializeRayArray()

SampleSensor()

Declaration
protected override void SampleSensor()
Overrides
SensorBase.SampleSensor()
In This Article
Back to top Generated by DocFX