|
|
|
|
|
Flexible Architecture
Essential Diagram is designed to be a high-performance, modular, easy-to-use and easy-to-customize engine. Many of the classes and components in the library can be sub-classed, providing users the ability to extend and customize the library to meet their needs.
|
|
|
|
Essential Diagram employs the MVC (Model-View-Controller) design to clearly separate data, presentation and user interaction.
Model
A Model is a collection of nodes that are rendered on a view and manipulated by a controller. The Diagram document represents the Model in this pattern.
View
A View is an object that draws the model in a rectangular area on the screen. A view also renders additional visual information that does not exist inside the model, such as bounding boxes, coordinate axes, and grids.
View also provides methods to perform hit testing. When a mouse event occurs, the point at which the event occurred is always provided in device coordinates. Since the View maps device coordinates and world coordinates, the View is the logical entry point for hit testing routines.
Controller
A Controller is an object that receives user input and translates it to actions and commands on the Model and View. A Controller contains one or more tools which are re-usable objects and these tools implement a slice of functionality for the controller.
The Model, View and Controller objects communicate with each other through well defined interfaces.
Model-View-Controller Architecture for Essential Diagram
Benefits:
A significant advantage to this design is that the model, view and controller components are interchangeable. Users may swap them with other components to build highly specialized applications.
Another key benefit of this design is that it reduces the complexity of the product which, in turn, increases reliability.
|
|
|
|
Properties can be inherited from parent nodes and users can apply property values to one node or all child nodes in the model. There is also support for adding custom properties at run-time.
Custom Symbols with their Properties
|
|
|
|
Essential Diagram lets users export their diagrams to a variety of data formats such as bitmaps, enhanced metafiles, and SVG format files. Alternatively, with a license of Essential PDF, diagrams can be exported as PDF documents as well. Diagrams can be directly saved as bitmaps or rendered to an external graphics device context to write out as an enhanced metafile image.
Exported Diagram in EMF Image Format
Exported Diagram in SVG Image Format
Exported Diagram in PDF Format
|
|
|
|
|
|
|
|