Class TAbstractComposedGeometryNode

Unit

Declaration

type TAbstractComposedGeometryNode = class(TAbstractGeometryNode)

Description

Base node type for all composed 3D geometry.

Hierarchy

Overview

Methods

Protected function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override;
Public function InternalCoord(State: TX3DGraphTraverseState; out ACoord: TMFVec3f): boolean; override;
Public function CoordField: TSFNode; override;
Public function TexCoordField: TSFNode; override;
Public function ColorField: TSFNode; override;
Public function SolidField: TSFBool; override;
Public function AttribField: TMFNode; override;
Public function NormalField: TSFNode; override;
Public function TangentField: TSFNode; override;
Public function InternalFogCoord: TMFFloat; override;
Public procedure CreateNode; override;
Public class function ClassX3DType: String; override;
Public procedure SetAttrib(const Value: array of TAbstractVertexAttributeNode);
Public procedure SetRadianceTransfer(const Value: array of TVector3); overload;
Public procedure SetRadianceTransfer(const Value: TVector3List); overload;

Properties

Public property FdAttrib: TMFNode read FFdAttrib;
Public property FdColor: TSFNode read FFdColor;
Public property Color: TAbstractColorNode read GetColor write SetColor;
Public property FdCoord: TSFNode read FFdCoord;
Public property Coord: TAbstractCoordinateNode read GetCoord write SetCoord;
Public property FdFogCoord: TSFNode read FFdFogCoord;
Public property FogCoord: TFogCoordinateNode read GetFogCoord write SetFogCoord;
Public property FdNormal: TSFNode read FFdNormal;
Public property Normal: TAbstractNormalNode read GetNormal write SetNormal;
Public property FdTangent: TSFNode read FFdTangent;
Public property Tangent: TTangentNode read GetTangent write SetTangent;
Public property FdTexCoord: TSFNode read FFdTexCoord;
Public property TexCoord: TAbstractTextureCoordinateNode read GetTexCoord write SetTexCoord;
Public property FdCcw: TSFBool read FFdCcw;
Public property Ccw: Boolean read GetCcw write SetCcw;
Public property FdColorPerVertex: TSFBool read FFdColorPerVertex;
Public property ColorPerVertex: Boolean read GetColorPerVertex write SetColorPerVertex;
Public property FdNormalPerVertex: TSFBool read FFdNormalPerVertex;
Public property NormalPerVertex: Boolean read GetNormalPerVertex write SetNormalPerVertex;
Public property FdSolid: TSFBool read FFdSolid;
Public property FdRadianceTransfer: TMFVec3f read FFdRadianceTransfer;

Description

Methods

Protected function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override;

This item has no description. Showing description inherited from TX3DNode.DirectEnumerateActive.

Enumerate all active child nodes of given node.

"Active nodes" are the ones affecting current look or collisions, e.g. from Switch node only one child will be enumerated. See Traverse for more precise definition.

"Direct" means that this enumerates only direct descendants, i.e. this is not recursive. See methods like Traverse or EnumerateNodes if you want recursive behavior.

This can enumerate both VRML1Children nodes and nodes within TSFNode and TMFNode fields.

Default implementation in this class enumerates all Children nodes of VRML 1.0. If you need to remove some children for VRML 1.0 (e.g. for Switch or LOD nodes) or add some children for VRML 2.0 you have to override this. You do not need to call inherited when overriding this — in fact, you should not, if you want to omit some nodes.

Stops and returns immediately if Func returns non-nil for some child.

Public function InternalCoord(State: TX3DGraphTraverseState; out ACoord: TMFVec3f): boolean; override;

Access the coordinate node, and inside this node access it's points list.

Public function CoordField: TSFNode; override;

This item has no description. Showing description inherited from TAbstractGeometryNode.CoordField.

Node's "coord" field where you can place TCoordinateNode, or Nil if not available.

This gives you more possibilities than the InternalCoord and InternalCoordinates methods (as you can assign texCoord using this). However, it doesn't work for old VRML 1.0 (since they have coordinate information, but no "coord" field).

Public function TexCoordField: TSFNode; override;

This item has no description. Showing description inherited from TAbstractGeometryNode.TexCoordField.

Node's texCoord field, or Nil if not available. Various nodes may have different exact rules about what is allowed here, but everything allows TextureCoordinateGenerator and ProjectedTextureCoordinate instances.

This gives you more possibilities than the InternalTexCoord method (as you can assign texCoord using this), however it may be not available in all cases — for example VRML 1.0 nodes do not have texCoord field, but they may have a texture coordinate node (from the state).

Public function ColorField: TSFNode; override;

This item has no description.

