KS.Reactor.ksOverlapParams Class Reference

Parameters for overlap queries More...

Inheritance diagram for KS.Reactor.ksOverlapParams:
KS.Reactor.ksBaseQueryParams KS.Reactor.ksSweepParams KS.Reactor.ksSweepSlideParams

Public Member Functions

 ksOverlapParams ()
 Constructor More...
 
 ksOverlapParams (ksShape shape, ksVector3 origin, ksQuaternion rotation, ksIQueryFilter filter=null, ksIEntity excludeEntity=null, ksQueryFlags flags=ksQueryFlags.DEFAULT)
 Constructor More...
 
 ksOverlapParams (ksIEntity entity, ksIQueryFilter filter=null, ksIEntityQueryColliderFilter colliderFilter=null, bool excludeSelf=true, ksQueryFlags flags=ksQueryFlags.DEFAULT)
 Entity overlap which uses the pose of the entity when the query is performed. More...
 
 ksOverlapParams (ksIEntity entity, ksVector3 origin, ksQuaternion rotation, ksIQueryFilter filter=null, ksIEntityQueryColliderFilter colliderFilter=null, bool excludeSelf=true, ksQueryFlags flags=ksQueryFlags.DEFAULT)
 Entity overlap which sets the pose; More...
 
 ksOverlapParams (ksICollider collider, ksIQueryFilter filter=null, bool excludeColliderEntity=true, ksQueryFlags flags=ksQueryFlags.DEFAULT)
 Collider overlap that uses the collider's entity's pose. More...
 
 ksOverlapParams (ksICollider collider, ksVector3 origin, ksQuaternion rotation, ksIQueryFilter filter=null, bool excludeColliderEntity=true, ksQueryFlags flags=ksQueryFlags.DEFAULT)
 Collider overlap that sets the pose. More...
 
override bool Validate (bool log=true)
 Checks if the parameters are valid. More...
 
void CopyTo (ksOverlapParams target)
 Copies the values from this object to the target . More...
 
- Public Member Functions inherited from KS.Reactor.ksBaseQueryParams
void CopyTo (ksBaseQueryParams target)
 Copies the values from this object to the target . More...
 

Public Attributes

ksIEntityQueryColliderFilter EntityColliderFilter
 Collider filter for entity queries to determine which of the entity's colliders to run queries for. More...
 
bool UseEntityPosition = false
 If true, the position of the entity will be used in place of an explicit origin or rotation. More...
 
bool UseEntityRotation = false
 If true, the rotation of the entity will be used in place of an explicit origin or rotation. More...
 
- Public Attributes inherited from KS.Reactor.ksBaseQueryParams
ksIQueryFilter Filter
 Query filter for filtering results. If null, all hits are touching. More...
 
ksIEntity ExcludeEntity
 This entity is excluded from results. More...
 
ksQueryFlags Flags = ksQueryFlags.DEFAULT
 Query flags for filtering results. More...
 

Protected Member Functions

 ksOverlapParams (ksVector3 origin, ksQuaternion rotation, ksIQueryFilter filter, ksIEntity excludeEntity, ksQueryFlags flags, bool useEntityPosition=false, bool useEntityRotation=false)
 Private common constructor for all query object types More...
 

Protected Attributes

object m_queryObject = null
 
ksQueryObjectTypes m_queryObjectType = ksQueryObjectTypes.NONE
 
ksVector3 m_origin
 
ksQuaternion m_rotation = ksQuaternion.Identity
 

Properties

override ksQueryTypes QueryType [get]
 Query type More...
 
ksShape?? Shape [get, set]
 Get/Set the ksShape More...
 
ksIEntity?? Entity [get, set]
 Get/Set the ksIEntity More...
 
ksICollider?? Collider [get, set]
 Get/Set the ksICollider More...
 
object QueryObject [get, set]
 Get/Set the object which defines the geomeetry being queried. More...
 
override ksVector3 Origin [get, set]
 Set/Get the query origin. More...
 
ksQuaternion Rotation [get, set]
 Set/Get the query rotation. More...
 
override ksQueryObjectTypes ObjectType [get]
 The object type used in the query. More...
 
- Properties inherited from KS.Reactor.ksBaseQueryParams
abstract ksVector3 Origin [get, set]
 The starting position of the physics query. More...
 
abstract ksQueryTypes QueryType [get]
 Query type More...
 
virtual ksQueryObjectTypes ObjectType [get]
 The object type used in the query. More...
 

Detailed Description

Parameters for overlap queries

Constructor & Destructor Documentation

