#include <Inline.h>
Inheritance diagram for H3D::Inline:

Public Member Functions | |
| Inline (Inst< SFNode > _metadata=0, Inst< DisplayList > _displayList=0, Inst< MFString > _url=0, Inst< SFBound > _bound=0, Inst< SFVec3f > _bboxCenter=0, Inst< SFVec3f > _bboxSize=0, Inst< SFBool > _load=0, Inst< LoadedScene > _loadedScene=0) | |
| Constructor. | |
| virtual void | initialize () |
| Sets up the bound field using the bboxCenter and bboxSize fields. | |
| virtual void | render () |
| Render the inlined scenegraph, if loaded. | |
Public Attributes | |
| auto_ptr< SFBool > | load |
| If the load field is set to TRUE (the default field value), the X3D file specified by the url field is loaded immediately. | |
| auto_ptr< LoadedScene > | loadedScene |
| The scene that is currently loaded by the inline node. | |
| bool | use_union_bound |
| X3D::DEFNodes | exported_nodes |
| A DEFMap from the name of nodes exported with the EXPORT statement in thr url of the Inline node, to the acutal node. | |
Static Public Attributes | |
| static H3DNodeDatabase | database |
| The H3DNodeDatabase for this node. | |
Classes | |
| class | LoadedScene |
| The LoadedScene class updates itself from the load and url field and sets itself to the first url that parses successfully if the load field is true, and to NULL otherwise. More... | |
| class | SFBound |
| SFBound is specialized to update from the SFBound fields routed to it. More... | |
The Inline node embeds an X3D scene stored at a location on the World Wide Web into the current scene. Exactly when the Inline scene is read and displayed is defined by the value of the load field, in profiles that support that field. In profiles that do not support the load field, exactly when the scene is read and displayed is not defined (e.g. reading the scene may be delayed until the Inline node's bounding box is visible to the viewer). Once the Inline scene is loaded, its children are added to the current scene and are treated as children of the Inline for rendering and interaction; however the children are not exposed to the current scene for routing and DEF name access unless their names have been explicitly imported into the scene using the IMPORT statement (see 4.4.6.2 IMPORT semantics).
Each specified URL shall refer to a valid X3D file that contains a list of children nodes, prototypes and routes at the top level as described in 10.2.1 Grouping and children node types. The results are undefined if the URL refers to a file that is not an X3D file, or if the X3D file contains an invalid scene.
It shall be an error to specify a file in the URL field that has a set of component definitions that is not a subset of the components of the containing world. In addition, the components shall not be of a higher support level than those used by the containing world, either implicitly or through the PROFILE declaration or additional COMPONENT statements. When an inlined world requests capabilities greater than its parent, the following actions shall occur:
If the load field is set to TRUE (the default field value), the X3D file specified by the url field is loaded immediately. If the load field is set to FALSE, no action is taken. It is possible to explicitly load the URL at a later time by sending a TRUE event to the load field (e.g., as the result of a ProximitySensor or other sensor firing an event). If a FALSE event is sent to the load field of a previously loaded Inline, the contents of the Inline will be unloaded from the scene graph.
An event sent to url can be used to change the scene that is inlined by the Inline node. If this value is set after the Inline is already loaded, its contents will be unloaded and the scene to which the new URL points will be loaded.
The user is able to specify a bounding box for the Inline node using the bboxCenter and bboxSize fields. This is a hint to the browser and could be used for optimization purposes such as culling.
|
|
Sets up the bound field using the bboxCenter and bboxSize fields. If bboxSize is (-1, -1, -1) the bound will be the union of all the bound objects of the Nodes in the children field. Otherwise it will be a BoxBound with center and origin determined by the bboxCenter and bboxOrigin fields. |
|
|
If the load field is set to TRUE (the default field value), the X3D file specified by the url field is loaded immediately. If the load field is set to FALSE, no action is taken. |
1.4.5