WxArt2D is a library for 2D graphical programming. WxArt2D is built on top of the wxWidgets Graphical primitives and other objects are derived from the base canvas object and managed in a document. The objects in this document are read from a file or created by the source code. The drawing document can be made hierarchical by adding child objects to a parent canvas object. Because a canvas object is reference counted, there can be more the one parent on the same canvas object. A unique part, or level, in the hierarchy can be referenced and drawn at different locations. Views are used to display the contents of a document in a device context. A document traverses itself, starting at a chosen level in the hierarchy and with a given viewport. Everything that it encounters within the viewport will be displayed as a view in the device context. The device context may be a window, a bitmap or even a file. A view is used to display certain parts of a document, but at the same time it has an internal drawing context (a2dDrawer2D ) assigned to it. While traversing a a2dCanvasDocument , for example (a2dCanvasView ), the drawing context assigned to it is used by the view for the drawing the document. Everything that is drawn from within a document, is achieved by calling drawing methods on a view's drawing context. Drawing context implementations are derived from a2dDrawer2D . One can switch the internal drawing context of a2dCanvasView on the fly. For example to switch between anti aliased rendering and normal wxDc based rendering. A document can have several views open at the same time. Each view can display different parts of the document.

Some Features: