Wednesday, July 20, 2005

Piccolo (2D Structured Graphics UI & Zoomable User Interface Library)

Piccolo Home Page

"Welcome to Piccolo! A revolutionary way to create robust, full-featured graphical applications in Java and C#, with striking visual effects such as zooming, animation and multiple representations.

Piccolo is a toolkit that supports the development of 2D structured graphics programs, in general, and Zoomable User Interfaces (ZUIs), in particular. A ZUI is a new kind of interface that presents a huge canvas of information on a traditional computer display by letting the user smoothly zoom in, to get more detailed information, and zoom out for an overview. We use a 'scene-graph' model that is common to 3D environments. Basically, this means that Piccolo maintains a hierarchal structure of objects and cameras, allowing the application developer to orient, group and manipulate objects in meaningful ways.

Why use Piccolo? It will allow you to build structured graphical applications without worrying so much about the low level details. The infrastructure provides efficient repainting of the screen, bounds management, event handling and dispatch, picking (determining which visual object the mouse is over), animation, layout, and more. Normally, you would have to write all of this code from scratch. Additionally, if you want to build an application with zooming, that's built right into the framework too.

What exactly is it? Piccolo is a layer built on top of a lower level graphics API. There are currently three versions of the toolkit: Piccolo.Java, Piccolo.NET and PocketPiccolo.NET (for the .NET Compact Framework). ..."


Interesting...

I'm looking for UI ideas and tools for a future project that will help me display complex data and relationships, while allowing user interaction with said data. Also I need to support drill-down/out/over type actions (i.e. zooming).

Piccolo just might be something I can use. Plus it looks kind of cool, which always helps. :)

2 comments:

Anonymous said...

I've been watching this for a bit, too. Their demo projects are pretty cool.

I've been playing with an RSS aggregator and ran across Piccolo while looking for alternatives to the standard three pane display. Seems like Piccolo might be a little over the top for that sort of thing, though.

Greg said...

LOL... True

But if you were building a RSS Aggregator that analyzed all of your received posts across feeds, looking for trends, flows, linkage history, then it might be just the thing... ;)


With all the feeds I now read, I've been thinking about building a RSS meta-aggregator that not only provides the feeds/posts, but analysis of all the posts, their relationships, info flow trends (like watching how a Scoble post worms its way through all my feeds, etc). I've seen like services for news stories, etc, but now I want it for just my feeds...

And then I want to use that to help me read all my posts...

Think about how cool it would be to have a UI where you could see all the posts in your feeds on the same topic (across feeds). Then zoom into specific posts. Then mark the entire group as read. wash, rinse and repeat.

Now that RSS is/is close to main stream, the fun is going to be in managing all of your feeds and not becoming overwhelmed.... Usual info crud. Turing data into information into knowledge...

So add this, along with local full text indexing via DotLucene, bloglines/newsgator sync'ing... Now that's a RSS app!

Damn, I'm getting ALL excited about this now... LOL