示例#1
0
        private void CreateSurfaceRendering()
        {
            _contourFilter = new vtkContourFilter();
            _contourFilter.SetInput(_volumeGraphic.GetImageData());
            _contourFilter.SetValue(0, _volumeGraphic.GetRescaledLevel());

            vtkPolyDataNormals normals = new vtkPolyDataNormals();

            normals.SetInputConnection(_contourFilter.GetOutputPort());
            normals.SetFeatureAngle(60.0);

            vtkStripper stripper = new vtkStripper();

            stripper.SetInputConnection(normals.GetOutputPort());

            vtkPolyDataMapper mapper = new vtkPolyDataMapper();

            mapper.SetInputConnection(stripper.GetOutputPort());
            mapper.ScalarVisibilityOff();

            _vtkActor = new vtkActor();
            _vtkActor.SetMapper(mapper);
            _vtkActor.GetProperty().SetSpecular(.3);
            _vtkActor.GetProperty().SetSpecularPower(20);
            ApplySetting("Opacity");
            ApplySetting("Level");
        }
示例#2
0
 private void SetOpacityTransferFunction()
 {
     _opacityTransferFunction.RemoveAllPoints();
     _opacityTransferFunction.AddPoint(_volumeLayer.GetWindowLeft(), 0.0);
     _opacityTransferFunction.AddPoint(
         _volumeLayer.GetRescaledLevel(),
         (double)_volumeLayer.TissueSettings.Opacity);
     _opacityTransferFunction.AddPoint(_volumeLayer.GetWindowRight(), 0.0);
 }