LEADTOOLS Medical (Leadtools.MedicalViewer assembly)

SaveRegion Method (MedicalViewerCell)

Show in webframe





A string that contains the path to the file to which to save the region.
Saves cell regions to a file.
Syntax
public void SaveRegion( 
   string fileName
)
'Declaration
 
Public Sub SaveRegion( _
   ByVal fileName As String _
) 
'Usage
 
Dim instance As MedicalViewerCell
Dim fileName As String
 
instance.SaveRegion(fileName)

            

            
public:
void SaveRegion( 
   String^ fileName
) 

Parameters

fileName
A string that contains the path to the file to which to save the region.
Remarks
Example
        Imports Leadtools
        Imports Leadtools.Drawing
        Imports Leadtools.Codecs
        Imports Leadtools.MedicalViewer
        Imports Leadtools.ImageProcessing
        Imports Leadtools.Annotations

        Private Class MedicalViewerForm8 : Inherits Form
            Private _medicalViewer As MedicalViewer
            Private Sub MedicalViewerForm_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)
                _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)
            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, 0)
                _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)

                ' 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.WindowLevel)
                cell.AddAction(MedicalViewerActionType.Alpha)
                cell.AddAction(MedicalViewerActionType.Offset)

                ' 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)
                cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active)
                cell.SetAction(MedicalViewerActionType.Offset, 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.WindowLevel)
                _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.Alpha)
                _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.Offset)

                ' 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)
                _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active)
                _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.Offset, 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)


                Controls.Add(_medicalViewer)
                _medicalViewer.Dock = DockStyle.Fill
            End Sub
            Public ReadOnly Property Viewer() As MedicalViewer
                Get
                    Return _medicalViewer
                End Get
            End Property
        End Class
        Private Function GetMedicalControl8() As MedicalViewerForm8
            Return New MedicalViewerForm8()
        End Function

        ' This example will create a bitmap region on the first frame of the first image, save it, and copy it to all the cell frames.

        Public Sub MedicalViewerSaveRegionExample1()
            Dim myForm As MedicalViewerForm8 = GetMedicalControl8()
            Dim medicalViewer As MedicalViewer = myForm.Viewer
            Dim cell As MedicalViewerMultiCell = CType(medicalViewer.Cells(0), MedicalViewerMultiCell)

            Dim width As Integer = cell.Image.Width
            Dim height As Integer = cell.Image.Height
            Dim centerX As Integer = (width \ 2)
            Dim centerY As Integer = (height \ 2)

            Dim region As Region = New Region(New Rectangle(centerX - width \ 4, centerY - height \ 4, centerX + width \ 4, centerY + height \ 4))

            RasterRegionConverter.AddGdiPlusDataToRegion(cell.Image, Nothing, region.GetRegionData(), RasterRegionCombineMode.Set)
            cell.SaveRegion(Path.Combine(LEAD_VARS.ImagesDir, "Test.rgn"))

            Dim i As Integer
            i = 0
            Do While i < cell.Image.PageCount
                cell.LoadRegion(Path.Combine(LEAD_VARS.ImagesDir, "Test.rgn"), i)
                i += 1
            Loop


            myForm.ShowDialog()
        End Sub


        Public NotInheritable Class LEAD_VARS
        Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
        End Class
        using Leadtools;
        using Leadtools.Drawing;
        using Leadtools.Codecs;
        using Leadtools.MedicalViewer;
        using Leadtools.ImageProcessing;
        using Leadtools.Annotations;

        class MedicalViewerForm8 : Form
        {
            private MedicalViewer _medicalViewer;
            void MedicalViewerForm_SizeChanged(object sender, EventArgs e)
            {
                _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);
            }

            public MedicalViewerForm8()
            {
                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, 0);
                _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);

                // 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.WindowLevel);
                cell.AddAction(MedicalViewerActionType.Alpha);
                cell.AddAction(MedicalViewerActionType.Offset);

                // 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
                cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);
                cell.SetAction(MedicalViewerActionType.Offset, 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.WindowLevel);
                _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.Alpha);
                _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.Offset);

                // 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
                _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);
                _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.Offset, 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);


                Controls.Add(_medicalViewer);
                _medicalViewer.Dock = DockStyle.Fill;
            }
            public MedicalViewer Viewer
            {
                get { return _medicalViewer; }
            }
        }
        MedicalViewerForm8 GetMedicalControl8()
        {
            return new MedicalViewerForm8();
        }

        // This example will create a bitmap region on the first frame of the first image, save it, and copy it to all the cell frames.

        public void MedicalViewerSaveRegionExample1()
        {
            MedicalViewerForm8 myForm = GetMedicalControl8();
            MedicalViewer medicalViewer = myForm.Viewer;
            MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(medicalViewer.Cells[0]);

            int width = cell.Image.Width;
            int height = cell.Image.Height;
            int centerX = (width / 2);
            int centerY = (height / 2);

            Region region = new Region(new Rectangle(centerX - width / 4, centerY - height / 4, centerX + width / 4, centerY + height / 4));

            RasterRegionConverter.AddGdiPlusDataToRegion(cell.Image, null, region.GetRegionData(), RasterRegionCombineMode.Set);
            cell.SaveRegion(Path.Combine(LEAD_VARS.ImagesDir,"Out_Test.rgn"));

            int i;
            for (i = 0; i < cell.Image.PageCount; i++)
            {
                cell.LoadRegion(Path.Combine(LEAD_VARS.ImagesDir,"Out_Test.rgn"), i);
            }


            myForm.ShowDialog();
        }


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

        Imports Leadtools
        Imports Leadtools.Drawing
        Imports Leadtools.Codecs
        Imports Leadtools.MedicalViewer
        Imports Leadtools.ImageProcessing
        Imports Leadtools.Annotations

        Private Class MedicalViewerForm8 : Inherits Form
            Private _medicalViewer As MedicalViewer
            Private Sub MedicalViewerForm_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)
                _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)
            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, 0)
                _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)

                ' 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.WindowLevel)
                cell.AddAction(MedicalViewerActionType.Alpha)
                cell.AddAction(MedicalViewerActionType.Offset)

                ' 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)
                cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active)
                cell.SetAction(MedicalViewerActionType.Offset, 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.WindowLevel)
                _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.Alpha)
                _medicalViewer.Cells(1).AddAction(MedicalViewerActionType.Offset)

                ' 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)
                _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active)
                _medicalViewer.Cells(1).SetAction(MedicalViewerActionType.Offset, 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)


                Controls.Add(_medicalViewer)
                _medicalViewer.Dock = DockStyle.Fill
            End Sub
            Public ReadOnly Property Viewer() As MedicalViewer
                Get
                    Return _medicalViewer
                End Get
            End Property
        End Class
        Private Function GetMedicalControl8() As MedicalViewerForm8
            Return New MedicalViewerForm8()
        End Function

        ' This example will create a bitmap region on the first frame of the first image, save it, and copy it to all the cell frames.

        Public Sub MedicalViewerSaveRegionExample1()
            Dim myForm As MedicalViewerForm8 = GetMedicalControl8()
            Dim medicalViewer As MedicalViewer = myForm.Viewer
            Dim cell As MedicalViewerMultiCell = CType(medicalViewer.Cells(0), MedicalViewerMultiCell)

            Dim width As Integer = cell.Image.Width
            Dim height As Integer = cell.Image.Height
            Dim centerX As Integer = (width \ 2)
            Dim centerY As Integer = (height \ 2)

            Dim region As Region = New Region(New Rectangle(centerX - width \ 4, centerY - height \ 4, centerX + width \ 4, centerY + height \ 4))

            RasterRegionConverter.AddGdiPlusDataToRegion(cell.Image, Nothing, region.GetRegionData(), RasterRegionCombineMode.Set)
            cell.SaveRegion(Path.Combine(LEAD_VARS.ImagesDir, "Test.rgn"))

            Dim i As Integer
            i = 0
            Do While i < cell.Image.PageCount
                cell.LoadRegion(Path.Combine(LEAD_VARS.ImagesDir, "Test.rgn"), i)
                i += 1
            Loop


            myForm.ShowDialog()
        End Sub


        Public NotInheritable Class LEAD_VARS
        Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
        End Class
        using Leadtools;
        using Leadtools.Drawing;
        using Leadtools.Codecs;
        using Leadtools.MedicalViewer;
        using Leadtools.ImageProcessing;
        using Leadtools.Annotations;

        class MedicalViewerForm8 : Form
        {
            private MedicalViewer _medicalViewer;
            void MedicalViewerForm_SizeChanged(object sender, EventArgs e)
            {
                _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);
            }

            public MedicalViewerForm8()
            {
                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, 0);
                _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);

                // 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.WindowLevel);
                cell.AddAction(MedicalViewerActionType.Alpha);
                cell.AddAction(MedicalViewerActionType.Offset);

                // 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
                cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);
                cell.SetAction(MedicalViewerActionType.Offset, 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.WindowLevel);
                _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.Alpha);
                _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.Offset);

                // 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
                _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);
                _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.Offset, 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);


                Controls.Add(_medicalViewer);
                _medicalViewer.Dock = DockStyle.Fill;
            }
            public MedicalViewer Viewer
            {
                get { return _medicalViewer; }
            }
        }
        MedicalViewerForm8 GetMedicalControl8()
        {
            return new MedicalViewerForm8();
        }

        // This example will create a bitmap region on the first frame of the first image, save it, and copy it to all the cell frames.

        public void MedicalViewerSaveRegionExample1()
        {
            MedicalViewerForm8 myForm = GetMedicalControl8();
            MedicalViewer medicalViewer = myForm.Viewer;
            MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(medicalViewer.Cells[0]);

            int width = cell.Image.Width;
            int height = cell.Image.Height;
            int centerX = (width / 2);
            int centerY = (height / 2);

            Region region = new Region(new Rectangle(centerX - width / 4, centerY - height / 4, centerX + width / 4, centerY + height / 4));

            RasterRegionConverter.AddGdiPlusDataToRegion(cell.Image, null, region.GetRegionData(), RasterRegionCombineMode.Set);
            cell.SaveRegion(Path.Combine(LEAD_VARS.ImagesDir,"Out_Test.rgn"));

            int i;
            for (i = 0; i < cell.Image.PageCount; i++)
            {
                cell.LoadRegion(Path.Combine(LEAD_VARS.ImagesDir,"Out_Test.rgn"), i);
            }


            myForm.ShowDialog();
        }


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

        using Leadtools;
        using Leadtools.Drawing;
        using Leadtools.Codecs;
        using Leadtools.MedicalViewer;
        using Leadtools.ImageProcessing;
        using Leadtools.Annotations;

        class MedicalViewerForm8 : Form
        {
            private MedicalViewer _medicalViewer;
            void MedicalViewerForm_SizeChanged(object sender, EventArgs e)
            {
                _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);
            }

            public MedicalViewerForm8()
            {
                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, 0);
                _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);

                // 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.WindowLevel);
                cell.AddAction(MedicalViewerActionType.Alpha);
                cell.AddAction(MedicalViewerActionType.Offset);

                // 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
                cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);
                cell.SetAction(MedicalViewerActionType.Offset, 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.WindowLevel);
                _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.Alpha);
                _medicalViewer.Cells[1].AddAction(MedicalViewerActionType.Offset);

                // 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.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);
                _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);
                _medicalViewer.Cells[1].SetAction(MedicalViewerActionType.Offset, 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);


                Controls.Add(_medicalViewer);
                _medicalViewer.Dock = DockStyle.Fill;
            }
            public MedicalViewer Viewer
            {
                get { return _medicalViewer; }
            }
        }
        MedicalViewerForm8 GetMedicalControl8()
        {
            return new MedicalViewerForm8();
        }

        // This example will create a bitmap region on the first frame of the first image, save it, and copy it to all the cell frames.

        public void MedicalViewerSaveRegionExample1()
        {
            MedicalViewerForm8 myForm = GetMedicalControl8();
            MedicalViewer medicalViewer = myForm.Viewer;
            MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(medicalViewer.Cells[0]);

            int width = cell.Image.Width;
            int height = cell.Image.Height;
            int centerX = (width / 2);
            int centerY = (height / 2);

            Region region = new Region(new Rectangle(centerX - width / 4, centerY - height / 4, centerX + width / 4, centerY + height / 4));

            RasterRegionConverter.AddGdiPlusDataToRegion(cell.Image, null, region.GetRegionData(), RasterRegionCombineMode.Set);
            cell.SaveRegion(Path.Combine(LEAD_VARS.ImagesDir,"Out_Test.rgn"));

            int i;
            for (i = 0; i < cell.Image.PageCount; i++)
            {
                cell.LoadRegion(Path.Combine(LEAD_VARS.ImagesDir,"Out_Test.rgn"), i);
            }


            myForm.ShowDialog();
        }


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

Requirements

Target Platforms

See Also

Reference

MedicalViewerCell Class
MedicalViewerCell Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.

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