Class TInlineNode

Unit

Declaration

type TInlineNode = class(TAbstractInternalGroupingNode)

Description

Embed another X3D scene into the current scene.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 95).

Hierarchy

Overview

Methods

Protected procedure BeforeTraverse(StateStack: TX3DGraphTraverseStateStack); override;
Protected procedure AfterTraverse(StateStack: TX3DGraphTraverseStateStack); override;
Protected procedure AfterLoadInlined; virtual;
Protected procedure ParseAfter(Reader: TX3DReaderNames); override;
Protected function DeepCopyCore(CopyState: TX3DNodeDeepCopyState): TX3DNode; override;
Public constructor Create(const AX3DName: String = ''; const ABaseUrl: String = ''); override;
Public class function VRML1ChildrenSaveToStream: boolean; override;
Public procedure LoadInlined(CanReload: boolean; const CurrentLengthConversionFactor: Float = 1.0; const Exported: TX3DNodeNames = nil);
Public procedure UnLoadInlined;
Public procedure LoadedInlineDirectly;
Public procedure CreateNode; override;
Public class function ClassX3DType: String; override;
Public procedure SetUrl(const Value: array of string); overload;
Public procedure SetUrl(const Value: TCastleStringList); overload;

Properties

Public property Inlined: TX3DRootNode read FInlined;
Public property FdAutoRefresh: TSFTime read FFdAutoRefresh;
Public property AutoRefresh: TFloatTime read GetAutoRefresh write SetAutoRefresh;
Public property FdAutoRefreshTimeLimit: TSFTime read FFdAutoRefreshTimeLimit;
Public property AutoRefreshTimeLimit: TFloatTime read GetAutoRefreshTimeLimit write SetAutoRefreshTimeLimit;
Public property FdBboxDisplay: TSFBool read FFdBboxDisplay;
Public property BboxDisplay: Boolean read GetBboxDisplay write SetBboxDisplay;
Public property FdDescription: TSFString read FFdDescription;
Public property Description: String read GetDescription write SetDescription;
Public property FdGlobal: TSFBool read FFdGlobal;
Public property Global: Boolean read GetGlobal write SetGlobal;
Public property FdLoad: TSFBool read FFdLoad;
Public property Load: Boolean read GetLoad write SetLoad;
Public property FdUrl: TMFString read FFdUrl;
Public property FdVisible: TSFBool read FFdVisible;
Public property Visible: Boolean read GetVisible write SetVisible;
Public property FdBboxCenter: TSFVec3f read FFdBboxCenter;
Public property BBox: TBox3D read GetBBox write SetBBox;
Public property FdBboxSize: TSFVec3f read FFdBboxSize;

Description

Methods

Protected procedure BeforeTraverse(StateStack: TX3DGraphTraverseStateStack); override;

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

Override these methods to determine what happens when given node is traversed during Traverse call. The main use of this is to operate on TX3DGraphTraverseStateStack.

Remember to always call inherited when overriding. In BeforeTraverse and MiddleTraverse you should call inherited at the beginning, in AfterTraverse inherited should be called at the end.

Besides changing StateStack.Top fields, you can do push/pop on the stack. Remember that if you do StateStack.Push in BeforeTraverse, and then you must call StateStack.Pop in AfterTraverse.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 110).

Protected procedure AfterTraverse(StateStack: TX3DGraphTraverseStateStack); override;

This item has no description.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 111).

Protected procedure AfterLoadInlined; virtual;

You can override this to do anything after the Inline children were loaded. It's called only after actual loading occurred, e.g. it's not called when LoadInlined was called on the already-loaded node with CanReload = False.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 116).

Protected procedure ParseAfter(Reader: TX3DReaderNames); override;

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

Called at the end of parsing this node (including children) in any encoding.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 117).

Protected function DeepCopyCore(CopyState: TX3DNodeDeepCopyState): TX3DNode; override;

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

Does actual DeepCopy work. You can override this to copy some more properties for descendants.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 119).

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.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 121).

Public class function VRML1ChildrenSaveToStream: boolean; override;

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

Should SaveToStream save our VRML1Children. In this class default implementation returns True, this is what you will want in 99% of cases. It's useful to set this to false if you use VRML1Children internally, e.g. *Inline nodes.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 123).

