Free cookie consent management tool by TermsFeed Policy Generator

Changes between Version 1 and Version 2 of ComponentDesign


Ignore:
Timestamp:
11/14/08 11:48:55 (16 years ago)
Author:
gkragl
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ComponentDesign

    v1 v2  
    33== Metaphor: Charting Framework ==
    44A modular framework for easy development of charts to represent different data structures. The transformation of input data should be as dynamic as possible to allow an easy expansion of functionality. The representation of data has to be interactiv and dynamic (live visualization).
     5
     6
     7[[Image(component design_small.png)]]
     8
     9== User application ==
     10
     11The user application creates and configures a concrete chart, links its user application data to the chart for displaying.
     12
     13== Chart ==
     14
     15Each concrete chart receives application data from the user application, which it filters and converts to shapes for display on the canvas. It handles the user input notifications that it receives from the canvas and modifies the shapes accordingly.
     16
     17== Canvas ==
     18
     19The canvas provides the means for the efficient drawing of and the basic interaction with shapes on an infinite real plane. A view on that plane can be specified and will be rendered as image. The dimensions of the view are specified in units of the user application data and will be transformed to screen coordinates by the canvas. It provides notifications on user input like mouse clicks, mouse movements and keyboard input such that the chart can react to them and modify the shapes accordingly.
     20
     21== Application data ==
     22
     23The data structures provided from the application. This data set may be changing over time and the Chart may react to the changes. So the chart can display live status of the output.
     24
     25== Chart-specific data structures ==
     26
     27The chart specific data structures describe the data to be displayed on the chart. That includes the actual user application data to be visualized as well as visual properties like colors or line widths.
     28
     29== Shapes ==
     30
     31Shapes can be defined by the user of the canvas. Shapes “know” how to draw themselves. There can be primitive shapes like lines and circles as well as composite shapes that consist of other shapes. Complex “controls” like scroll bars, legends and coordinate planes can be defined as composite shapes. Shapes have a z-order, which is required for drawing the shapes in the correct order and for invalidation.
     32
     33== Filter ==
     34
     35The filtering of the application data: so the application supports a bunch of data but the line chart only needs a subset of this data and if you want to visualize the same data in a point matrix chart, you may need an other part of data (or for example only every second point,..)
     36
     37== Preprocess ==
     38
     39Preprocess is the process of converting the (maybe filtered) user application data into chart specific data structures (e.g. converting some points into a matrix for more performant oparations to create the shapes)
     40
     41== Interactions and events ==
     42
     43Examples for user interactions on the canvas:
     44* Drag and Drop of Shapes
     45* Zooming, panning
     46* Draw new shapes
     47* mouseover over shapes
     48* selecting shapes
     49
     50These events will be submitted to the chart engine which will decide how to react on specific interactions because this may vary in the different charts.