Git Product home page Git Product logo

sdt's Introduction

Scripted Display Tool(s)

This project contains source code and build scripts for the "Scripted Display Tool" (both sdt 2d & sdt3d applications). The applications were developed by the Protocol Engineering Advanced Networking (PROTEAN) Research Group of the Naval Research Laboratory (NRL).

The intent of these applications is to provide tools that support real-time visualization of mobile communication network field tests, emulations, or even simulations. The applications may also prove suitable for other purposes.

SDT3D

sdt3d is based upon the NASA WorldWind Java (WWJ) SDK available from:

http://worldwind.arc.nasa.gov/java/index.html

and joglutils available at:

https://kenai.com/projects/jogl/sources/jogl-utils-git

Details of modifications required to these distributions are available in the docs directory.

sdt3d also relies on the following jar files. See the getDependencies file for jar locations for manual download.

apache: commons-io-2.6.jar commons-lang3-3.10.jar commons-text-1.8.jar

mozilla: juniversalchardet-1.0.3.jar

SDT (2D)

sdt is written in C++ using the freely-available, cross-platform wxWindows library for graphical user interface applications.

BUILDING

See the sdt documentation in the docs directory for the latest build instructions for both sdt and sdt3d or the README-SDT3D.txt and README-SDT.txt files located in the src distribution.

Release 2.3

  1. Now supports loading openFlight models.

  2. Cone rendering improved.

  3. New log debug dialog available on file menu. Options to turn debug loggin off, log to console, or log to file. Option to change default debug log file name.

  4. New node offset attribute. Offset positions a node's sprite at a cartesian x,y offset or elevation z.

node offset <x,y,z>

Offset is also available in sprite.xml

  1. Parsing of sprite.xml files improved. (Attributes no longer required, only attributes in file are applied)

  2. Kml model sizing and symbol sizing improved.

  3. 3d model symbol sizing improved.

  4. Hybrid model sizing fixed.

    length dimension set: model is fixed at length size regardless of view

    size dimension set: model is sized at size in pixels and uses size as "real-world" length

    length & size set: "hybrid model" model is sized at size in pixel but uses length as the "real-world" model length

  5. Link end bug fix.

  6. Command to set name of any model-jar file. models in jar file will be autodetected.

  7. Code has been refactored.

Release 2.2

  1. Sdt version updated to 2.2 as the performance enhancements are significant.

  2. Multiple input flows (including multiple TCP clients) can now be successfully inteleaved.

    A gentleman's agreement to not clobber link state between two input feeds should be enforced.

  3. Command logging

    logDebugOutput on,

    If no fileName provided output will go to sdtout.

    Toggling logDebugOutput off from the file menu will disable any file logging.

    Toggling logDebugOutput on from the file menu will enable logging to sdtout as does the command line argument with no filename.

    If exists, will be incremented, e.g. .n

    Care should be taken when resetting sdt to clean up any obsolete debug files established in the sdt settings or configuration files.

    If no path provided, will be colocated with the sdt3d app.

    The "wait" command interval is the delta between key value command pairs, irregardless of thread. The "wait" command is not logged until the interval between commands is greater than 100 milliseconds.

    "Wait" commands are first logged when the first input command is received by any thread. Depending on when scenario events are initially logged, it may be necessary to remove long wait intervals logged before the scenario began running.

  4. “Hard” and “soft" reset menu option.

    A “soft" reset

    will disable debug logging

    remove user defined layers

    remove all nodes, regions, tiles, linkLables, kml files, and elevation tiles

    reload any configuration file.

    A "hard" reset will perform a soft reset and:

    shutdown any udp/tcp sockets

    stop reading any input file

    reset system state (offlineMode off, elevationData on, stereoMode off, background color, uncollapse links, unfollow any nodes, disable node focus, restart the view controller, and reset to basicOrbitVies)

    reload the any user preferences file

    Note the distinction between the user perferences file (sdt.settings generally) and the user configuration. Any settings that should be applied only during a hard reset should be in the sdt.settings file while "reset" like commands should be in the user configuration file.

  5. The "remove user defined layers" menu option will now clear all renderables from all user defined layers (useful in the event of dangling links or markers).

  6. Performance efficiencies:

    link line positions will now only be recalculated when a node position or link attribute changes.

    link line positions will only be recalculated for displayed links.

    the node render function (called during each rendering pass) will now only render visibible nodes that have had a node attribute change or a link attribute change.

    wwj redraw bug fixed. Redraw is now done only at 100 ms POLL_INTERVAL

  7. Sdt node and link object attribute changes will be applied immediately (no position update requried).

  8. Lines can now be stippled.

    line ,,,,

    Stipple Factor: stipple pixle value. use 0 for no stipple. Default 0

    Stipple Pattern: Numeric or hex, e.g. 0xABAB or 43947. Default 0xAAAA

  9. Gazette is disabled by default.

  10. Compass and worldwind view controls can now be toggled on and off by layer checkbox and layer command, e.g. layer "Worldwind::Compass,off"

  11. Tcp connection via menu item no longer required confirmation of success.

  12. New eclipse formatter included in distribution. All classes reformatted to new format.

  13. Misc bug fixes:

    Marker heading bug fixed.

    Link initial hangle changed in support of many links. Over threshold, links limited to 5 degrees aroudn radius.

    User defined directional links bug fixed.

    linkId hashMap now TreeMap

  14. User defined links distinguished from sdt layers. User defined checkboxes added.

  15. TODO:

