MedicalViewerSpyGlass Constructor(int,int,int,Color,bool,int,bool,MedicalViewerCrosshairStyle)

Summary
Initializes a new instance of the MedicalViewerSpyGlass class with specified width, height, zoom factor, border color, shape, 3D border value, and crosshair.
Syntax
C#
C++/CLI
            public: 
MedicalViewerSpyGlass(  
   int width, 
   int height, 
   int zoom, 
   Color penColor, 
   bool elliptical, 
   int borderSize, 
   bool border3d, 
   MedicalViewerCrosshairStyle crosshair 
) 

Parameters

width
The width of the spy glass.

height
The height of the spy glass.

zoom
The zoom factor of the spy glass.

penColor
The color of the spy glass border

elliptical
true to show an elliptical spy glass, false to show a rectangular spy glass.

borderSize
The border thickness of the spy glass .

border3d
true to show a 3D border, false to show a flat border.

crosshair
The type of crosshair of the spy glass.

Example
C#
using Leadtools; 
using Leadtools.Dicom; 
using Leadtools.Medical3D; 
using Leadtools.Codecs; 
using Leadtools.MedicalViewer; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Core; 
using Leadtools.ImageProcessing.Color; 
using Leadtools.Annotations.Engine; 
using Leadtools.Annotations.Designers; 
 
class MedicalViewerSpyGlassForm : Form 
{ 
   private MedicalViewer _medicalViewer; 
 
   void MedicalViewerLocalizer_SizeChanged(object sender, EventArgs e) 
   { 
      _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); 
   } 
 
   public MedicalViewerSpyGlassForm() 
   { 
      DicomEngine.Startup(); 
      RasterCodecs _codecs = new RasterCodecs(); 
 
      this.SizeChanged += new EventHandler(MedicalViewerLocalizer_SizeChanged); 
 
      // Create the medical viewer and adjust the size and the location. 
      _medicalViewer = new MedicalViewer(1, 2); 
      _medicalViewer.Location = new Point(0, 0); 
      _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); 
 
      // Load an image and then add it to the control. 
      RasterImage _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "xa.dcm")); 
      MedicalViewerMultiCell cell = new MedicalViewerMultiCell(_image, true, 1, 1); 
 
      cell.FitImageToCell = false; 
 
      // add some actions that will be used to change the properties of the images inside the control. 
      cell.AddAction(MedicalViewerActionType.Scale); 
      cell.AddAction(MedicalViewerActionType.Offset); 
      cell.AddAction(MedicalViewerActionType.SpyGlass); 
 
      // assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated. 
      cell.SetAction(MedicalViewerActionType.Scale, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active); 
      cell.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active); 
      cell.SetAction(MedicalViewerActionType.SpyGlass, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active); 
 
      cell.SpyGlassStarted += new EventHandler<MedicalViewerSpyGlassStartedEventArgs>(cell_SpyGlassStarted); 
 
      // adjust some spy glass properties. 
      cell.SpyGlass.PositionText = MedicalViewerSpyGlassTextType.Actual; 
      cell.SpyGlass.ZoomText = MedicalViewerSpyGlassTextType.Percentage; 
      cell.SpyGlass.ZoomOnScroll = true; 
 
      _medicalViewer.Cells.Add(cell); 
      // adjust some properties of the cell and add some tags. 
      _medicalViewer.Cells[0].SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448"); 
      _medicalViewer.Cells[0].SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame); 
      _medicalViewer.Cells[0].SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale); 
      _medicalViewer.Cells[0].SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData); 
      _medicalViewer.Cells[0].SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView); 
 
      cell.ScaleType = MedicalViewerScaleType.Dynamic; 
 
      Controls.Add(_medicalViewer); 
      _medicalViewer.Dock = DockStyle.Fill; 
      DicomEngine.Shutdown(); 
   } 
 
   void cell_SpyGlassStarted(object sender, MedicalViewerSpyGlassStartedEventArgs e) 
   { 
      if (e.Image != null) 
      { 
         Leadtools.ImageProcessing.Color.InvertCommand invert = new Leadtools.ImageProcessing.Color.InvertCommand(); 
         invert.Run(e.Image); 
      } 
   } 
 
   void MedicalViewerLocalizer_FormClosing(object sender, FormClosingEventArgs e) 
   { 
   } 
 
 
   public MedicalViewer Viewer 
   { 
      get { return _medicalViewer; } 
   } 
} 
 
MedicalViewerSpyGlassForm GetMedicalViewerSpyGlassForm() 
{ 
   MessageBox.Show("Hold down Left click to show the spy glass, \n move the mouse while you hold the mouse button down to move the spy glass. \n scroll while holding the mouse down to zoom in or out"); 
   return new MedicalViewerSpyGlassForm(); 
} 
 
// This example changes the default window level value by decrease the width by 100. Then resets the images based on the new value. 
public void MedicalViewerSpyGlassExample() 
{ 
   MedicalViewerSpyGlassForm myForm = GetMedicalViewerSpyGlassForm(); 
   MedicalViewer medicalViewer = myForm.Viewer; 
 
   myForm.ShowDialog(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.MedicalViewer Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.