docs.unity3d.com
    Show / Hide Table of Contents

    Class RangeFinderController

    A RangeFinder is a device that throw only one laser beam to measure the distance and/or intensity.

    Inheritance
    Object
    NodeRuntime
    RangeFinderController
    Inherited Members
    NodeRuntime._parent
    NodeRuntime._portList
    NodeRuntime._queryPath
    NodeRuntime._tickCPUTimeNs
    NodeRuntime.Initialize(SystemGraphComponent)
    NodeRuntime.InternalInitialize()
    NodeRuntime.Start()
    NodeRuntime.Disable()
    NodeRuntime.Update()
    NodeRuntime.FixedUpdate()
    NodeRuntime.OnPortAdded(String, Type, String, PortDirection, FieldExtra, IPortType)
    NodeRuntime.OnPortRemoved(String)
    NodeRuntime.InitializeDynamicPorts(SystemGraphComponent)
    NodeRuntime.QueryPath
    NodeRuntime.TickCPUTimeNs
    NodeRuntime.PortDataList
    Namespace: Mechatronics.SensorSDK
    Syntax
    [NodeCategory("Controller", "RangeFinder", NodeTick.Synchronous, (LifeCycle)0, 0F, NodeMode.Standard, false)]
    public class RangeFinderController : NodeRuntime

    Fields

    framePeriod

    Declaration
    [Tooltip("Period that define a frame of data.")]
    [Field("framePeriod", PortDirection.Right, FieldExtra.Write)]
    [SerializeField]
    protected PortType<float> framePeriod
    Field Value
    Type Description
    PortType<Single>

    samplingRate

    Declaration
    [Tooltip("Sensor sampling frequency (Sample per seconds)")]
    [Field("Sampling rate", PortDirection.Left, FieldExtra.Read)]
    [SerializeField]
    protected PortType<uint> samplingRate
    Field Value
    Type Description
    PortType<UInt32>

    samplingRequest

    Declaration
    [Tooltip("List of orientations where to take a sample from.")]
    [Field("SamplingRequest", PortDirection.Right, FieldExtra.Write)]
    [SerializeField]
    protected PortType<SamplingRequest> samplingRequest
    Field Value
    Type Description
    PortType<SamplingRequest>

    Methods

    Enable(Scheduler.ClockState)

    Initialize the controller.

    Declaration
    public override void Enable(Scheduler.ClockState clockState)
    Parameters
    Type Name Description
    Scheduler.ClockState clockState

    The parameters of the waveform associated to this node

    Overrides
    NodeRuntime.Enable(Scheduler.ClockState)

    OnTick(Double, Double, Scheduler.ClockState, Scheduler.Signal)

    Trigger a measurement based on the _samplingRate.

    Declaration
    public override bool OnTick(double now, double eventTime, Scheduler.ClockState clockState, Scheduler.Signal signal)
    Parameters
    Type Name Description
    Double now

    The current time in seconds of the scheduler clocksource

    Double eventTime

    The current time in seconds of the scheduler waveform. This is independent from the clocksource time and aligned to every rising edge time in the waveform.

    Scheduler.ClockState clockState

    The current parameters of the waveform event associated to this node

    Scheduler.Signal signal

    Signals that the scheduler pass to the OnTick event receiver. These are signals that describe the action that should be done in the Node. For example, integrate this tick as multiple events.

    Returns
    Type Description
    Boolean

    Returns true if time integration was performed

    Overrides
    NodeRuntime.OnTick(Double, Double, Scheduler.ClockState, Scheduler.Signal)
    Back to top
    Terms of use
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023