| CARVIEW |
|
graphbrowser
|
| Summary | High Performance Graph Browser |
|---|---|
| Categories | None |
| License | Berkeley Software Distribution (BSD) License |
| Owner(s) | markroth8 |
The initial implementation allows the efficient loading, scrolling and zooming of 1,000,000+ colored rectangles.
Developer input is welcomed for those that wish to extend this toolkit. Please use the forums and the issue tracker to make suggestions or patches.
Installation
There are currently no binary builds of Graph Browser available. To run, follow these instructions:
- Download JOGL (1.0.0) for your platform from https://jogl.dev.java.net/
- Build, using JDK 1.6 and ant
- Create a wrapper script (e.g. .sh or .bat file) that does the
equivalent of the following:
java -cp graphbrowser.jar:jogl-1_0_0-linux-i586\lib\jogl.jar -Djava.library.path=jogl-1_0_0-linux-i586\lib -Xmx1024m com.octagonsoftware.graphbrowser.Main ${1} - Launch the wrapper script with an
input file as a parameter.
Expected file format
The graph browser expects an input file containing information about each rectangle to display. Each line must have the following format:
x0 y0 width
length height r g b
Where:
- (x0, y0): Single-precision floating point origin of rectangle. Origin is (0.0, 0.0), lower-left part of screen. + is towards right and up.
- (width, length, height): Single-precision floating point width
(x-axis), length (y-axis), height (z-axis) of rectangle. Z axis
is out of the screen, towards the user and so is currently ignored in
the 2D representation of the graph.
- (r, g, b): Single-precision floating point red, green and blue
components of color. Range is 0.0 - 1.0, inclusive.
Constraints / assumptions:
- width, length and height must be non-negative.
- r, g, b are non-negative, between 0.0 and 1.0, inclusive.
- No 2 bars should have exactly the same x0, y0, width and length.
- Not yet tested with > 1,000,000 bars but will likely work.
The initial display (furthest zoomed out
possible) shows coordinates ranging from (0.0, 0.0) to (1.0, 1.0). The
user can still scroll at the furthest zoom level, but will not be able
to zoom further out.
Controls
The following controls can be used while
browsing the graph:
- Double-click: recenter
- Click and drag - translate origin
- Mouse wheel - zoom in / out
- Window can be resized
- Keys:
- z - Manually adjust zoom factor (# >= 1.0)
Performance notes
The display of the graph is optimized for scrolling large numbers of rectangles at a fixed zoom level / screen size. Recalculations are performed every time the window size or zoom level changes so this is currently the bottleneck of the application. Typically, it takes a few seconds every time the zoom level is changed, depending on the size of data set.
| Powered by CollabNet | Feedback |
FAQ |
Press |
Developer tools
© 1995 - 2007 CollabNet. CollabNet is a registered trademark of CollabNet, Inc. |
