January 4, 2009

OpenZoom Visualization: Z-Order

This weekend I’ve been playing around with a couple of things related to the OpenZoom project. The following is a small but beautiful example I wanted to share with you: A visualization of the Z-order (Morton-order) curve in a zoomable environment using the OpenZoom framework. Behind the scenes there are some real gems: Bit Twiddling Hacks, Mathematics, Vectors in OpenZoom. Enjoy…

Demo: Z-Order Visualization

Z-Order
View Demo | View Source | View ZOrder Class Source


Thoughts
  1. 06.01.2009
    19:07

    Ben

    I wonder how you can zoom this amount of vectors in Flash without any lagging (on my average computer)

  2. 06.01.2009
    20:08

    Daniel Gasienica

    How? Come in and find out…

  3. 08.01.2009
    2:00

    Ian Gilman

    On a related note, see this XKCD:

    http://xkcd.com/195/

  4. 08.01.2009
    2:20

    Daniel Gasienica

    Ian, thanks for sharing. This is hilarious… gotta love XKCD.

  5. 24.03.2009
    10:36

    Mark Bjærgager

    Hi Daniel.
    I’ve been looking for at great zoom product for Flex and it seems I found it. :-) Thanks for your great work.

    I have a question though : Is it possible to implement a layer on top of the viewport that would enable “popup” or “annotations” just like eg. gmaps or ymaps – setting a POI on the image and having a icon follow that POI when zooming and panning and receiving events (click/rightclick etc)

    Any ideas on that topic.

    Again : thanks for your great work. Like the tile overlap which eliminates the small lines that sometimes appear in zoomify implementations.

    Best regards,
    Mark

  6. 24.03.2009
    10:43

    Daniel Gasienica

    Mark,
    Happy you’ve found OpenZoom! Glad you ask about the annotations. The original idea behind the OpenZoom SDK is to empower developers to seamlessly integrate it with their applications. If you check out the OpenZoom SDK from the Google Code repository, you’ll find a Flex component called MultiScaleContainer. Think of it as a zoomable container. It does not support objects of type UIComponent but you can add sprites, movieclips, video, text etc.
    Play around with it!
    Cheers,
    Daniel

  7. 17.08.2009
    10:32

    Rakesh Parmar

    Hi Deniel,

    Thanks for giving us product like OpenZoom.it’s big relief to find such a product in open source space.

    I tried annotations on container control.but my requirement is to display multi scale image produced by DeepZoom Composer and then display annotation on top of it.I am able to load deep zoom image using MultiScaleRenderer but annotation on top of it are not rendering properly.I want to try out annotation at different zoom level.i.e. changing zoom level should also change annotation position to reflect their position on zoomed image.
    other thing i want to know is how much feasible it to implement annotation using OpenZoom as i want all features of annotations including various shapes for annotations,drag and drop and also like to handle various events.

    Thanks in advance,
    Rakesh

  8. 17.08.2009
    12:52

    Daniel Gasienica

    Rakesh,
    Glad you like OpenZoom. Annotations are certainly possible to do, in fact there are many examples out there that demonstrate it. For example, the guys from Ghost Interactive created the Overlay Extension for the OpenZoom SDK:
    http://ghostinteractive.net/blog/?p=334

    Then there are also the AudioSpot Extensions:
    http://ghostinteractive.net/blog/?p=520

    Last but not least there are several examples in the OpenZoom SDK download, e.g. Power Law Scaling:
    http://github.com/openzoom/sdk/tree/94ba1eae461338ab2ee476cfebe03515a05b59c0/examples

    If you have specific questions about how to achieve something, please join our community: http://openzoom.org/go/community

    Best regards
    Daniel


What do you think?

Leave a Reply