VintaSoft Imaging .NET SDK v8.6
Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects Namespace / WpfGraphicObjectTool Class
Members Example



In This Topic
    WpfGraphicObjectTool Class
    In This Topic
    Visual tool for displaying static graphic objects in an image viewer.
    Object Model
    WpfGraphicObjectTool ClassIWpfInteractionController InterfaceWpfImageViewer Class
    Syntax
    Example
    This example shows how to draw two graphic object on viewer: first object - rectangle (red) that uses coordinate system of current image, second object - ellipse (green) that uses coordinate system of image viewer:
    ''' <summary>
    ''' Tests the graphics objects on image viewer.
    ''' </summary>
    ''' <param name="viewer">The viewer.</param>
    Public Shared Sub TestGraphicsObjects(viewer As Vintasoft.Imaging.Wpf.UI.WpfImageViewer)
        ' objects location and size
        Dim objectBBox As New System.Windows.Rect(40, 60, 80, 100)
                
        ' object fill brush
        Dim brush As System.Windows.Media.Brush = New System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(128, 255, 255, 255))
                
        ' create Rectangular Graphic Object
        Dim rect As New Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfRectangularGraphicObject(objectBBox, New System.Windows.Media.Pen(System.Windows.Media.Brushes.Red, 10), brush)
        ' use current image coordinate space for rectange
        rect.PointTransform = New Vintasoft.Imaging.Wpf.UI.VisualTools.WpfPixelsToImageViewerPointTransform()
                
        ' create Elliptical Graphic Object
        Dim ellipse As New Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfEllipticalGraphicObject(objectBBox, New System.Windows.Media.Pen(System.Windows.Media.Brushes.Green, 10), brush)
        ' use image viewer coordinate space for ellipse
        ellipse.PointTransform = Nothing
                
        ' create GraphicObjectTool
        Dim graphicObjects As New Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfGraphicObjectTool()
        graphicObjects.GraphicObjectCollection.Add(rect)
        graphicObjects.GraphicObjectCollection.Add(ellipse)
                
        ' set GraphicObjectTool as current tool of ImageViewer
        viewer.VisualTool = graphicObjects
    End Sub
    /// <summary>
    /// Tests the graphics objects on image viewer.
    /// </summary>
    /// <param name="viewer">The viewer.</param>
    public static void TestGraphicsObjects(Vintasoft.Imaging.Wpf.UI.WpfImageViewer viewer)
    {
        // objects location and size
        System.Windows.Rect objectBBox = new System.Windows.Rect(40, 60, 80, 100);
                
        // object fill brush
        System.Windows.Media.Brush brush = 
            new System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(128, 255, 255, 255));
                
        // create Rectangular Graphic Object
        Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfRectangularGraphicObject rect = 
            new Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfRectangularGraphicObject(
                objectBBox, new System.Windows.Media.Pen(System.Windows.Media.Brushes.Red, 10), brush);
        // use current image coordinate space for rectange
        rect.PointTransform = new Vintasoft.Imaging.Wpf.UI.VisualTools.WpfPixelsToImageViewerPointTransform();
                
        // create Elliptical Graphic Object
        Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfEllipticalGraphicObject ellipse = 
            new Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfEllipticalGraphicObject(
                objectBBox, new System.Windows.Media.Pen(System.Windows.Media.Brushes.Green, 10), brush);
        // use image viewer coordinate space for ellipse
        ellipse.PointTransform = null;
                
        // create GraphicObjectTool
        Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfGraphicObjectTool graphicObjects = 
            new Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfGraphicObjectTool();
        graphicObjects.GraphicObjectCollection.Add(rect);
        graphicObjects.GraphicObjectCollection.Add(ellipse);
                
        // set GraphicObjectTool as current tool of ImageViewer
        viewer.VisualTool = graphicObjects;
    }
    Inheritance Hierarchy

    System.Object
       System.Windows.Threading.DispatcherObject
          System.Windows.DependencyObject
             System.Windows.Media.Visual
                System.Windows.UIElement
                   System.Windows.FrameworkElement
                      System.Windows.Controls.Control
                         System.Windows.Controls.ContentControl
                            Vintasoft.Imaging.Wpf.UI.VisualTools.WpfVisualTool
                               Vintasoft.Imaging.Wpf.UI.VisualTools.UserInteraction.WpfUserInteractionVisualTool
                                  Vintasoft.Imaging.Wpf.UI.VisualTools.GraphicObjects.WpfGraphicObjectTool

    Requirements

    Target Platforms: Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, Windows Server 2012, Windows Server 2008, Windows Server 2003

    See Also