Project
Description
Project NESD-Imaging
take place in a larger project called NESD which is powered by armasuisse.
NESD-Imaging is a module developed to display large amount of image data (e.g.
ortho-photos, maps, ...).
NESD-Imaging is primary a framework.
Only some sample apps are provided.
NESD-Imaging is actually a layer between Java2D and JAI (Java Advance
Imaging): JAI is responsible to decode, manipulate and render images
when NESD-Imaging takes care of rendering JAI output on the screen.
NESD-Imaging takes care that :
- JAI render images in a background process.
- the user could navigate through the rendered image (moving viewport).
- zooming in an image, already rendered material is used (lower
resolution) to display a zone that will be rendered.
- several image could be arranged in the same 'scene'.
NESD provides special renderer for ortho-photos allowing to display
them conveniently (à la google-map). It also provide basic
unit conversion classes (WGS84-Swissgrid).
Concept
All in short we could resume it so : we define a 2D plan where you can
place an arbitrary number of image. Then you define which
part of this plan you want to render, this include a position, a angle
and a zoom factor. Then you let our API render the requested area.
rendering is performed in background, so user interface will not block
until rendering is performed. This rendering is delegate to JAI
(Java Advance Imaging) a powerfull image processing library.
Rendering is performed in small units called cells. These cells
are organized in a tree and are re-used, while other are rendered in
background in order to improve UI responsivity.
NESD Imaging API is designed to scale well with big images (like ortho
images). We originally use it with 400 tiff images (about 500GB!!).
Support for geodata is included in API to (WGS84/Swissgrid).
NESD-Imaging is an extendable framewrork
It is primary implemented for Swing but SWT could be used (wrapping
made with holongate).
Look directly in SVN for examples.
Screenshots
Downloads / Demo
Start demo application (need Java WebStart). {Mouse Control: left=drag, right=zoom, middle=rotate}
Downloads the last version (library, demos, sources) directly from sourceforge.
Unpack it and run the sample.bat
file to start the demo.
Links
Armasuisse
Sourceforge Project
|