Last change
on this file since 1500 was
1240,
checked in by mstoeger, 15 years ago
|
Transformations on shapes are possible outside of the Draw method. (#424)
|
File size:
1.3 KB
|
Rev | Line | |
---|
[635] | 1 | using System.Drawing;
|
---|
| 2 |
|
---|
| 3 | namespace HeuristicLab.Visualization {
|
---|
[1234] | 4 | /// <summary>
|
---|
| 5 | /// This is the base interface that has to be implemented by all shapes.
|
---|
| 6 | ///
|
---|
| 7 | /// View port
|
---|
| 8 | /// The view port is the available drawing area on the screen.
|
---|
| 9 | /// It is specified in the GDI coordinate system.
|
---|
| 10 | ///
|
---|
| 11 | /// Clipping area
|
---|
| 12 | /// The clipping area is the range of values visible on the view port.
|
---|
| 13 | /// Values outside this area will not be visible (they "get clipped").
|
---|
| 14 | /// It can either be inherited from the parent, or it can be overriden
|
---|
| 15 | /// to create distorted realities (see world shapes).
|
---|
| 16 | /// It is specified in a world coordinate system.
|
---|
| 17 | ///
|
---|
| 18 | /// Bounding box
|
---|
| 19 | /// The bounding box is the location and the size of a shape on its parent.
|
---|
| 20 | /// It is specified in the parent's world coordinate system.
|
---|
| 21 | /// </summary>
|
---|
[635] | 22 | public interface IShape {
|
---|
[1234] | 23 | /// <summary>
|
---|
| 24 | /// Draws the shape
|
---|
| 25 | /// </summary>
|
---|
| 26 | /// <param name="graphics">The Graphics object used to draw the shape</param>
|
---|
[1240] | 27 | void Draw(Graphics graphics);
|
---|
[1234] | 28 |
|
---|
| 29 | /// <summary>
|
---|
| 30 | /// The shape's bounding box
|
---|
| 31 | /// </summary>
|
---|
[635] | 32 | RectangleD BoundingBox { get; }
|
---|
[1240] | 33 |
|
---|
| 34 | RectangleD ClippingArea { get; }
|
---|
| 35 | Rectangle Viewport { get; }
|
---|
| 36 |
|
---|
| 37 | IShape Parent { get; set; }
|
---|
[635] | 38 | }
|
---|
| 39 | }
|
---|
Note: See
TracBrowser
for help on using the repository browser.