Post

EspduTransform

Overview

EspduTransform is a networked Transform node that can contain most nodes. If activated, EspduTransform can send or receive Entity State Protocol Data Unit (PDU) packets, also integrating functionality for the following DIS PDUs: EntityStatePdu, CollisionPdu, DetonatePdu, FirePdu, CreateEntity and RemoveEntity PDUs.

The EspduTransform node belongs to the DIS component and requires at least level 1, its default container field is children. It is available from X3D version 3.0 or higher.

Hierarchy

1
2
3
4
+ X3DNode
  + X3DChildNode
    + X3DGroupingNode
      + EspduTransform (X3DSensorNode)*

* Derived from multiple interfaces.

Fields

SFNode [in, out] metadata NULL [X3DMetadataObject]

Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.

Hint

SFString [in, out] description “”

Author-provided prose that describes intended purpose of the node.

Hint

  • Many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for “ quotation-mark character).

SFBool [in, out] enabled TRUE

Enables/disables the sensor node.

SFBool [in, out] visible TRUE

Whether or not renderable content within this node is visually displayed.

Hints

  • The visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
  • Content must be visible to be collidable and to be pickable.

SFBool [in, out] bboxDisplay FALSE

Whether to display bounding box for associated geometry, aligned with world coordinates.

Hint

  • The bounding box is displayed regardless of whether contained content is visible.

SFVec3f [ ] bboxSize -1 -1 -1 [0,∞) or −1 −1 −1

Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.

Hints

SFVec3f [ ] bboxCenter 0 0 0 (-∞,∞)

Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.

Hints

MFNode [in] addChildren

Input field addChildren.

MFNode [in] removeChildren

Input field removeChildren.

MFNode [in, out] children [ ] [X3DChildNode]

Grouping nodes contain an ordered list of children nodes.

Hints

  • Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
  • InputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
  • InputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
  • X3D Architecture 10.2.1 Grouping and children node types

SFBool [out] isActive

Have we received a network update recently?

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [in] set_articulationParameterValue0 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue1 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue2 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue3 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue4 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue5 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue6 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFFloat [in] set_articulationParameterValue7 (-∞,∞)

Set element of user-defined payload array.

Warning

  • It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.

SFString [in, out] address “localhost”

Multicast network address, or else ‘localhost’; Example: 224.2.181.145.

SFInt32 [in, out] applicationID 0 [0,65535]

Simulation/exercise applicationID is unique for application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.

SFInt32 [in, out] articulationParameterCount 0 [0,78]

Number of articulated parameters attached to this entity state PDU.

MFInt32 [in, out] articulationParameterDesignatorArray [ ] [0,255]

Array of designators for each articulated parameter.

MFInt32 [in, out] articulationParameterChangeIndicatorArray [ ] [0,255]

Array of change counters, each incremented when an articulated parameter is updated.#IMPLIED]

MFInt32 [in, out] articulationParameterIdPartAttachedToArray [ ] [0,65535]

Array of ID parts that each articulated parameter is attached to.

MFInt32 [in, out] articulationParameterTypeArray [ ]

Array of type enumerations for each articulated parameter element.

MFFloat [in, out] articulationParameterArray [ ] (-∞,∞)

Information required for representation of the entity’s visual appearance and position of its articulated parts.

Hint

  • Renamed as Variable Parameter in IEEE DIS 2012 revised standard.

SFVec3f [in, out] center 0 0 0 (-∞,∞)

Translation offset from origin of local coordinate system.

SFInt32 [in, out] collisionType 0 [0,255]

Integer enumeration for type of collision: ELASTIC or INELASTIC.

SFInt32 [in, out] deadReckoning 0 [0,255]

Dead reckoning algorithm being used to project position/orientation with velocities/accelerations.

SFVec3f [in, out] detonationLocation 0 0 0 (-∞,∞)

World coordinates for detonationLocation

SFVec3f [in, out] detonationRelativeLocation 0 0 0 (-∞,∞)

Relative coordinates for detonation location

SFInt32 [in, out] detonationResult 0 [0,255]

Integer enumeration for type of detonation and result that occurred., if any.

SFInt32 [in, out] entityCategory 0 [0,255]