Public procedure LoadInlined(CanReload: boolean; const CurrentLengthConversionFactor: Float = 1.0; const Exported: TX3DNodeNames = nil);

Load inlined content now. If Inlined is already loaded: if CanReload = True then it will be freed and loaded again, else (if CanReload = False) nothing will happen.

Note that this has a really simple support for "load" field (this concerns VRML 97 amendment 1 "InlineLoadControl.load" and X3D (actually used also in VRML 97 handling) "Inline.load" fields). It simply doesn't do any loading when "load" = False.

Note that this doesn't perform setting the "load" field, or sending any notifications to Scene about "load" field. It's the caller's job to keep loaded state synchronized with "load" field value.

LoadInlined(false) will be called automatically, to ensure the inlined contents are always loaded. It will be called at the end of Parse (this is needed to handle VRML/X3D IMPORT/EXPORT mechanism), it will also be called in BeforeTraverse (in case you constructed node by code, not by parsing; this also happens when node was made by expanding a PROTO).

Parameters
Exported
If non-nil, we will assign here node names exported from the file. Used to handle IMPORT/EXPORT X3D mechanism.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 149).

Public procedure UnLoadInlined;

This item has no description.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 153).

Public procedure LoadedInlineDirectly;

Call this to indicate that you loaded the inline contents directly, by using AddChild yourself.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 157).

Public procedure CreateNode; override;

Create node fields and events.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 45).

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.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 46).

Public procedure SetUrl(const Value: array of string); overload;

URL of the content to be loaded. Multiple URLs can be provided, each one will be tried in turn.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 88).

Public procedure SetUrl(const Value: TCastleStringList); overload;

URL of the content to be loaded. Multiple URLs can be provided, each one will be tried in turn.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 90).

Properties

Public property Inlined: TX3DRootNode read FInlined;

The inlined content (loaded from inlined url). Nil if not yet loaded, or no loading was successful.

This is also kept in VRML 1.0 children list as VRML1Children[0], but for future it's better to not depend on that. But it will always be enumerated by things like TX3DNode.EnumerateNodes.

Source: src/scene/x3d/x3dnodes_standard_networking.inc (line 165).

Public property FdAutoRefresh: TSFTime read FFdAutoRefresh;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 50).

Public property AutoRefresh: TFloatTime read GetAutoRefresh write SetAutoRefresh;

Not implemented. Interval in seconds between automatically reloading the content.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 52).

Public property FdAutoRefreshTimeLimit: TSFTime read FFdAutoRefreshTimeLimit;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 56).

Public property AutoRefreshTimeLimit: TFloatTime read GetAutoRefreshTimeLimit write SetAutoRefreshTimeLimit;

Not implemented. Maximum duration that automatic refresh activity can take.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 58).

Public property FdBboxDisplay: TSFBool read FFdBboxDisplay;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 62).

Public property BboxDisplay: Boolean read GetBboxDisplay write SetBboxDisplay;

Not implemented. Display the bounding box of the inline object.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 64).

Public property FdDescription: TSFString read FFdDescription;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 68).

Public property Description: String read GetDescription write SetDescription;

Textual description of the inlined content.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 70).

Public property FdGlobal: TSFBool read FFdGlobal;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 74).

Public property Global: Boolean read GetGlobal write SetGlobal;

Not implemented. Whether lights contained in the Inline scene are allowed to have external lighting effects or not.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 76).

Public property FdLoad: TSFBool read FFdLoad;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 80).

Public property Load: Boolean read GetLoad write SetLoad;

Partially implemented. When False, defers when the referenced content is read and displayed.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 82).

Public property FdUrl: TMFString read FFdUrl;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 86).

Public property FdVisible: TSFBool read FFdVisible;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 94).

Public property Visible: Boolean read GetVisible write SetVisible;

Not implemented. Whether or not the content within a node is visually displayed. The value of this field has no effect on animation behaviors, collision behaviors, event passing, or other non-visual characteristics.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 96).

Public property FdBboxCenter: TSFVec3f read FFdBboxCenter;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 100).

Public property BBox: TBox3D read GetBBox write SetBBox;

This item has no description.

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 102).

Public property FdBboxSize: TSFVec3f read FFdBboxSize;

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

Source: src/scene/x3d/auto_generated_node_helpers/x3dnodes_inline.inc (line 106).


Generated by PasDoc 0.17.0.snapshot.