Table of Contents

Class CollisionUtil

Namespace
Hi.Collision
Assembly
HiCbtr.dll

Utility of tree grid related structure.

public static class CollisionUtil
Inheritance
CollisionUtil
Inherited Members

Methods

Detect(CubeTree, TriTree, Mat4d, double, int)

Get CollisionFlag between treeA and treeB*matAB.

public static CollisionFlag Detect(this CubeTree treeA, TriTree treeB, Mat4d matAB, double safeDistance, int cap = 1024)

Parameters

treeA CubeTree

treeA

treeB TriTree

treeB

matAB Mat4d

relative transform matrix to take B to the position relative to A. The mat is Inv(matA)*matB.

safeDistance double

safe distance for the flag judgement

cap int

Returns

CollisionFlag

CollisionFlag

Detect(ICollidable, ICollidable, Mat4d, double, int)

Get CollisionFlag between collidableA and collidableB*matAB.

public static CollisionFlag Detect(this ICollidable collidableA, ICollidable collidableB, Mat4d matAB, double safeDistance = 0, int cap = 1024)

Parameters

collidableA ICollidable

collidable A

collidableB ICollidable

collidable B

matAB Mat4d

relative transform matrix to take B to the position relative to A. The mat is Inv(matA)*matB. If one of collidableA and collidableB is null, return OUTSIDE_SAFE_DISTANCE.

safeDistance double

safe distance for the flag judgement

cap int

Returns

CollisionFlag

CollisionFlag

Detect(TriTree, TriTree, Mat4d, double, int)

Get CollisionFlag between treeA and treeB*matAB.

public static CollisionFlag Detect(this TriTree treeA, TriTree treeB, Mat4d matAB, double safeDistance, int cap = 1024)

Parameters

treeA TriTree

treeA

treeB TriTree

treeB

matAB Mat4d

relative transform matrix to take B to the position relative to A. The mat is Inv(matA)*matB.

safeDistance double

safe distance for the flag judgement

cap int

Returns

CollisionFlag

CollisionFlag