Integer enumerations value for main category that describes the entity, semantics of each code varies according to domain. See DIS Enumerations values.

SFInt32 [in, out] entityCountry 0 [0,65535]

Integer enumerations value for country to which the design of the entity or its design specification is attributed.

SFInt32 [in, out] entityDomain 0 [0,255]

Integer enumerations value for domain in which the entity operates: LAND, AIR, SURFACE, SUBSURFACE, SPACE or OTHER.

SFInt32 [in, out] entityExtra 0 [0,255]

Any extra information required to describe a particular entity. The contents of this field shall depend on the type of entity represented.

SFInt32 [in, out] entityID 0 [0,65535]

Simulation/exercise entityID is a unique ID for a single entity within that application.

SFInt32 [in, out] entityKind 0 [0,255]

Integer enumerations value for whether entity is a PLATFORM, MUNITION, LIFE_FORM, ENVIRONMENTAL, CULTURAL_FEATURE, SUPPLY, RADIO, EXPENDABLE, SENSOR_EMITTER or OTHER.

SFInt32 [in, out] entitySpecific 0 [0,255]

Specific information about an entity based on the Subcategory field. See DIS Enumerations values.

SFInt32 [in, out] entitySubcategory 0 [0,255]

Integer enumerations value for particular subcategory to which an entity belongs based on the category field. See DIS Enumerations values.

SFInt32 [in, out] eventApplicationID 0 [0,65535]

Simulation/exercise eventApplicationID is unique for events generated from application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.

SFInt32 [in, out] eventEntityID 0 [0,65535]

For a given event, simulation/exercise entityID is a unique ID for a single entity within that application.

SFInt32 [in, out] eventNumber 0 [0,65355]

Sequential number of each event issued by an application.

Warning

  • Reuse of numbers may be necessary during long simulation exercises.

SFInt32 [in, out] eventSiteID 0 [0,65535]

Simulation/exercise siteID of the participating LAN or organization.

SFBool [in, out] fired1 FALSE

Has the primary weapon (Fire PDU) been fired?

SFBool [in, out] fired2 FALSE

Has the secondary weapon (Fire PDU) been fired?

SFInt32 [in, out] fireMissionIndex 0 [0,65535]

Input/Output field fireMissionIndex.

SFFloat [in, out] firingRange 0 (0,∞)

Range (three dimension, straight-line distance) that the firing entity’s fire control system has assumed for computing the fire control solution if a weapon and if the value is known

SFInt32 [in, out] firingRate 0 [0,65535]

Rate at which munitions are fired.

SFInt32 [in, out] forceID 0 [0,255]

forceID determines the team membership of the issuing entity, and whether FRIENDLY OPPOSING or NEUTRAL or OTHER.

SFInt32 [in, out] fuse 0 [0,65535]

Integer enumerations value for type of fuse on the munition.

SFVec3f [in, out] linearVelocity 0 0 0 (-∞,∞)

Velocity of the entity relative to the rotating Earth in either world or entity coordinates, depending on the dead reckoning algorithm used.

SFVec3f [in, out] linearAcceleration 0 0 0 (-∞,∞)

Acceleration of the entity relative to the rotating Earth in either world or entity coordinates, depending on the dead reckoning algorithm used.

SFString [in, out] marking “”

Maximum of 11 characters for simple entity label.

SFString [in, out] multicastRelayHost “”

Fallback server address if multicast not available locally. Example: track.nps.edu.

SFInt32 [in, out] multicastRelayPort 0 [0,65535]

Fallback server port if multicast not available locally. Example: 8010.

SFInt32 [in, out] munitionApplicationID 0 [0,65535]

munitionApplicationID, unique for application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.

SFVec3f [in, out] munitionEndPoint 0 0 0 (-∞,∞)

Final point of the munition path from firing weapon to detonation or impact, in exercise coordinates.

SFInt32 [in, out] munitionEntityID 0 [0,65535]

munitionEntityID is unique ID for entity firing munition within that application.

SFInt32 [in, out] munitionQuantity 0 [0,65535]

Quantity of munitions fired.

SFInt32 [in, out] munitionSiteID 0 [0,65535]

