Draws a rectangle on the viewer.
public class ImageViewerRubberBandInteractiveMode : Leadtools.Controls.ImageViewerInteractiveMode Public Class ImageViewerRubberBandInteractiveModeInherits Leadtools.Controls.ImageViewerInteractiveMode
public sealed class ImageViewerRubberBandInteractiveMode : Leadtools.Controls.ImageViewerInteractiveMode @interface LTImageViewerRubberBandInteractiveMode : LTImageViewerInteractiveMode <NSCoding> public class ImageViewerRubberBandInteractiveMode extends ImageViewerInteractiveMode function Leadtools.Controls.ImageViewerRubberBandInteractiveMode() ImageViewerRubberBandInteractiveMode derives from ImageViewerInteractiveMode and subscribes to the following events of the InteractiveService:
ImageViewerRubberBandInteractiveMode works as follows:
ImageViewerRubberBandInteractiveMode interactive mode does not perform any action on the viewer (besides drawing, moving and then removing the rectangle). It is up to the user to implement any custom operation required. For example, to select a region of interest on the image. ImageViewerZoomToInteractiveMode derives from ImageViewerRubberBandInteractiveMode and calls ImageViewer.ZoomToRect upon the receiving of RubberBandCompleted event.
using Leadtools;using Leadtools.Codecs;using Leadtools.Controls;public void ImageViewerRubberBandInteractiveModeExample(){// Set rubber band as the default interactive modeImageViewerRubberBandInteractiveMode rubberBandMode = new ImageViewerRubberBandInteractiveMode();// Customize itrubberBandMode.BorderColor = Windows.UI.Color.FromArgb(255, 255, 0, 0);rubberBandMode.BorderDashArray = 4;rubberBandMode.BorderThickness = 2;rubberBandMode.BorderDashOffset = 2;// Hook to its RubberBandCompleted eventrubberBandMode.RubberBandCompleted += rubberBandMode_RubberBandCompleted;_viewer.DefaultInteractiveMode = rubberBandMode;_infoLabel.Text = "Draw a blue with yellow border rectangle on the image";}// Called by the base class when the mode is stoppedvoid rubberBandMode_RubberBandCompleted(object sender, ImageViewerRubberBandEventArgs e){// Get the final rectangleLeadRectD rect = LeadRectDHelper.FromLTRB(e.Point1.X, e.Point1.Y, e.Point2.X, e.Point2.Y);// Get the visible rect of the _viewerRect imageControlRect = _viewer.ImageControlRectangle(true);LeadRectD visibleRect = LeadRectDHelper.FromLTRB(imageControlRect.Left, imageControlRect.Top, imageControlRect.Right, imageControlRect.Bottom);// Interset this rectangle with the visible area of the _viewerrect = LeadRectDHelper.Intersect(rect, visibleRect);// Make sure it has some width and height and not too smallif (rect.Width > 0 && rect.Height > 0){// Get the viewer canvasCanvas viewerCanvas = _viewer.InteractiveModeCanvas;double x = rect.X;double y = rect.Y;double width = rect.Width;double height = rect.Height;// Add rectangle shape filled with BlueRectangle rectShape = new Rectangle{Width = rect.Width,Height = rect.Height,Fill = new SolidColorBrush(Windows.UI.Color.FromArgb(255, 0, 0, 255)),StrokeThickness = 2};Canvas.SetLeft(rectShape, x);Canvas.SetTop(rectShape, y);viewerCanvas.Children.Add(rectShape);// Invalidate the _viewer (so it draws the back canvas into the foreground)_viewer.Invalidate();}}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
