An NDoc Documented Class Library

IPath Interface

For a list of all members of this type, see IPath Members.

public interface IPath

Types that implement IPath

Type Description
ActiveCtrl The ActiveCtrl inherits from an entity. It holds properties and methods to implement interactive manipulations of graphical datas.
It is bouded to a Device and is located as child of Work With the Mouse- and Keyevents you have an instrument to handle actions of an user. The methods ctrlMarker, ctrlLine,ctrlCurve and ctrlPoly are nice drawmethods. They change the Color ( HoverColor if the mouse lays over it. By a click you get information about the tag, which is setted as parameter to these methods.
...
protected override void draw(MNDevice device)
    { 
    ...
        ctrlMarker(new xyz(4, 4, 0), 2006);
        // draws a marker at position (4 / 4/ 0)
        // if the mouse moves over this marker then it will be highlighted with 
        //hovercolor
        ctrlMarker(new xyz(0, 4, 0), 2007);
        ctrlMarker(new xyz(0, 0, 0), 2008);
        
    ...
        
    }

protected override void MouseMove( System.Windows.Forms.MouseEventArgs e)
    {
    if (CurrentHit!=null)
     switch ((int)CurrentHit.Tag)
     {
        case 2006 :// Mouse is at Marker  4/ 4/ 0 
                    break;
        case 2007 :// Mouse is at Marker  0/ 4/ 0 
                    break;
        case 2008 :// Mouse is at Marker  0/ 0/ 0 
                    break;
     }
    }
...
CurveEditor  
OpenGlDevice Zusammenfassung für OpenGlDevice.
DrawCtrl  
Entity Entity is the foundationclass for all graphical classes. She contains a Transformation and can ordered in a treestructured system becaus she is an instance of MNComponent. Additionally she has a public virtual Paintmethod, who will be called by the parent. To start this painting one of the parents must be setted as Root of a device or as child of Work of a device. then the device starts the painting by its own Paint-Method.
The method Paint is calling the protected method draw. It is better to override draw then Paint, because in the Paintmethod some calls enclose the drawmethod ( for example the transformation will be setted ).
HelpGeometry2D  
MarkeredRectCtrl  
MNComponent MNComponent is the rootclass, from which are derived some important classes, like Entity and MNDevice. The class is typical for a nodestructure. So she contains children and has a parent by himself. With the property MNName a node inner a parent is unique. With the function fullPath you get an unique nodedescription by "/" separated names. If you set the parent, the MNComponent is added to the children of this parent. In case of generatenams = true a valid name is generated and set to the MNComponent. The default indexer is set to a MNComponentclass
MNDevice MNDevice is the basic abstract class for all the other devices. She implements all concepts of a modern graphicengine, like Lights,Material, Texture, ProjectionMatrix... Beside the representation of graphic objects she offers the possibility beyond that to select graphical objects in a very confortable way See HitItemList The MNdevice is linked to a WinControl and manages also their mouseevents ( MouseMove ,MouseDown , MouseUp, windowsevents (Resize, OnPaint ..).
The fastest way to see some result is to use the OnPaint-Method. There you can set up some primitive drawmethods like (drawPolyLine, drawSurface, drawPolyCurve,...). With the property Navigate a automatical navigation of the device can be forced.

From this device derived are the
- OpenGlDevice :
She uses the opengllibrary opengl32.dll.
- DirectXDevice:
She uses Microsofts Directdraw.
RectCtrl  
RectEditor  
SimpleCad  
TaskCtrl  
TextCtrl The curveeditor handles alist of curves CurveArray. With the methods CreateBeziers, CreateLines, CreateQSplines you can create curves.
TextEditor  
TextObject  
TransformEditor  

Requirements

Namespace: Minais.Drawing3d

Assembly: Drawing3d (in Drawing3d.dll)

See Also

IPath Members | Minais.Drawing3d Namespace