C#
VB
C++
Loads the annotation container to the specified sub-cell index from a file.
public void LoadAnnotations(Stream stream,int subCellIndex)
Public Overloads Sub LoadAnnotations( _ByVal stream As Stream, _ByVal subCellIndex As Integer _)
public:void LoadAnnotations(Stream^ stream,int subCellIndex)
stream
A System.IO.Stream that contains the file being loaded.
subCellIndex
The zero-based index of the sub-cell to which the annotation container will be loaded.
using Leadtools;using Leadtools.Drawing;using Leadtools.Codecs;using Leadtools.MedicalViewer;using Leadtools.ImageProcessing;using Leadtools.Annotations.Core;using Leadtools.Annotations.Designers;using Leadtools.Annotations.Rendering;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 _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 actions 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 clicks and drags the mouse button, the associated action will be activated.cell.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);cell.SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);cell.SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active);// 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);// 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 actions 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 clicks and drags the mouse button, the associated action will be activated._medicalViewer.Cells[1].SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);_medicalViewer.Cells[1].SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);_medicalViewer.Cells[1].SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active);// adjust some properties of 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);elsefs = 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();}}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();}static class LEAD_VARS{public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";}
Imports LeadtoolsImports Leadtools.DrawingImports Leadtools.CodecsImports Leadtools.MedicalViewerImports Leadtools.ImageProcessingImports Leadtools.Annotations.CoreImports Leadtools.Annotations.DesignersImports Leadtools.Annotations.RenderingPrivate Class MedicalViewerForm16 : Inherits FormPrivate _medicalViewer As MedicalViewerPrivate LoadAnnotation As ButtonPrivate SaveAnnotation As ButtonPrivate 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 SubPublic Sub New()Dim _codecs As RasterCodecs = New RasterCodecs()Dim _image As RasterImageAddHandler 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 actions 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 clicks and drags the mouse button, the associated action will be activated.cell.SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)cell.SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active)cell.SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active)' 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)' 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 actions 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 clicks and drags the mouse button, the associated action will be activated._medicalViewer.Cells(1).SetAction(MedicalViewerActionType.AnnotationRectangle, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)_medicalViewer.Cells(1).SetAction(MedicalViewerActionType.AnnotationEllipse, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active)_medicalViewer.Cells(1).SetAction(MedicalViewerActionType.AnnotationHilite, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active)' adjust some properties of 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_ClickSaveAnnotation = New Button()SaveAnnotation.Bounds = New Rectangle(110, 10, 100, 30)SaveAnnotation.Text = "Save Annotation"AddHandler SaveAnnotation.Click, AddressOf SaveAnnotation_ClickControls.AddRange(New Control() {_medicalViewer, LoadAnnotation, SaveAnnotation})End SubPublic ReadOnly Property Viewer() As MedicalViewerGetReturn _medicalViewerEnd GetEnd PropertyPrivate Function GetFileStream() As FileStreamDim fs As FileStreamIf File.Exists(Path.Combine(LEAD_VARS.ImagesDir, "SavedAnnotation.ann")) Thenfs = New FileStream(Path.Combine(LEAD_VARS.ImagesDir, "SavedAnnotation.ann"), FileMode.Open)Elsefs = File.Create(Path.Combine(LEAD_VARS.ImagesDir, "SavedAnnotation.ann"))End IfReturn fsEnd FunctionPrivate 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 SubPrivate 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 SubEnd ClassPrivate Function GetMedicalControl16() As MedicalViewerForm16Return 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.ViewermyForm.ShowDialog()End SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
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
