API reference
API reference
Select your platform
No SDKs available
No versions available

Conecaster Class

Extends MonoBehaviour

Protected Fields

_started : bool
Signature
bool Oculus.Interaction.Conecaster._started

Fields

DefaultComparer : ConecastResultComparer
The default comparer used to sort the results of a conecast, if no override comparer is provided through SetOverrideComparer()
Signature
ConecastResultComparer Oculus.Interaction.Conecaster.DefaultComparer

Properties

ConeAngle : float
[Get][Set]
The maximum acceptable angular offset between the gaze ray and a candidate interactable.
Signature
float Oculus.Interaction.Conecaster.ConeAngle
ConeLength : float
[Get][Set]
(Meters, World) The length of the cone as measured from the origin along the gaze ray.
Signature
float Oculus.Interaction.Conecaster.ConeLength

Protected Methods

Awake ()
Signature
virtual void Oculus.Interaction.Conecaster.Awake()
Returns
void
Conecast ( worldPose , rootConecastables )
Signature
void Oculus.Interaction.Conecaster.Conecast(Pose worldPose, IReadOnlyList< IConecastTarget > rootConecastables)
Parameters
worldPose: Pose
rootConecastables: IReadOnlyList< IConecastTarget >
Returns
void
GetResults ()
Get the results of the last Conecast call.
Results are sorted from best to worst, so index 0 represents the closest target to the cone ray, unless overridden by custom comparers (see SetOverrideComparer).
Signature
ReadOnlySpan<ConecastResult> Oculus.Interaction.Conecaster.GetResults()
Returns
ReadOnlySpan< ConecastResult >  The sorted collection of ConecastResults
GetRoot ( source )
Get the ConecastResult representing the root IConecastTarget used in the conecast.
This should only be called with ConecastResults obtained from GetResults() within the same frame.
Signature
ConecastResult Oculus.Interaction.Conecaster.GetRoot(in ConecastResult source)
Parameters
source: in ConecastResult  The result to retrieve the root for.
Returns
ConecastResult  The root. If not found, will return the source.
OnDisable ()
Signature
virtual void Oculus.Interaction.Conecaster.OnDisable()
Returns
void
OnEnable ()
Signature
virtual void Oculus.Interaction.Conecaster.OnEnable()
Returns
void
Start ()
Signature
virtual void Oculus.Interaction.Conecaster.Start()
Returns
void
TryGetParent ( source , parent )
Get the ConecastResult representing the parent IConecastTarget of the given ConecastResult.
This should only be called with ConecastResults obtained from GetResults() within the same frame.
Signature
bool Oculus.Interaction.Conecaster.TryGetParent(in ConecastResult source, out ConecastResult parent)
Parameters
source: in ConecastResult  The result to retrieve the parent for.
parent: out ConecastResult  The parent of the provided source.
Returns
bool  True if a parent was found, false if the source is a root target.

Methods

SetOverrideComparer ( overrideComparer )
If provided, this custom comparer will override the DefaultComparer used to sort the results of a conecast.
Signature
void Oculus.Interaction.Conecaster.SetOverrideComparer(IComparer< ConecastHit > overrideComparer)
Parameters
overrideComparer: IComparer< ConecastHit >
Returns
void

Inner Class

ConsensusFilter Class

Constructors

ConsensusFilter ( getTimespan , preWarmTargetCount , preWarmSamplesCount )
Creates a new consensus filter that pre-allocates memory for targets and data points.
Signature
Oculus.Interaction.Conecaster.ConsensusFilter< TData >.ConsensusFilter(Func< float > getTimespan, int preWarmTargetCount, int preWarmSamplesCount)
Parameters
getTimespan: Func< float >  Func that returns a time span. Represents the length of time to "dwell" on a target before considering it valid.
preWarmTargetCount: int  To avoid runtime allocations due to internal data structures growing, you may provide a count representing the maximumum number of unique targets anticipated in the provided time span.
preWarmSamplesCount: int  To avoid runtime allocations due to internal data structures growing, you may provide a count representing the maximum number of samples added via AddResult in the provided time span.
ConsensusFilter ( getTimespan )
Creates a new consensus filter with a default allocation of memory for targets and data points.
Signature
Oculus.Interaction.Conecaster.ConsensusFilter< TData >.ConsensusFilter(Func< float > getTimespan)
Parameters
getTimespan: Func< float >  Func that returns a time span. Represents the length of time to "dwell" on a target before considering it valid.

Methods

AddResult ( target , result , timestamp )
Signature
void Oculus.Interaction.Conecaster.ConsensusFilter< TData >.AddResult(int? target, TData result, float timestamp)
Parameters
target: int?
result: TData
timestamp: float
Returns
void
GetConsensus ()
Signature
TData Oculus.Interaction.Conecaster.ConsensusFilter< TData >.GetConsensus()
Returns
TData

Inner Struct

ConecastResult Struct

Constructors

ConecastResult ( targetId , hit , originPoseWorld )
Signature
Oculus.Interaction.Conecaster.ConecastResult.ConecastResult(int targetId, ConecastHit hit, Pose originPoseWorld)
Parameters
targetId: int
originPoseWorld: Pose

Fields

Hit : readonly ConecastHit
The hit data for the conecast.
Signature
readonly ConecastHit Oculus.Interaction.Conecaster.ConecastResult.Hit
IsValid : readonly bool
Is this a valid result, where default structs or structs created the the paramaterless constructor will return false.
True otherwise.
Signature
readonly bool Oculus.Interaction.Conecaster.ConecastResult.IsValid
OriginPoseWorld : readonly Pose
The source pose of the conecast.
Signature
readonly Pose Oculus.Interaction.Conecaster.ConecastResult.OriginPoseWorld
TargetId : readonly int
The ID representing the target of the conecast from IConecastTarget.Id
Signature
readonly int Oculus.Interaction.Conecaster.ConecastResult.TargetId