Public function SolidField: TSFBool; override;

This item has no description. Showing description inherited from TAbstractGeometryNode.SolidField.

Is backface culling used. Nil if given geometry node doesn't have a field to control it.

Public function AttribField: TMFNode; override;

This item has no description.

Public function NormalField: TSFNode; override;

This item has no description. Showing description inherited from TAbstractGeometryNode.NormalField.

Node's "normal" field where you can place TNormalNode, or Nil if not available.

Public function TangentField: TSFNode; override;

This item has no description. Showing description inherited from TAbstractGeometryNode.TangentField.

Node's "tangent" field where you can place TTangentNode, or Nil if not available.

Public function InternalFogCoord: TMFFloat; override;

This item has no description.

Public procedure CreateNode; override;

Create node fields and events.

Public class function ClassX3DType: String; override;

This item has no description. Showing description inherited from TX3DNode.ClassX3DType.

Node type name in VRML/X3D, for this class. Normal VRML/X3D node classes should override this to return something non-empty, and then X3DType automatically will return the same value.

Empty for classes that don't have a hardcoded VRML/X3D node name, like a special TX3DUnknownNode. Such special classes should override then X3DType to return actual non-empty name there.

You usually should call X3DType. The only use of this method is that it works on classes (it's "class function"), without needing at actual instance.

Public procedure SetAttrib(const Value: array of TAbstractVertexAttributeNode);

This item has no description.

Public procedure SetRadianceTransfer(const Value: array of TVector3); overload;

This item has no description.

Public procedure SetRadianceTransfer(const Value: TVector3List); overload;

This item has no description.

Properties

Public property FdAttrib: TMFNode read FFdAttrib;

Internal wrapper for property Attrib. This wrapper API may change, we advise to access simpler Attrib instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property FdColor: TSFNode read FFdColor;

Internal wrapper for property Color. This wrapper API may change, we advise to access simpler Color instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Color: TAbstractColorNode read GetColor write SetColor;

This item has no description.

Public property FdCoord: TSFNode read FFdCoord;

Internal wrapper for property Coord. This wrapper API may change, we advise to access simpler Coord instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Coord: TAbstractCoordinateNode read GetCoord write SetCoord;

This item has no description.

Public property FdFogCoord: TSFNode read FFdFogCoord;

Internal wrapper for property FogCoord. This wrapper API may change, we advise to access simpler FogCoord instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property FogCoord: TFogCoordinateNode read GetFogCoord write SetFogCoord;

This item has no description.

Public property FdNormal: TSFNode read FFdNormal;

Internal wrapper for property Normal. This wrapper API may change, we advise to access simpler Normal instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Normal: TAbstractNormalNode read GetNormal write SetNormal;

This item has no description.

Public property FdTangent: TSFNode read FFdTangent;

Internal wrapper for property Tangent. This wrapper API may change, we advise to access simpler Tangent instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Tangent: TTangentNode read GetTangent write SetTangent;

Tangent vectors describe the tangent coordinate-space, used by the bump mapping algorithm. If specified, the ordering of tangents should be the same as normals, i.e. they should follow the NormalPerVertex and such properties.

Public property FdTexCoord: TSFNode read FFdTexCoord;

Internal wrapper for property TexCoord. This wrapper API may change, we advise to access simpler TexCoord instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property TexCoord: TAbstractTextureCoordinateNode read GetTexCoord write SetTexCoord;

This item has no description.

Public property FdCcw: TSFBool read FFdCcw;

Internal wrapper for property Ccw. This wrapper API may change, we advise to access simpler Ccw instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Ccw: Boolean read GetCcw write SetCcw;

This item has no description.

Public property FdColorPerVertex: TSFBool read FFdColorPerVertex;

Internal wrapper for property ColorPerVertex. This wrapper API may change, we advise to access simpler ColorPerVertex instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property ColorPerVertex: Boolean read GetColorPerVertex write SetColorPerVertex;

This item has no description.

Public property FdNormalPerVertex: TSFBool read FFdNormalPerVertex;

Internal wrapper for property NormalPerVertex. This wrapper API may change, we advise to access simpler NormalPerVertex instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property NormalPerVertex: Boolean read GetNormalPerVertex write SetNormalPerVertex;

This item has no description.

Public property FdSolid: TSFBool read FFdSolid;

Internal wrapper for property Solid. This wrapper API may change, we advise to access simpler Solid instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property FdRadianceTransfer: TMFVec3f read FFdRadianceTransfer;

Internal wrapper for property RadianceTransfer. This wrapper API may change, we advise to access simpler RadianceTransfer instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).


Generated by PasDoc 0.16.0-snapshot.