Medical3DRemoveIntervalType Enumeration (original) (raw)

Summary

Specifies which interval will be removed when using the thresholding feature.

Syntax

public enum Medical3DRemoveIntervalType 
public enum class Medical3DRemoveIntervalType : public System.Enum, System.IComparable, System.IConvertible, System.IFormattable   

Members

Value Member Description
0 InnerRange Removes the inner interval (which is between LowerThreshold and UpperThreshold).
1 OuterRange Removes the outer interval (which is outside LowerThreshold and UpperThreshold).

Example

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; 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); int MinimumDensityValue = _medical3DControl.ObjectsContainer.Objects[0].MinimumValue; int MaximumDensityValue = _medical3DControl.ObjectsContainer.Objects[0].MaximumValue; _medical3DControl.ObjectsContainer.Objects[0].UpperThreshold = MaximumDensityValue / 2.5f; _medical3DControl.ObjectsContainer.Objects[0].LowerThreshold = MinimumDensityValue; _medical3DControl.ObjectsContainer.Objects[0].RemoveInterval = Medical3DRemoveIntervalType.InnerRange; _medical3DControl.ObjectsContainer.Objects[0].EnableThresholding = true; _medical3DControl.AddAction(MedicalViewerActionType.Rotate3DObject); _medical3DControl.SetAction(MedicalViewerActionType.Rotate3DObject, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active); Controls.Add(_medical3DControl); } 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, this.ClientRectangle.Bottom); } }