Munition siteID of the participating LAN or organization.

SFVec3f [in, out] munitionStartPoint 0 0 0 (-∞,∞)

Initial point of the munition path from firing weapon to detonation or impact, in exercise coordinates.

SFString [in, out] networkMode “standAlone” [“standAlone”|”networkReader”|”networkWriter”]

Whether this entity is ignoring the network, sending DIS packets to the network, or receiving DIS packets from the network. (1) standAlone: ignore network but still respond to events in local scene. (2) networkReader: listen to network and read PDU packets at readInterval, act as remotely linked copy of entity. (3) networkWriter: send PDU packets to network at writeInterval, act as master entity. Default value “standAlone” ensures that DIS network activation within a scene as networkReader or networkWriter is intentional.

Warnings

  • Do not wrap extra quotation marks around these SFString enumeration values, since “quotation” “marks” are only used for MFString values.
  • Network activity may have associated security issues.

SFInt32 [in, out] port 0 [0,65535]

Network connection port number (EXAMPLE 3000) for sending or receiving DIS messages. Example: 3000.

SFTime [in, out] readInterval 0.1 [0,∞)

Seconds between read updates, 0 means no reading.

Hint

  • readInterval is a nonnegative SFTime duration interval, not an absolute clock time.

SFRotation [in, out] rotation 0 0 1 0 [-1,1] or (-∞,∞)

Orientation of children relative to local coordinate system, usually read from (or written to) remote, networked EspduTransform nodes.

SFVec3f [in, out] scale 1 1 1 (-∞,∞)

Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.

SFRotation [in, out] scaleOrientation 0 0 1 0 [-1,1] or (-∞,∞)

Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations).

SFInt32 [in, out] siteID 0 [0,65535]

Simulation/exercise siteID of the participating LAN or organization.

SFVec3f [in, out] translation 0 0 0 (-∞,∞)

Position of children relative to local coordinate system, usually read from (or written to) remote, networked EspduTransform nodes.

SFInt32 [in, out] warhead 0 [0,65535]

Integer enumerations value for type of warhead on the munition.

SFTime [in, out] writeInterval 1 [0,∞)

Seconds between write updates, 0 means no writing (sending).

Hint

  • writeInterval is a nonnegative SFTime duration interval, not an absolute clock time.

SFFloat [out] articulationParameterValue0_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [out] articulationParameterValue1_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [out] articulationParameterValue2_changed

Get element of user-defined payload array.

SFFloat [out] articulationParameterValue3_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [out] articulationParameterValue4_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [out] articulationParameterValue5_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [out] articulationParameterValue6_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFFloat [out] articulationParameterValue7_changed

Get element of user-defined payload array.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFTime [out] collideTime

When were we collided with?

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFTime [out] detonateTime

When were we detonated?

SFTime [out] firedTime

When did we shoot a weapon (Fire PDU)?

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [out] isCollided

Has a matching CollisionPDU reported a collision?

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [out] isDetonated

Has a matching DetonationPDU reported a detonation?

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [out] isNetworkReader

Whether networkMode=’remote’ (listen to network as copy of remote entity).

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [out] isNetworkWriter

Whether networkMode=’master’ (output to network as master entity at writeInterval).

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [out] isRtpHeaderHeard

Whether incoming DIS packets have an RTP header prepended.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [out] isStandAlone

Whether networkMode=’local’ (ignore network but still respond to local events).

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFTime [out] timestamp

DIS timestamp received from latest PDU update, converted to X3D SFTime units.

Warning

  • It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.

SFBool [in, out] rtpHeaderExpected FALSE

Whether RTP headers are prepended to DIS PDUs.

SFVec3d [in, out] geoCoords 0 0 0 (-∞,∞)

Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).

Hint

Warning

  • Requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>

MFString [ ] geoSystem [ “GD”, “WE” ]

Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: “GD” “UTM” or “GC” followed by additional quoted string parameters as appropriate for the type.

Hints

Warning

  • Deprecated values are GDC (replaced by GD) and GCC (replaced by GC).

Advice

Hints

Warning

  • Requires X3D profile='Full' or else include <component name='DIS' level='1'/>

See Also

This post is licensed under CC BY 4.0 by the author.