◆ ksOverlapParams() [1/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( )

Constructor

◆ ksOverlapParams() [2/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( ksVector3  origin,
ksQuaternion  rotation,
ksIQueryFilter  filter,
ksIEntity  excludeEntity,
ksQueryFlags  flags,
bool  useEntityPosition = false,
bool  useEntityRotation = false 
)
protected

Private common constructor for all query object types

Parameters
origin
rotation
filter
excludeEntity
flags
useEntityPosition
useEntityRotation

◆ ksOverlapParams() [3/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( ksShape  shape,
ksVector3  origin,
ksQuaternion  rotation,
ksIQueryFilter  filter = null,
ksIEntity  excludeEntity = null,
ksQueryFlags  flags = ksQueryFlags.DEFAULT 
)

Constructor

Parameters
shapeOverlap shape
originOverlap origin
rotationShape rotation
filterQuery filter for filtering results.
excludeEntityExclude this entity from results.
flagsQuery flags for filtering results.

◆ ksOverlapParams() [4/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( ksIEntity  entity,
ksIQueryFilter  filter = null,
ksIEntityQueryColliderFilter  colliderFilter = null,
bool  excludeSelf = true,
ksQueryFlags  flags = ksQueryFlags.DEFAULT 
)

Entity overlap which uses the pose of the entity when the query is performed.

Parameters
entityOverlap entity
filterQuery filter for filtering results.
colliderFilterQuery collider filter for filtering which of the entity's colliders to query with.
excludeSelfShould entity be excluded from results?
flagsQuery flags for filtering results.

◆ ksOverlapParams() [5/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( ksIEntity  entity,
ksVector3  origin,
ksQuaternion  rotation,
ksIQueryFilter  filter = null,
ksIEntityQueryColliderFilter  colliderFilter = null,
bool  excludeSelf = true,
ksQueryFlags  flags = ksQueryFlags.DEFAULT 
)

Entity overlap which sets the pose;

Parameters
entityOverlap entity
originOverlap origin
rotationShape rotation
filterQuery filter for filtering results.
colliderFilterQuery collider filter for filtering which of the entity's colliders to query with.
excludeSelfShould entity be excluded from results?
flagsQuery flags for filtering results.

◆ ksOverlapParams() [6/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( ksICollider  collider,
ksIQueryFilter  filter = null,
bool  excludeColliderEntity = true,
ksQueryFlags  flags = ksQueryFlags.DEFAULT 
)

Collider overlap that uses the collider's entity's pose.

Parameters
colliderOverlap collider
filterQuery filter for filtering results.
excludeColliderEntityShould collider 's entity be excluded from results?
flagsQuery flags for filtering results.

◆ ksOverlapParams() [7/7]

KS.Reactor.ksOverlapParams.ksOverlapParams ( ksICollider  collider,
ksVector3  origin,
ksQuaternion  rotation,
ksIQueryFilter  filter = null,
bool  excludeColliderEntity = true,
ksQueryFlags  flags = ksQueryFlags.DEFAULT 
)

Collider overlap that sets the pose.

Parameters
colliderOverlap collider
originOverlap origin
rotationShape rotation
filterQuery filter for filtering results.
excludeColliderEntityShould collider 's entity be excluded from results?
flagsQuery flags for filtering results.

Member Function Documentation

◆ CopyTo()

void KS.Reactor.ksOverlapParams.CopyTo ( ksOverlapParams  target)

Copies the values from this object to the target .

Parameters
targetTarget to copy to.

◆ Validate()

override bool KS.Reactor.ksOverlapParams.Validate ( bool  log = true)
virtual

Checks if the parameters are valid.

The parameters are invalid if Shape is null or if ksBaseQueryParams.Filter is a ksCollisionFilter

Parameters
logIf true, logs warnings describing what is invalid if anything is invalid.
Returns
True if the params are valid.

Reimplemented from KS.Reactor.ksBaseQueryParams.

Member Data Documentation

◆ EntityColliderFilter

ksIEntityQueryColliderFilter KS.Reactor.ksOverlapParams.EntityColliderFilter

Collider filter for entity queries to determine which of the entity's colliders to run queries for.

Only used for entity queries.

◆ UseEntityPosition

bool KS.Reactor.ksOverlapParams.UseEntityPosition = false

If true, the position of the entity will be used in place of an explicit origin or rotation.

This value does not affect ksShape overlap objects.

◆ UseEntityRotation

bool KS.Reactor.ksOverlapParams.UseEntityRotation = false

If true, the rotation of the entity will be used in place of an explicit origin or rotation.

This value does not affect ksShape overlap objects.

Property Documentation

◆ Collider

ksICollider?? KS.Reactor.ksOverlapParams.Collider
getset

Get/Set the ksICollider

◆ Entity

ksIEntity?? KS.Reactor.ksOverlapParams.Entity
getset

Get/Set the ksIEntity

◆ ObjectType

override ksQueryObjectTypes KS.Reactor.ksOverlapParams.ObjectType
get

The object type used in the query.

◆ Origin

override ksVector3 KS.Reactor.ksOverlapParams.Origin
getset

Set/Get the query origin.

When UseEntityPosition is false, queries using colliders will add the collider offset to the origin to determine the geometry positioning.

◆ QueryObject

object KS.Reactor.ksOverlapParams.QueryObject
getset

Get/Set the object which defines the geomeetry being queried.

◆ QueryType

override ksQueryTypes KS.Reactor.ksOverlapParams.QueryType
get

Query type

◆ Rotation

ksQuaternion KS.Reactor.ksOverlapParams.Rotation
getset

Set/Get the query rotation.

When UseEntityRotation is false, queries using colliders will add the collider rotataion to this rotatation to determine the geometry positioning.

◆ Shape

ksShape?? KS.Reactor.ksOverlapParams.Shape
getset

Get/Set the ksShape