Eye-Sys
Encyclopedia
Eye-Sys is a general-purpose commercial visualization application. It was developed by Interactive Data Visualization, Inc. (IDV), developers of the SpeedTree
SpeedTree
SpeedTree is a group of vegetation programming and modeling software products developed and sold by Interactive Data Visualization, Inc. that generates virtual foliage for animations and in real time for video games and simulations...

 video game middleware. Eye-Sys development was partially funded by the U.S. Navy's Small Business Innovation Research (SBIR) program, and guided and administered by the Joint Warfare Analysis Center
Joint Warfare Analysis Center
Joint Warfare Analysis Center is a subordinate command of United States Joint Forces Command that contributes to United States national security by recommending strategic technical solutions. JWAC has evolved from a small program office into a joint command of more than 500 personnel...

 (JWAC).

Prior to commercial release, Lockheed Martin
Lockheed Martin
Lockheed Martin is an American global aerospace, defense, security, and advanced technology company with worldwide interests. It was formed by the merger of Lockheed Corporation with Martin Marietta in March 1995. It is headquartered in Bethesda, Maryland, in the Washington Metropolitan Area....

 selected Eye-Sys for use in their performance of DARPA's Integrated Crisis Early Warning System (ICEWS) project. Other pre-release uses included visualizations for MIT and the Naval Surface Warfare Center
Naval Surface Warfare Center
The Naval Sea Systems Command Warfare Centers are composed of the Naval Surface Warfare Centers and the Naval Undersea Warfare Center . They operate in a seamless, integrated manner, and they collaborate with customers using a common work assignment process to get the right work to the right...

 (NSWC).

Eye-Sys was released commercially in November 2007.

Overview

Eye-Sys is a Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

-based software application designed to gather data from disparate sources, manipulate that data in real-time as necessary, and use that data to drive interactive, real-time visualizations on consumer-level personal computers.

Using an extensible open architecture, Eye-Sys allows users to create interactive visualization
Interactive visualization
Interactive visualization is a branch of graphic visualization in computer science that involves studying how humans interact with computers to create graphic illustrations of information and how this process can be made more efficient....

s with data from a combination of sources such as text files, spreadsheets, databases, geographic data, real-time data from a network, and custom modeling and simulation output via a COM
Component Object Model
Component Object Model is a binary-interface standard for software componentry introduced by Microsoft in 1993. It is used to enable interprocess communication and dynamic object creation in a large range of programming languages...

 interface.

Other Eye-Sys features include:
  • Visual programming support (visualizations are built by a series of interlinked, configurable objects)
  • C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

    /.NET
    .NET Framework
    The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...

     SDK for writing new objects.
  • JScript
    JScript
    JScript is a scripting language based on the ECMAScript standard that is used in Microsoft's Internet Explorer.JScript is implemented as a Windows Script engine. This means that it can be "plugged in" to any application that supports Windows Script, such as Internet Explorer, Active Server Pages,...

     support at a global and object level.
  • Real-time
    Real-time computing
    In computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...

     interaction with visualizations.
  • Interoperability with other applications (e.g. Simulink
    Simulink
    Simulink, developed by MathWorks, is a commercial tool for modeling, simulating and analyzing multidomain dynamic systems. Its primary interface is a graphical block diagramming tool and a customizable set of block libraries. It offers tight integration with the rest of the MATLAB environment and...

    ).

Sandbox

Visualization systems in Eye-Sys are defined primarily through a visual programming area called the sandbox. The systems are driven by data imported from user-specified sources (like text files or databases) which can be manipulated by script objects and fed into display objects that render the data graphically.

Visualizations are defined through a visual program created in the sandbox by linking together nodes of various types. The four basic types of Eye-Sys nodes are:
  • Input Objects: Input objects are responsible for gathering data. In most cases that means pulling data in from external sources such as text files and databases.
  • Manipulators: Manipulators modify data that has already been imported or generated. They range from simple arithmetic expressions to complex scripts.
  • Display Objects: These render data-driven visualization components (e.g., 3D models, geometric primitives, ESRI shapefiles, etc.) arranged in a scene graph.
  • Display Systems: Display system objects manage the rendering of data and/or display objects and process user interaction.

Visualization Display & Output

Eye-Sys visualizations are displayed through its display system objects. Display systems facilitate both display and user interaction with a particular visualization, be it a 3D scene, plotter, control panel or other. There is no limit to the number of display systems that can be instantiated in Eye-Sys.

Eye-Sys can also export images and movies from its display systems.

Scripting

Eye-Sys supports scripting using JScript. Most of the functionality available to the user is available in functions exposed to the scripting engine. Scripts also have access to numerous SDK functions that help with object creation, modification, and connectivity.

Scripting functionality is available as both global scripts and script objects. Global scripts can be used to modify the overall visualization system or any object or objects in it. Script objects (implemented as manipulator objects) are used to affect data flow between objects (e.g. one might write a script to filter incoming data).

Plug-Ins & SDK

Each of the objects in Eye-Sys is loaded and instantiated through a plugin system (a series of Windows DLL
Dynamic-link library
Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...

s, each one representing a different object). The Eye-Sys SDK allows users to write their own plug-ins that can interoperate with the other objects in the library. Objects can be written in C++ or a .NET language. The SDK has an AppWizard for C++-based plug-ins and works only with Visual Studio 2005.

External Control

Eye-Sys provides a set of built-in COM interfaces which can be used to access the internal functionality of the application. These interfaces are utilized by the different scripting options Eye-Sys provides as well as any external applications (e.g. Simulink) that can communicate with Eye-Sys.

Using this interface, Eye-Sys can be used to visualize data from another application in real-time. Because it can be a two-way interface, Eye-Sys can be used to feed data back into the linked application (e.g. using a control panel in Eye-Sys to affect the live simulation feeding Eye-Sys data).

External links

  • http://www.eye-sys.com Official Eye-Sys site
  • http://www.idvinc.com Official IDV, Inc. site
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK