Distributed Interactive Simulation |
![]() |
A. Software Distribution
B. Javadoc Documentation C. Abstract Window Toolkit (awt) Package D. bridge Package E. DIS Package F. DIS Enumerations Package
| |
G. eaiDemoAUV Package
H. eaiDemoBoids Package I. Java via Script Node Examples J. Math Package K. Testing Package L. Utilities (util) Package |
A Makefile is used to compile and maintain this software.
mil.navy.nps.awt
package includes a simple Protocol Data Unit (PDU) reader that uses the
Java Abstract Window Toolkit (AWT). Tested (so far) on Entity State PDUs.
It is useful for inspecting the values of PDU fields.
![]() | ![]() | ![]() |
Readme.txt | Class Hierarchy | |
AwtPduViewer.html | AwtPduViewer.java | |
PduViewer.html | <= this is a recommended demo | |
AwtEspduSender.html | AwtEspduSender.java | |
EspduSender.html | <= this is a recommended demo | Example data in PduSendData.xls |
AwtMulticastRelayClient.html | AwtMulticastRelayClient.java | |
AwtMulticastRelayClientFrame.html | AwtMulticastRelayClientFrame.java | |
MulticastRelayClient.html | <= this is a recommended demo | |
SenderThread.html | SenderThread.java | |
TextAreaStream.html | TextAreaStream.java | |
UpdateThread.html | UpdateThread.java |
mil.navy.nps.bridge
package includes several programs enable multicast PDU streams to be redirected to unicast sockets.
Bridging was necessary because some browsers were still using JDK 1.0 and did not have
native multicast support. We are revising all of bridge programs now that connectivity
to be browser (both unicast and multicast UDP) has finally been achieved. A future
software build will revise all of the default socket addresses & ports simultaneously.
We are working on simple, general and ubiquitous multicast DIS connectivity. Among other things, we expect to connect home PCs via unicast-only phone connections to multicast bridging servers.
![]() | ![]() | ![]() | |
Readme.txt | Class Hierarchy | ||
![]() | Goal multicast topology diagram.
If we had this connectivity everywhere, no other bridging would be needed. | ||
Here are the primary applications to bridge multicast PDUs all the way to the browser.
Client invocation:
Server invocation on devo.stl.nps.navy.mil: | |||
![]() | MulticastRelayServer.html | MulticastRelayServer.java | |
MulticastRelayClient.html | MulticastRelayClient.java | ||
Here are several varieties of applications to bridge multicast PDUs all the way to the browser.
Windows (.bat) batch files and corresponding Unix shell scripts are provided for each case. Eventually Don McGregor hopes to take them out behind the barn and end their misery. | |||
![]() | Local reader/writer bridge program, to patch local multicast into local browser unicast socket | localBridge.bat
localBridge | |
![]() | Used only to develop localBridge | localReaderBridge.bat
localReaderBridge | |
Used only to develop localBridge | localWriterBridge.bat
localWriterBridge | ||
![]() | Remote reader/writer bridge program, to patch remote multicast into local browser unicast socket | remoteBridge.bat
remoteBridge | |
![]() | Needs to be extended into reader/writer remoteBridge | remoteReaderBridge.bat
remoteReaderBridge | |
remoteWriterBridge.bat
remoteWriterBridge | |||
Additional supporting bridge classes: | |||
BridgeHarness.html | BridgeHarness.java | ||
Bridge.html | Bridge.java | ||
BridgeMulticastToUnicast.html | BridgeMulticastToUnicast.java | ||
BridgeUnicastToMulticast.html | BridgeUnicastToMulticast.java | ||
BridgeUnicastToUnicast.html | BridgeUnicastToUnicast.java | ||
DatagramBridge.html | DatagramBridge.java |
mil.navy.nps.dis
package is an extensive class library
that provides the core functionality
of the DIS-Java-VRML software:
reading/writing PDUs from a network stream, then parsing/building PDU contents.
This implementation of the DIS specification includes most - but not all - of the DIS Protocol Data Unit (PDU) types. Here are the status pages on implemented PDUs and implemented records.
The
mil.navy.nps.disEnumerations
package is an extensive class library
that provides enumerations (i.e. special constants).
Enumerations are the predefined values associated with
DIS protocol data unit (PDU) fields.
These classes have been automatically generated from the on-line DIS Data Dictionary.
mil.navy.nps.eaiDemoAUV
package includes a simple VRML application example using the still-nonstandard External Authoring Interface (EAI).
Needs debugging due to revised EAI.
mil.navy.nps.eaiDemoBoids
package includes a simple VRML application example using the still-nonstandard External Authoring Interface (EAI).
Needs debugging due to revised EAI.
![]() | ![]() | ![]() |
ReadMeFirst.txt | Class Hierarchy | |
eaiDemoBoids.html | ||
Entity.html | Entity.java | |
NIU.html | NIU.java | |
Ownship.html | Ownship.java | |
World.html | World.java |
mil.navy.nps.javaViaScriptNode
package includes our
primary examples (reader and writer) for DIS-Java-VRML.
We expect these are widely usable as templates for how to DIS-ify a VRML entity.
Two simple VRML application examples using the VRML-standard
Java Script-node Authoring Interface (JSAI), i.e. the
Java Annex
of the
VRML 97 specification.
The
mil.navy.nps.math
package contains several useful math-related classes.
![]() | ![]() | ![]() |
Readme.txt | Class Hierarchy | |
Matrix3f.html | Matrix3f.java | |
Matrix4f.html | Matrix4f.java | |
Quaternion.html | Quaternion.java | |
Vec3f.html | Vec3f.java | |
Vec4f.html | Vec4f.java |
The
mil.navy.nps.testing
package collects a variety of test programs.
Many of them need reverification and cleanup.
The
mil.navy.nps.util
package is a class library that provides several useful extensions to Java.
These classes are of general use (and not specific to the DIS package).