Coder Social home page Coder Social logo

antholoj / vl-jung Goto Github PK

View Code? Open in Web Editor NEW

This project forked from timboudreau/vl-jung

0.0 2.0 0.0 132 KB

NetBeans Visual Library integration with JUNG (Java Universal Graph Library) for rich, animated visualizations of graphs using real components

License: Other

vl-jung's Introduction

JUNG + NetBeans' Visual Library Integration

This project integrates JUNG - a library for drawing edge/node graphs, and Visual Library - a component library which is good at layered animated widgets which can host Swing components.

The result gains new features for users of either library. Visual Library users get a collection of good, usable graph layouts backed by research in graph theory. JUNG users get interactivity - such as animation, using real UI components to represent graph contents, and the ability to incorporate non-graph elements into a graph UI to provide a richer user experience.

Watch this video for a demo and overview of the project.

Visual Library is a standalone library which is part of NetBeans but can be used in standalone Java applications. You don't have to be writing a NetBeans plugin to use this library!

Builds and a Maven repository containing the JARs can be found on timboudreau.com. [Read the Javadoc](Javadoc here and also here (there are two libraries).

Features

  • JungScene — provides an abstract Visual Library scene implementation which wrappers a JUNG layout as a visual library SceneLayout
  • JungConnectionWidget — embeds JUNG's shape-based edge painting logic in a visual library widget
  • BaseJungScene — provides commonly used functionality - manages layer widgets and adding and removing of widgets as the graph is modified

Project Layout

The project consists of a Maven parent project with four child projects:

  • Visual Library + Jung — does the basic integration of JUNG with Visual Library and provides JungScene and JungConnectionWidget
    • Supports JUNG's animated layouts either using a timer or by pre-rolling
    • Wrappers any JUNG layout in a Visual Library SceneLayout so that it can be used to lay out a scene with actual widgets
  • Visual Library Jung Base Classes — adds in convenience classes such as BaseJungScene and its supporting cast
  • Visual Library + Jung Demo — is a standalone (non-NetBeans) demo application
  • Visual Library + JUNG NetBeans Module Wrapper — is a NetBeans Library Wrapper Module which embeds JUNG and these libraries and exposes their packages as its public API (NetBeans modules use classloader partitioning to restrict package access).

Build & Run

The easy way to use these libraries is via Maven, using this Maven repository - follow the link for a <repository> section to add to your POM.

To build the projects, simply check the sources out from Git and build with Maven using JDK 7 or greater.

License

BSD 2-clause license for compatibility with JUNG (and most anything else).

More Info

vl-jung's People

Contributors

timboudreau avatar

Watchers

James Cloos avatar Daoud AbdelMonem Faleh avatar

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.