Leadtools.MedicalViewer Requires Medical Imaging license | Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
LoadAnnotations(Stream) Method
See Also  Example
Leadtools.MedicalViewer Namespace > MedicalViewerCell Class > LoadAnnotations Method : LoadAnnotations(Stream) Method



stream
A Stream that contains the file being loaded.
Loads the annotation container(s) in a cell.

Syntax

Visual Basic (Declaration) 
Public Overloads Sub LoadAnnotations( _
   ByVal stream As Stream _
) 
Visual Basic (Usage)Copy Code
Dim instance As MedicalViewerCell
Dim stream As Stream
 
instance.LoadAnnotations(stream)
C# 
public void LoadAnnotations( 
   Stream stream
)
C++/CLI 
public:
void LoadAnnotations( 
   Stream^ stream
) 

Parameters

stream
A Stream that contains the file being loaded.

Example

Visual BasicCopy Code
Private Class MedicalViewerForm16 : 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()
        RasterCodecs.Startup()
        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)

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

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

        ' Load an image and then add it to the control.
        _image = _codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path & "xa.dcm")
        _medicalViewer.Cells.Add(New MedicalViewerCell(_image, True, 1, 1))

        ' 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(LeadtoolsExamples.Common.ImagesPath.Path & "mr.dcm")
        _medicalViewer.Cells.Add(New MedicalViewerCell(_image, True, 2, 2))

        ' 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)


        RasterCodecs.Shutdown()
        Controls.Add(_medicalViewer)
        Controls.Add(_medicalViewer)

        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(LeadtoolsExamples.Common.ImagesPath.Path & "SavedAnnotation.ann") Then
            fs = New FileStream(LeadtoolsExamples.Common.ImagesPath.Path & "SavedAnnotation.ann", FileMode.Open)
        Else
            fs = File.Create(LeadtoolsExamples.Common.ImagesPath.Path & "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()

        _medicalViewer.Cells(0).SaveAnnotations(fs, 0)
        fs.Close()
    End Sub

    Private Sub LoadAnnotation_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim fs As FileStream = GetFileStream()

        _medicalViewer.Cells(0).LoadAnnotations(fs, 0)
        fs.Close()
    End Sub
End Class


Private Function GetMedicalControl16() As MedicalViewerForm16
    Return New MedicalViewerForm16()
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.

Public Sub MedicalViewerSaveAnnotationStreamExample()
    Dim myForm As MedicalViewerForm16 = GetMedicalControl16()
    Dim medicalViewer As MedicalViewer = myForm.Viewer

    myForm.ShowDialog()
End Sub
C#Copy Code
class MedicalViewerForm16 : 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 MedicalViewerForm16() 
    { 
        RasterCodecs.Startup(); 
        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); 
 
        // add some action that will be used to change the properties of the images inside the control. 
        _medicalViewer.AddAction(MedicalViewerActionType.AnnotationRectangle); 
        _medicalViewer.AddAction(MedicalViewerActionType.AnnotationEllipse); 
        _medicalViewer.AddAction(MedicalViewerActionType.AnnotationHilite); 
 
        // assign the added actions to a mouse button, meaning that when the user click and drag the mouse button, the associted action will be activated. 
        _medicalViewer.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime); 
        _medicalViewer.SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime); 
        _medicalViewer.SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active | MedicalViewerActionFlags.RealTime); 
 
        // Load an image and then add it to the control. 
        _image = _codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "xa.dcm"); 
        _medicalViewer.Cells.Add(new MedicalViewerCell(_image, true, 1, 1)); 
 
        // 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(LeadtoolsExamples.Common.ImagesPath.Path + "mr.dcm"); 
        _medicalViewer.Cells.Add(new MedicalViewerCell(_image, true, 2, 2)); 
 
        // 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); 
 
 
        RasterCodecs.Shutdown(); 
        Controls.Add(_medicalViewer); 
        Controls.Add(_medicalViewer); 
 
        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(LeadtoolsExamples.Common.ImagesPath.Path + "SavedAnnotation.ann")) 
            fs = new FileStream(LeadtoolsExamples.Common.ImagesPath.Path + "SavedAnnotation.ann", FileMode.Open); 
        else 
            fs = File.Create(LeadtoolsExamples.Common.ImagesPath.Path + "SavedAnnotation.ann"); 
 
        return fs; 
    } 
 
    void SaveAnnotation_Click(object sender, EventArgs e) 
    { 
        FileStream fs = GetFileStream(); 
 
        _medicalViewer.Cells[0].SaveAnnotations(fs, 0); 
        fs.Close(); 
    } 
 
    void LoadAnnotation_Click(object sender, EventArgs e) 
    { 
        FileStream fs = GetFileStream(); 
 
        _medicalViewer.Cells[0].LoadAnnotations(fs, 0); 
        fs.Close(); 
    } 

 
 
MedicalViewerForm16 GetMedicalControl16() 

    return new MedicalViewerForm16(); 

 
// 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 MedicalViewerSaveAnnotationStreamExample() 

    MedicalViewerForm16 myForm = GetMedicalControl16(); 
    MedicalViewer medicalViewer = myForm.Viewer; 
 
    myForm.ShowDialog(); 
}

Remarks

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

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