reader=vtkDICOMImageReader::New();//打开CT图像文件
reader->SetDataByteOrderToLittleEndian();
shrink=vtkImageShrink3D::New();
shrink->SetShrinkFactors(0,0,0);//调节绘制图像的精细程度
shrink->AveragingOn();
skinExtractor=vtkContourFilter::New();
skinExtractor->SetlnputConnection(shrink->GetOutputPort());
skinExtractor->SetValue(0,400);//调整阈值,400以上是骨组织
sphere=vtkSphereSource::New();
sphere->SetThetaResolution(100);
sphere->SetPhiResolution(100);
sphere->SetRadius(2);
deci=vtkDecimatePro::New();
deci->SetlnputConnection(sphere->GetOutputPort());
deci->SetTargetReduction(0.3);
smooth--vtkSmoothPolyDataFilter::New();
smooth->SetlnputConnection(deci->GetOutputPort());
smooth->SetNumberOflterations(200);
skinNormals=vtkPolyDataNormals::New0;
skinNormals->SetlnputConnection(smooth->GetOutputPort());
skinNormals->SetFeatureAngle(60.0);
stripper=vtkStripper::New();
stripper->Setlnput(skinNormals->GetOutput());
skinMapper =vtkPolyDataMappe::New();
skinMapper->Setlnput(stripper->GetOutput());
skinMapper->ScalarVisibilityOff();
∥在构造函数中把各个vtk对象连成通道
coneActor=vtkActor::New();
coneActor->SetMapper(skinMapper);
coneActor->GetProperty()->SetAmbient(0.5);
coneActor->GetPropertY()->SetAmbientColor(0.1,0.2,0.6);
coneActor->GetProperty()->SetDiffuse(1);
coneActor->GetProperty()->SetDiffuseColor(0.3,0.6,0.2);
coneActor->GetProperty()->SetSpecular(0.6);
coneActor->GetProperty()->SetSpecularColor(0.8,0.3,0.5);
coneActor->GetProperty()->SetSpecularPower(1);
aCamera=vtkCamera::New();
aCamera->SetViewUp(0,0,0);
aCamera->SetPosition(1,1,1);
aCamera->SetFocalPoim(99,99,40);
renderer=vtkRenderer::New();
renderer->AddActor(coneActor);