Class TCollisionNode

Unit

Declaration

type TCollisionNode = class(TAbstractX3DGroupingNode, IAbstractSensorNode)

Description

Grouping node that specifies the collision detection properties for its children.

Hierarchy

Overview

Methods

Protected function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override;
Protected function DirectEnumerateActiveForTraverse( Func: TEnumerateChildrenFunction; StateStack: TX3DGraphTraverseStateStack): Pointer; override;
Public procedure CreateNode; override;
Public class function ClassX3DType: string; override;
Public class function URNMatching(const URN: string): boolean; override;
Public procedure CollideAsBox(const VisibleNode: TX3DNode; const Box: TBox3D);

Properties

Public property FdEnabled: TSFBool read FFdEnabled;
Public property EventCollideTime: TSFTimeEvent read FEventCollideTime;
Public property EventIsActive: TSFBoolEvent read FEventIsActive;
Public property FdProxy: TSFNode read FFdProxy;
Public property Enabled: boolean read GetEnabled write SetEnabled;
Public property Proxy: TAbstractChildNode read GetProxy write SetProxy;

Description

Methods

Protected function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override;
 
Protected function DirectEnumerateActiveForTraverse( Func: TEnumerateChildrenFunction; StateStack: TX3DGraphTraverseStateStack): Pointer; override;
 
Public procedure CreateNode; override;
 
Public class function ClassX3DType: string; override;
 
Public class function URNMatching(const URN: string): boolean; override;
 
Public procedure CollideAsBox(const VisibleNode: TX3DNode; const Box: TBox3D);

Setup this Collision node to show VisibleNode, but collide as a Box. This sets VisibleNode as the only child of this collision node, and sets the Proxy field to a simple box with given bounds. The Enabled field is unchanged (by default True).

It honors the case of Box being empty correctly. Proxy is then non-nil, but without any geometry. So the collisions are effectively disabled, in a consistent way (without changing the Enabled field).

Properties

Public property FdEnabled: TSFBool read FFdEnabled;
 
Public property EventCollideTime: TSFTimeEvent read FEventCollideTime;
 
Public property EventIsActive: TSFBoolEvent read FEventIsActive;
 
Public property FdProxy: TSFNode read FFdProxy;
 
Public property Enabled: boolean read GetEnabled write SetEnabled;
 
Public property Proxy: TAbstractChildNode read GetProxy write SetProxy;
 

Generated by PasDoc 0.15.0.