EnableThresholding Property

Gets or sets the value that indicates whether to enable or disable the thresholding feature.
public bool EnableThresholding { get; set; } 
vb[VB Syntax] 
Public Property EnableThresholding As Boolean 
property bool EnableThresholding { 
   bool get(); 
   void set (    bool ); 

Property Value

True to enable thresholding; false to disable thresholding.

  • The thresholding (or binary segmentation) feature allows you to remove a certain density from a 3D object by specifying an interval (which is between LowerThreshold and UpperThreshold). Any value outside this interval will not be rendered.
  • If the thresholding feature is disabled, the values of the LowThreshold and UpperThreshold will be saved for later use when the thresholding feature is enabled.
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); 
// 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; 
      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.SetAction(MedicalViewerActionType.Rotate3DObject, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active); 
   void MainForm1_FormClosing(object sender, FormClosingEventArgs e) 
   void MainForm1_SizeChanged(object sender, EventArgs e) 
      if (_medical3DControl != null) 
         _medical3DControl.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); 

Target Platforms

Help Version 22.0.2022.4.6
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2022 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Medical3D Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2022 LEAD Technologies, Inc. All Rights Reserved.