Class TIndexedTriangleSetNode

Unit

Declaration

type TIndexedTriangleSetNode = class(TAbstractComposedGeometryNode)

Description

A collection of triangles.

Hierarchy

Overview

Methods

Public constructor Create(const AX3DName: string = ''; const ABaseUrl: String = ''); override;
Public function FieldSetByEvent(const Event: TX3DEvent): TX3DField; override;
Public function CoordIndexField: TMFLong; override;
Public procedure InternalCoordPolygons( State: TX3DGraphTraverseState; PolygonHandler: TIndexedPolygonHandler); override;
Public function TrianglesCount(State: TX3DGraphTraverseState; ProxyGeometry: TAbstractGeometryNode; ProxyState: TX3DGraphTraverseState): Cardinal; override;
Public procedure CreateNode; override;
Public class function ClassX3DType: String; override;
Public procedure SetIndex(const Value: array of Int32); overload;
Public procedure SetIndex(const Value: TInt32List); overload;

Properties

Public property EventSet_index: TMFInt32Event read FEventSet_index;
Public property FdIndex: TMFInt32 read FFdIndex;

Description

Methods

Public constructor Create(const AX3DName: string = ''; const ABaseUrl: String = ''); override;

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

Constructor. Initializes various properties:

  • Name, BaseUrl are initialized from given parameters.

  • The Fields, Events lists are filled in every descendant, to have all the fields/events defined by the specification.

  • DefaultContainerField, and other node-specific stuff, is filled in descendants. This is actually implemented in CreateNode, that is called at the end of this constructor.

Public function FieldSetByEvent(const Event: TX3DEvent): TX3DField; override;

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

Find field set by given event of this node. Nil if not found (including when this Event doesn't actually belong to this node).

Public function CoordIndexField: TMFLong; override;

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

Node's list of coordinate indexes.

In base TAbstractGeometryNode class this always returns Nil.

Override this for descendants that have some kind of "coordIndex" or "index" field used to index InternalCoord array.

Public procedure InternalCoordPolygons( State: TX3DGraphTraverseState; PolygonHandler: TIndexedPolygonHandler); override;

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

Splits coordinate-based node into polygons.

Indexes in PolygonHandler point to CoordIndex, if assigned, or directly to Coord. The ordering of generated polygons is correct, so what pointed CCW in the node field, will still point CCW according to generated PolygonHandler indexes.

In this class this does nothing. Some, but not all, coordinate-based nodes (the ones when InternalCoord returns True) override this. So currently, whether this is implemented is coordinated with CastleInternalNormals and such internal needs.

Public function TrianglesCount(State: TX3DGraphTraverseState; ProxyGeometry: TAbstractGeometryNode; ProxyState: TX3DGraphTraverseState): Cardinal; 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 SetIndex(const Value: array of Int32); overload;

This item has no description.

Public procedure SetIndex(const Value: TInt32List); overload;

This item has no description.

Properties

Public property EventSet_index: TMFInt32Event read FEventSet_index;

This item has no description.

Public property FdIndex: TMFInt32 read FFdIndex;

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


Generated by PasDoc 0.16.0-snapshot.