C#
VB
C++
Initializes a new instance of the class Medical3DContainer with default parameters.
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.class MainForm1 : Form{//private Medical3DControl _medical3DControl;private Control _control;private Medical3DContainer container;public MainForm1(MedicalViewerSeriesManager output){RasterCodecs _codecs = new RasterCodecs();RasterImage _image;CodecsImageInfo codecsInformation;_control = new Control();this.SizeChanged += new EventHandler(MainForm1_SizeChanged);this.FormClosing += new FormClosingEventHandler(MainForm1_FormClosing);container = new Medical3DContainer();container.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;container.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);container.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]);}container.Objects[0].MemoryEfficientEnd(orientation, output.Stacks[0].PixelSpacing);Controls.Add(_control);_control.Paint += new PaintEventHandler(_control_Paint);_control.SizeChanged += new EventHandler(_control_SizeChanged);}void MainForm1_FormClosing(object sender, FormClosingEventArgs e){container.Dispose();}void _control_SizeChanged(object sender, EventArgs e){container.Render(_control);}void _control_Paint(object sender, PaintEventArgs e){container.Render(_control);}void MainForm1_SizeChanged(object sender, EventArgs e){if (_control != null){_control.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);container.Render(_control);}}}
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.Private Class MainForm1 : Inherits Form'private Medical3DControl _medical3DControl;Private _control As ControlPrivate mycontainer As Medical3DContainerPublic Sub New(ByVal output As MedicalViewerSeriesManager)Dim _codecs As RasterCodecs = New RasterCodecs()Dim _image As RasterImageDim codecsInformation As CodecsImageInfo_control = New Control()AddHandler SizeChanged, AddressOf MainForm1_SizeChangedAddHandler FormClosing, AddressOf MainForm1_FormClosingmycontainer = New Medical3DContainer()mycontainer.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 = 256mycontainer.Objects(0).MemoryEfficientInit(depth)index = 0Do While index < depth_image = _codecs.Load(CStr(output.Stacks(0).Items(index).Data), 0, CodecsLoadByteOrder.BgrOrGrayOrRomm, 1, 1)mycontainer.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 imycontainer.Objects(0).MemoryEfficientEnd(orientation, output.Stacks(0).PixelSpacing)Controls.Add(_control)AddHandler _control.Paint, AddressOf _control_PaintAddHandler _control.SizeChanged, AddressOf _control_SizeChangedEnd SubPrivate Sub MainForm1_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs)mycontainer.Dispose()End SubPrivate Sub _control_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)mycontainer.Render(_control)End SubPrivate Sub _control_Paint(ByVal sender As Object, ByVal e As PaintEventArgs)mycontainer.Render(_control)End SubPrivate Sub MainForm1_SizeChanged(ByVal sender As Object, ByVal e As EventArgs)If Not _control Is Nothing Then_control.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom)mycontainer.Render(_control)End IfEnd SubEnd 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
