LEADTOOLS Medical (Leadtools.Medical3D assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.30
LoadAnnotations(String) Method
See Also 
Leadtools.Medical3D Namespace > Medical3DControl Class > LoadAnnotations Method : LoadAnnotations(String) Method



fileName
A string that contains the path to the file being loaded.

The LoadAnnotations(String) Method is available as an add-on to the LEADTOOLS Medical Imaging toolkits.

fileName
A string that contains the path to the file being loaded.
Loads the annotation container(s) in a cell.

Syntax

Visual Basic (Declaration) 
Overloads Public Sub LoadAnnotations( _
   ByVal fileName As String _
) 
Visual Basic (Usage)Copy Code
Dim instance As Medical3DControl
Dim fileName As String
 
instance.LoadAnnotations(fileName)
C# 
public void LoadAnnotations( 
   string fileName
)
C++/CLI 
public:
void LoadAnnotations( 
   String^ fileName
) 

Parameters

fileName
A string that contains the path to the file being loaded.

Example

Visual BasicCopy Code
Private Class MedicalViewerForm9 : Inherits Form
      Private _medicalViewer As MedicalViewer
      Private LoadAnnotation As Button
      Private SaveAnnotation As Button
      Private Sub MedicalViewerForm_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)
         _medicalViewer.Bounds = New Rectangle(0, 100, Me.ClientRectangle.Right, Me.ClientRectangle.Bottom - 100)
      End Sub


      Public Sub New()
         Dim _codecs As RasterCodecs = New RasterCodecs()
         Dim _image As RasterImage

         AddHandler SizeChanged, AddressOf MedicalViewerForm_SizeChanged

         ' Create the medical viewer and adjust the size and the location.
         _medicalViewer = New MedicalViewer(1, 2)
         _medicalViewer.Location = New Point(0, 100)
         _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom - 100)

         ' Load an image and then add it to the control.
         _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "xa.dcm"))
         Dim cell As MedicalViewerMultiCell = New MedicalViewerMultiCell(_image, True, 1, 1)
         _medicalViewer.Cells.Add(cell)

         ' add some action that will be used to change the properties of the images inside the control.
         cell.AddAction(MedicalViewerActionType.AnnotationRectangle)
         cell.AddAction(MedicalViewerActionType.AnnotationEllipse)
         cell.AddAction(MedicalViewerActionType.AnnotationHilite)

         ' assign the added actions to a mouse button, meaning that when the user click and drag the mouse button, the associated action will be activated.
         cell.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
         cell.SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
         cell.SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)

         ' adjust some properties to 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)


         ' Load another image and then add it to the control.
         _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "mr.dcm"))
         _medicalViewer.Cells.Add(New MedicalViewerMultiCell(_image, True, 2, 2))

         ' add some action that will be used to change the properties of the images inside the control.
         _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.AnnotationRectangle)
         _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.AnnotationEllipse)
         _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.AnnotationHilite)

         ' assign the added actions to a mouse button, meaning that when the user click and drag the mouse button, the associated action will be activated.
         _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
         _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)
         _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active Or MedicalViewerActionFlags.RealTime)

         ' adjust some properties to the cell and add some tags.
         _medicalViewer.Cells(1).SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448")
         _medicalViewer.Cells(1).SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame)
         _medicalViewer.Cells(1).SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale)
         _medicalViewer.Cells(1).SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData)
         _medicalViewer.Cells(1).SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView)



         LoadAnnotation = New Button()
         LoadAnnotation.Bounds = New Rectangle(10, 10, 100, 30)
         LoadAnnotation.Text = "Load Annotation"
         AddHandler LoadAnnotation.Click, AddressOf LoadAnnotation_Click

         SaveAnnotation = New Button()
         SaveAnnotation.Bounds = New Rectangle(110, 10, 100, 30)
         SaveAnnotation.Text = "Save Annotation"
         AddHandler SaveAnnotation.Click, AddressOf SaveAnnotation_Click

         Controls.AddRange(New Control() { _medicalViewer, LoadAnnotation, SaveAnnotation })

      End Sub

      Public ReadOnly Property Viewer() As MedicalViewer
         Get
            Return _medicalViewer
         End Get
      End Property

      Private Function GetFileStream() As FileStream
         Dim fs As FileStream
         If File.Exists(Path.Combine(LEAD_VARS.ImagesDir, "SavedAnnotation.ann")) Then
            fs = New FileStream(Path.Combine(LEAD_VARS.ImagesDir, "SavedAnnotation.ann"), FileMode.Open)
         Else
            fs = File.Create(Path.Combine(LEAD_VARS.ImagesDir, "SavedAnnotation.ann"))
         End If

         Return fs
      End Function

      Private Sub SaveAnnotation_Click(ByVal sender As Object, ByVal e As EventArgs)
         Dim fs As FileStream = GetFileStream()
         Dim cell As MedicalViewerMultiCell = CType(_medicalViewer.Cells(0), MedicalViewerMultiCell)

         cell.SaveAnnotations(fs, 0)
         fs.Close()
      End Sub

      Private Sub LoadAnnotation_Click(ByVal sender As Object, ByVal e As EventArgs)
         Dim fs As FileStream = GetFileStream()
         Dim cell As MedicalViewerMultiCell = CType(_medicalViewer.Cells(0), MedicalViewerMultiCell)

         cell.LoadAnnotations(fs, 0)
         fs.Close()
      End Sub
   End Class


   Private Function GetMedicalControl9() As MedicalViewerForm9
      Return New MedicalViewerForm9()
   End Function

   ' This example copied the annotation container of the sub-cell when user right clicks on it, and paste the annotation container on the sub-cell that the user click on it using the left mouse button.
   <Test> _
   Public Sub MedicalViewerSaveAnnotationExample()
      Dim myForm As MedicalViewerForm9 = GetMedicalControl9()
      Dim medicalViewer As MedicalViewer = myForm.Viewer

      myForm.ShowDialog()
   End Sub


Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
class MedicalViewerForm9 : Form
     {
         private MedicalViewer _medicalViewer;
         Button LoadAnnotation;
         Button SaveAnnotation;
         void MedicalViewerForm_SizeChanged(object sender, EventArgs e)
         {
             _medicalViewer.Bounds = new Rectangle(0, 100, this.ClientRectangle.Right, this.ClientRectangle.Bottom - 100);
         }


         public MedicalViewerForm9()
         {
             RasterCodecs _codecs = new RasterCodecs();
             RasterImage _image;

             this.SizeChanged += new EventHandler(MedicalViewerForm_SizeChanged);

             // Create the medical viewer and adjust the size and the location.
             _medicalViewer = new MedicalViewer(1, 2);
             _medicalViewer.Location = new Point(0, 100);
             _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom - 100);

             // Load an image and then add it to the control.
             _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir,"xa.dcm"));
             MedicalViewerMultiCell cell = new MedicalViewerMultiCell(_image, true, 1, 1);
             _medicalViewer.Cells.Add(cell);

             // add some action that will be used to change the properties of the images inside the control.
             cell.AddAction(MedicalViewerActionType.AnnotationRectangle);
             cell.AddAction(MedicalViewerActionType.AnnotationEllipse);
             cell.AddAction(MedicalViewerActionType.AnnotationHilite);

             // assign the added actions to a mouse button, meaning that when the user click and drag the mouse button, the associated action will be activated.
             cell.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime);
             cell.SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime);
             cell.SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime);

             // adjust some properties to 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);


             // Load another image and then add it to the control.
             _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir,"mr.dcm"));
             _medicalViewer.Cells.Add(new MedicalViewerMultiCell(_image, true, 2, 2));

             // add some action that will be used to change the properties of the images inside the control.
             _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.AnnotationRectangle);
             _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.AnnotationEllipse);
             _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.AnnotationHilite);

             // assign the added actions to a mouse button, meaning that when the user click and drag the mouse button, the associated action will be activated.
             _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime);
             _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime);
             _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime);

             // adjust some properties to the cell and add some tags.
             _medicalViewer.Cells[1].SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448");
             _medicalViewer.Cells[1].SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame);
             _medicalViewer.Cells[1].SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale);
             _medicalViewer.Cells[1].SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData);
             _medicalViewer.Cells[1].SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView);



             LoadAnnotation = new Button();
             LoadAnnotation.Bounds = new Rectangle(10, 10, 100, 30);
             LoadAnnotation.Text = "Load Annotation";
             LoadAnnotation.Click += new EventHandler(LoadAnnotation_Click);

             SaveAnnotation = new Button();
             SaveAnnotation.Bounds = new Rectangle(110, 10, 100, 30);
             SaveAnnotation.Text = "Save Annotation";
             SaveAnnotation.Click += new EventHandler(SaveAnnotation_Click);

             Controls.AddRange(new Control[] { _medicalViewer, LoadAnnotation, SaveAnnotation });

         }

         public MedicalViewer Viewer
         {
             get { return _medicalViewer; }
         }

         FileStream GetFileStream()
         {
             FileStream fs;
             if (File.Exists(Path.Combine(LEAD_VARS.ImagesDir,"SavedAnnotation.ann")))
                 fs = new FileStream(Path.Combine(LEAD_VARS.ImagesDir,"SavedAnnotation.ann"), FileMode.Open);
             else
                 fs = File.Create(Path.Combine(LEAD_VARS.ImagesDir,"SavedAnnotation.ann"));

             return fs;
         }

         void SaveAnnotation_Click(object sender, EventArgs e)
         {
             FileStream fs = GetFileStream();
             MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(_medicalViewer.Cells[0]);

             cell.SaveAnnotations(fs, 0);
             fs.Close();
         }

         void LoadAnnotation_Click(object sender, EventArgs e)
         {
             FileStream fs = GetFileStream();
             MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(_medicalViewer.Cells[0]);

             cell.LoadAnnotations(fs, 0);
             fs.Close();
         }
     }


     MedicalViewerForm9 GetMedicalControl9()
     {
         return new MedicalViewerForm9();
     }

     // This example copied the annotation container of the sub-cell when user right clicks on it, and paste the annotation container on the sub-cell that the user click on it using the left mouse button.

     public void MedicalViewerSaveAnnotationExample()
     {
         MedicalViewerForm9 myForm = GetMedicalControl9();
         MedicalViewer medicalViewer = myForm.Viewer;

         myForm.ShowDialog();
     }


static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}

Remarks

This method will load the annotations to a file.

To save the annotations, use the Leadtools.MedicalViewer.MedicalViewerBaseCell.SaveAnnotations(System.String) method.

For more information, refer to Working With Annotations.

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also

Leadtools.Medical3D requires a Document or Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features