public MedicalViewerMPRCell AxialFrame { get; set; } Public Property AxialFrame As MedicalViewerMPRCell
public:property MedicalViewerMPRCell^ AxialFrame {MedicalViewerMPRCell^ get();void set ( MedicalViewerMPRCell^ );}
The control that will be used to display the MPR axial frame.
using Leadtools;using Leadtools.Codecs;using Leadtools.MedicalViewer;using Leadtools.Medical3D;public void Medical3DControlExample(){Medical3DLoadDICOMSeriesExamples LoadObject = new Medical3DLoadDICOMSeriesExamples();MedicalViewerSeriesManager output = LoadObject.LoadJamesHead();MainForm1 form = new MainForm1(output);form.ShowDialog();}// MainForm1 will be the owner of the medical viewer control.public class MainForm1 : Form{private Medical3DControl _medical3DControl;private MedicalViewerMPRCell _axial;private MedicalViewerMPRCell _coronal;private MedicalViewerMPRCell _saggital;public MainForm1(MedicalViewerSeriesManager output){RasterCodecs _codecs = new RasterCodecs();RasterImage _image;CodecsImageInfo codecsInformation;_medical3DControl = new Medical3DControl();this.SizeChanged += new EventHandler(MainForm1_SizeChanged);this.FormClosing += new FormClosingEventHandler(MainForm1_FormClosing);_medical3DControl.ObjectsContainer.Objects.Add(new Medical3DObject());int index;codecsInformation = _codecs.GetInformation((string)output.Stacks[0].Items[0].Data, true);int width = codecsInformation.Width;int height = codecsInformation.Height;int depth = 256;_medical3DControl.ObjectsContainer.Objects[0].MemoryEfficientInit(depth);for (index = 0; index < depth; index++){_image = _codecs.Load((string)output.Stacks[0].Items[index].Data, 0, CodecsLoadByteOrder.BgrOrGrayOrRomm, 1, 1);_medical3DControl.ObjectsContainer.Objects[0].MemoryEfficientSetFrame(_image, index, output.Stacks[0].Items[index].ImagePosition, true);}string spearator = ("\\");string[] test = output.Stacks[0].Items[0].ImageOrientation.Split(spearator.ToCharArray());float[] orientation = new float[6];int i;for (i = 0; i < 6; i++){orientation[i] = (float)Convert.ToDouble(test[i]);}_medical3DControl.ObjectsContainer.Objects[0].MemoryEfficientEnd(orientation, output.Stacks[0].PixelSpacing);_axial = new MedicalViewerMPRCell();_coronal = new MedicalViewerMPRCell();_saggital = new MedicalViewerMPRCell();// set Medical 3DControl to viewer cell_medical3DControl.AxialFrame = _axial;_medical3DControl.SagittalFrame = _saggital;_medical3DControl.CoronalFrame = _coronal;// Fit image to cell_axial.FitImageToCell = true;_saggital.FitImageToCell = true;_coronal.FitImageToCell = true;// Show Cross hair lines_axial.ShowMPRCrossHair = true;_saggital.ShowMPRCrossHair = true;_coronal.ShowMPRCrossHair = true;// Show cell boundaries_axial.ShowCellBoundaries = true;_saggital.ShowCellBoundaries = true;_coronal.ShowCellBoundaries = true;// Enable slab option_medical3DControl.ObjectsContainer.Objects[0].Slab.Enabled = true;_axial.ShowSlabBoundaries = true;_saggital.ShowSlabBoundaries = true;_coronal.ShowSlabBoundaries = true;// invert the axial image_axial.InvertImage();_medical3DControl.ApplyWindowLevelOnAllCells = true;_medical3DControl.AddAction(MedicalViewerActionType.Rotate3DObject);_medical3DControl.SetAction(MedicalViewerActionType.Rotate3DObject, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);_medical3DControl.AddAction(MedicalViewerActionType.WindowLevel);_medical3DControl.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active);this.Controls.Add(_medical3DControl);this.Controls.Add(_axial);this.Controls.Add(_coronal);this.Controls.Add(_saggital);}void MainForm1_FormClosing(object sender, FormClosingEventArgs e){_medical3DControl.Dispose();}void MainForm1_SizeChanged(object sender, EventArgs e){if (_medical3DControl != null)_medical3DControl.Size = new Size(this.ClientRectangle.Right / 2, this.ClientRectangle.Bottom / 2);if (_axial != null)_axial.Size = new Size(this.ClientRectangle.Right / 2, this.ClientRectangle.Bottom / 2);if (_saggital != null)_saggital.Size = new Size(this.ClientRectangle.Right / 2, this.ClientRectangle.Bottom / 2);if (_coronal != null)_coronal.Size = new Size(this.ClientRectangle.Right / 2, this.ClientRectangle.Bottom / 2);_axial.Location = new Point(this.ClientRectangle.Right / 2, 0);_saggital.Location = new Point(0, this.ClientRectangle.Bottom / 2);_coronal.Location = new Point(this.ClientRectangle.Right / 2, this.ClientRectangle.Bottom / 2);}}
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.MedicalViewerImports Leadtools.Medical3DPublic Sub Medical3DControlExample()Dim LoadObject As Medical3DLoadDICOMSeriesExamples = New Medical3DLoadDICOMSeriesExamples()Dim output As MedicalViewerSeriesManager = LoadObject.LoadJamesHead()Dim form As MainForm1 = New MainForm1(output)form.ShowDialog()End Sub' MainForm1 will be the owner of the medical viewer control.Public Class MainForm1 : Inherits FormPrivate _medical3DControl As Medical3DControlPrivate _axial As MedicalViewerMPRCellPrivate _coronal As MedicalViewerMPRCellPrivate _saggital As MedicalViewerMPRCellPublic Sub New(ByVal output As MedicalViewerSeriesManager)Dim _codecs As RasterCodecs = New RasterCodecs()Dim _image As RasterImageDim codecsInformation As CodecsImageInfo_medical3DControl = New Medical3DControl()AddHandler SizeChanged, AddressOf MainForm1_SizeChangedAddHandler FormClosing, AddressOf MainForm1_FormClosing_medical3DControl.ObjectsContainer.Objects.Add(New Medical3DObject())Dim index As IntegercodecsInformation = _codecs.GetInformation(CStr(output.Stacks(0).Items(0).Data), True)Dim width As Integer = codecsInformation.WidthDim height As Integer = codecsInformation.HeightDim depth As Integer = 256_medical3DControl.ObjectsContainer.Objects(0).MemoryEfficientInit(depth)index = 0Do While index < depth_image = _codecs.Load(CStr(output.Stacks(0).Items(index).Data), 0, CodecsLoadByteOrder.BgrOrGrayOrRomm, 1, 1)_medical3DControl.ObjectsContainer.Objects(0).MemoryEfficientSetFrame(_image, index, output.Stacks(0).Items(index).ImagePosition, True)index += 1LoopDim spearator As String = ("\")Dim test As String() = output.Stacks(0).Items(0).ImageOrientation.Split(spearator.ToCharArray())Dim orientation As Single() = New Single(5) {}Dim i As IntegerFor i = 0 To 5orientation(i) = CSng(Convert.ToDouble(test(i)))Next i_medical3DControl.ObjectsContainer.Objects(0).MemoryEfficientEnd(orientation, output.Stacks(0).PixelSpacing)_axial = New MedicalViewerMPRCell()_coronal = New MedicalViewerMPRCell()_saggital = New MedicalViewerMPRCell()' set Medical 3DControl to viewer cell_medical3DControl.AxialFrame = _axial_medical3DControl.SagittalFrame = _saggital_medical3DControl.CoronalFrame = _coronal' Fit image to cell_axial.FitImageToCell = True_saggital.FitImageToCell = True_coronal.FitImageToCell = True' Show Cross hair lines_axial.ShowMPRCrossHair = True_saggital.ShowMPRCrossHair = True_coronal.ShowMPRCrossHair = True' Show cell boundaries_axial.ShowCellBoundaries = True_saggital.ShowCellBoundaries = True_coronal.ShowCellBoundaries = True' Enable slab option_medical3DControl.ObjectsContainer.Objects(0).Slab.Enabled = True_axial.ShowSlabBoundaries = True_saggital.ShowSlabBoundaries = True_coronal.ShowSlabBoundaries = True' invert the axial image_axial.InvertImage()_medical3DControl.ApplyWindowLevelOnAllCells = True_medical3DControl.AddAction(MedicalViewerActionType.Rotate3DObject)_medical3DControl.SetAction(MedicalViewerActionType.Rotate3DObject, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active)_medical3DControl.AddAction(MedicalViewerActionType.WindowLevel)_medical3DControl.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active)Me.Controls.Add(_medical3DControl)Me.Controls.Add(_axial)Me.Controls.Add(_coronal)Me.Controls.Add(_saggital)End SubPrivate Sub MainForm1_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs)_medical3DControl.Dispose()End SubPrivate Sub MainForm1_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)If Not _medical3DControl Is Nothing Then_medical3DControl.Size = New Size(Me.ClientRectangle.Right \ 2, Me.ClientRectangle.Bottom \ 2)End IfIf Not _axial Is Nothing Then_axial.Size = New Size(Me.ClientRectangle.Right \ 2, Me.ClientRectangle.Bottom \ 2)End IfIf Not _saggital Is Nothing Then_saggital.Size = New Size(Me.ClientRectangle.Right \ 2, Me.ClientRectangle.Bottom \ 2)End IfIf Not _coronal Is Nothing Then_coronal.Size = New Size(Me.ClientRectangle.Right \ 2, Me.ClientRectangle.Bottom \ 2)End If_axial.Location = New Point(Me.ClientRectangle.Right \ 2, 0)_saggital.Location = New Point(0, Me.ClientRectangle.Bottom \ 2)_coronal.Location = New Point(Me.ClientRectangle.Right \ 2, Me.ClientRectangle.Bottom \ 2)End SubEnd Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
