Fork me on GitHub

VGLViewer

A 2D vector graphics renderer in Java
using advanced object-oriented
principles

Download

Source Code

Introduction

What makes good object-oriented design? In this project I'll take you through the design of a 2D vector graphics renderer I wrote in Java. Click on each of the packages below to go a page of documentation on it. To see where I've applied design goodness, take a look at these indexes of their design principles and design patterns.
VGLViewer Packages

VGLViewer Packages

VGLViewer - the main package that ties all the other packages together
vglDocument - the document data model
vglDocument.utils - utilities for loading and building the document model
vglRenderer - renders a view of the document model
docViewPanel - panel widget that the document view
boundaryMap - fast element clipper used when rendering a document view
sdaz - speed-dependent automatic zoomer used for navigating a document view

Go to documentation on this packageGo to documentation on this packageGo to documentation on this packageGo to documentation on this packageGo to documentation on this packageGo to documentation on this packageGo to documentation on this package