complete implementation of separation of user defined layers and sdt layers (e.g. removing user defined layers removes node and links from sdt layers) Other bugs. Currently only user defined links are distinct from sdt link layer. Do we need to support other objects likewise? E.g. nodes, symbols etc.

Occasional link flicker problem

create new distributions

test out multi-frame support

checkbox tree improvements

true "sdt player"

multi-color line stipple

update documentation

add ability to set log file name from gui.

Updates in Release 2.0 include:

kml models can be assigned to sprites

kml models can be loaded and positioned independently of sprites (e.g. buildings/cities)

symbol cone - defines the new cone symbol

symbol cylinder - defines the new cylinder symbol

orientation can be set for a node (pitch, yaw[a|r], roll)

pos <lat,lon,[alt],[g|c],[msl|agl] - objects can be positioned at geodesic and cartesian coordinates and at MSL or AGL

origin - geodesic coordinate from which to offset cartesian coordinates

symbol sphere,x,x,300s,300s - new "scaleable" fixed size symbols.

symbols can be oriented. Symbol orientation can be relative to a node's orientation or absolute.

symbol <symbolType|none>[,,[ [,<x_radius[s]>[,<y_radius[s]>[,[, [<orientation[a|r]>,[]]]]]]]] - expanded symbol attribute list

path - sets directory prefix to search for files

instance - overrides the default pipe name of "sdt"

region - creates a region object

listen [udp,|tcp,][off|/] - directs sdt3d to listen to the given udp port, multicast address, or tcp port

link ,[,<linkID|all>[,<dir,all>]] - multiple directed or bidirectional links are now supported

link color thickness and opacity can be set

links can be assigned a linkId

multiple links can be collapsed from the view menu

colors can be specified in any rgb or hex value

delete <objectType|all>,<objectName|all>

clear <objectType|all>

listen [udp|tcp],[off|/] - tcp support

follow - the view can be told to "follow" specified nodes

lookat - sets the camera position

kml - limited kml standard supported (tour)

geoTiff - image or elevation geoTIFF overlay

tile - overlays a specified image over terrain

popup - popup window attributes

user defined layers now supported

nodes, symbols, layers, links, regions, and tiles can be assigned to user defined layers

user defined layers can be nested

views can be bookmarked and saved to disk for subsequent reload

flat earth view support

background color can be changed (useful for non-geodesic views)

user preferences file available (e.g. path, load default icons, set view)

user Configuration File loaded upon system reset

elevation model (terrain) can be disabled

Open Street Map layer available

Stereoscopic viewing mode available

See the documentation for the full command set.

Commands not yet supported are simply ignored.

sdt's People

Contributors

bebopagogo avatar ljt-git avatar weston-nrl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sdt's Issues

std3d-core.sh not working with CORE

I couldn't get makefiles/sdt3d-core.sh to work with CORE. Here is a script that does work.

#!/bin/sh
THISDIR=dirname $0
export LD_LIBRARY_PATH=${THISDIR}/build/sdt3d/lib
java -jar -Dsun.java2d.noddraw=true -Djava.library.path=${THISDIR}/build/sdt3d/lib -Xmx512m ${THISDIR}/build/sdt3d/jars/sdt3d.jar LISTEN TCP,50000 $@

I think this other file with the start command is just using old paths for sdt. Can we update the bash file so it works for others? Tested with the last few CORE versions, but it is just listening on a port for CORE so I think it would work with older CORE versions as well.

URL connect timed out

When I ran ./sdt3d.sh, I met a problem as shown in the picture.When I browsed this website in the browser, 404 was displayed.

time out

showing nodes' movement in core in sdt3d went wrong

when I run a core sample with moving nodes, the nodes in sdt3d didn't move at all but the link is changed according to the links in core.
However, when I move the nodes by hand, the node in sdt3d moved as well.
Here is the error message on sdt3d command line
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.