[vtkusers] Real colours in 3D CT image(DICOM)
Gururajan.R
gururajan.r at raster.in
Sat Oct 3 09:25:48 EDT 2009
Bill
very kind to your reply.
i have included that too, to set scalar visibility in off. even i dint get the result, am wondering where i made mistake.
if time permits you please have a look on below code
Thanks
Guru
//for skin and bone Diagram
//For setting Bone Colour
vtkGeometryFilter geovolumebone = new vtkGeometryFilter();
geovolumebone.SetInput(polyReader.GetOutput());
vtkPolyDataMapper geobonemapper = new vtkPolyDataMapper();
geobonemapper.SetInput(geovolumebone.GetOutput());
geobonemapper.ScalarVisibilityOff();
//vtkActor boneActor = new vtkActor();
vtkLODActor boneActor = new vtkLODActor();
boneActor.SetNumberOfCloudPoints(100000);
boneActor.SetMapper(geobonemapper);
//boneActor.GetProperty().SetColor(1, 0.4782, 0.2546);
boneActor.GetProperty().SetColor(1, 0, 0);
//boneActor.GetProperty().SetDiffuseColor(1, 1, .9412);
boneActor.GetProperty().SetSpecularPower(100);
boneActor.GetProperty().SetOpacity(1.5);
boneActor.GetProperty().SetDiffuse(1.75);
boneActor.GetProperty().SetSpecular(1.75);
//For setting Bone Colour
//For setting Skin Colour
vtkMarchingCubes skin = new vtkMarchingCubes();
skin.SetInput(dicomreader.GetOutput());
skin.SetValue(0, -300);
skin.ComputeNormalsOn();
//
vtkGeometryFilter geovolumeSkin = new vtkGeometryFilter();
geovolumeSkin.SetInput(contour.GetOutput());
//
vtkPolyDataMapper skinmapper = new vtkPolyDataMapper();
skinmapper.SetInput(geovolumeSkin.GetOutput());
skinmapper.ScalarVisibilityOff();
vtkLODActor actorskin = new vtkLODActor();
actorskin.SetNumberOfCloudPoints(100000);
actorskin.SetMapper(skinmapper);
//actorskin.GetProperty().SetColor(1, 0.547237, 0.319073);
actorskin.GetProperty().SetColor(0.94,0.58, 0.17);
actorskin.GetProperty().SetSpecularPower(100);
actorskin.GetProperty().SetOpacity( 3.3 );
Bill Lorensen wrote:
> Try adding:
> geobonemapper->ScalarVisibilityOff();
>
> If scalar data exists for cells or points, the mapper will use that
> data to color the actor. With ScalarVisibilityOff(), the mapper will
> use the color in the property.
>
> On Sat, Oct 3, 2009 at 1:34 AM, Gururajan.R <gururajan.r at raster.in> wrote:
>
>> Hi all,
>> As am a new in VTK. Please guide me how to bring real colors like
>> (bone, blood & vessles) in 3d image, iam reading dicom series and
>> converted into 3d format. using vtkLODActor, am colouring the image but
>> its not a real color and the whole image is in one color only.
>>
>> i want real color to be applied to the relevant parts in the 3d image .
>>
>> Please any one help me in this., i would be very thankful for your kind
>> help.
>>
>>
>> Regards
>> Guru
>>
>> vtkLODActor boneActor = new vtkLODActor();
>> boneActor.SetNumberOfCloudPoints(100000);
>> boneActor.SetMapper(geobonemapper);
>> //boneActor.GetProperty().SetColor(1, 0.4782, 0.2546);
>> boneActor.GetProperty().SetColor(1, 0.75, 0.5);
>> //boneActor.GetProperty().SetColor(1, 0.3, 0.3);
>>
>>
>> boneActor.GetProperty().SetOpacity(1.5);
>> boneActor.GetProperty().SetDiffuse(1.75);
>> boneActor.GetProperty().SetSpecular(1.75);
>> boneActor.GetProperty().SetSpecular(0.3);
>> boneActor.GetProperty().SetSpecularPower(20);
>> boneActor.GetProperty().SetOpacity( 3.3 );
>> boneActor.GetProperty().SetDiffuse(0.8);
>> boneActor.GetProperty().SetAmbient(2.2);
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
>>
More information about the vtkusers
mailing list