[vtkusers] Re: How to change the color of cube?

wang minyou wmy1024 at hotmail.com
Fri Sep 3 03:03:30 EDT 2004


Hi Chris,

Thank you very much for your nice help! And also thank Malcolm Drummond and 
Amy Henderson for their advice. You all really help me, and I learnt much 
from your emails.

Thanks again and best wishes!

Wang


>From: Christopher.Moore at noaa.gov
>To: vtkusers at vtk.org
>Subject: [vtkusers] Re: How to change the color of cube?
>Date: Thu, 2 Sep 2004 11:12:40 -0700 (PDT)
>
>
>Hi Wang,
>
>You see no white or black on the cube because the default vtkLookupTable
>associated with vtkPolyDataMapper uses a Hue/Saturation/Value ramp with a
>Hue range from 0.0 to 0.667, giving a color range from red to blue.
>
>You have three choices:
>
>1) change the ramps for hue (or saturation, or value) to give a different
>color map, for instance "black to white".
>
>2) insert specific colors into the LookupTable, instead of ramps.
>
>3) color the cube by a single color.
>
>Here's how to do each:
>
>1) add this LookupTable to your code between Mapper and Actor for a
>different ramp (black to white):
>
>   // Now we'll look at it.
>   vtkPolyDataMapper *cubeMapper = vtkPolyDataMapper::New();
>       cubeMapper->SetInput(cube);
>       cubeMapper->SetScalarRange(0,7);
>
>   vtkLookupTable *lut = vtkLookupTable::New();
>       lut->SetHueRange(0.0, 0.0);
>       lut->SetSaturationRange(0.0, 0.0);
>       lut->SetValueRange(0.0, 1.0);
>
>       cubeMapper->SetLookupTable(lut);
>
>   vtkActor *cubeActor = vtkActor::New();
>       cubeActor->SetMapper(cubeMapper);
>
>2) add this LookupTable to your code to map specific colors to the scalar
>range (this is a brown-green-white range to map terrain data):
>
>   vtkPolyDataMapper *cubeMapper = vtkPolyDataMapper::New();
>       cubeMapper->SetInput(cube);
>       cubeMapper->SetScalarRange(0,7);
>
>   vtkLookupTable *lut = vtkLookupTable::New();
>       lut->SetNumberOfColors(11);
>       lut->Build();
>       lut->SetTableValue(0, 25./255., 53./255., 40./255., 1);
>       lut->SetTableValue(1, 54./255., 73./255., 56./255., 1);
>       lut->SetTableValue(2, 111./255., 108./255., 94./255., 1);
>       lut->SetTableValue(3, 156./255., 137./255., 90./255., 1);
>       lut->SetTableValue(4, 170./255., 153./255., 138./255., 1);
>       lut->SetTableValue(5, 181./255., 169./255., 113./255., 1);
>       lut->SetTableValue(6, 142./255., 83./255., 35./255., 1);
>       lut->SetTableValue(7, 99./255., 41./255., 9./255., 1);
>       lut->SetTableValue(8, 62./255., 20./255., 3./255., 1);
>       lut->SetTableValue(9, 1.0, 1.0, 1.0, 1);
>       lut->SetTableValue(10, 1.0, 1.0, 1.0, 1);
>
>       cubeMapper->SetLookupTable(lut);
>
>   vtkActor *cubeActor = vtkActor::New();
>       cubeActor->SetMapper(cubeMapper);
>
>3) This is how to simply color the cube black:
>
>   vtkPolyDataMapper *cubeMapper = vtkPolyDataMapper::New();
>       cubeMapper->SetInput(cube);
>       //      cubeMapper->SetScalarRange(0,7);
>       cubeMapper->ScalarVisibilityOff();
>
>   vtkActor *cubeActor = vtkActor::New();
>       cubeActor->SetMapper(cubeMapper);
>       cubeActor->GetProperty()->SetColor(0, 0, 0);
>
>Cheers,
>Chris
>
>__________________________________________________________________
>Christopher Moore                email: Christopher.Moore at noaa.gov
>
>
> > Date: Thu, 02 Sep 2004 11:57:23 +0800
> > From: "wang minyou" <wmy1024 at hotmail.com>
> > Subject: [vtkusers] How to change the color of cube?
> > To: vtkusers at vtk.org
> > Message-ID: <BAY17-F32K3l7IMbtfA0009de4e at hotmail.com>
> > Content-Type: text/plain; charset=gb2312; format=flowed
> >
> > I use vtkPolydata to create a cube, but it only can display pure colors 
but
> > not blank
> > or white. Any one can help me to achieve that?
> > Thank you in advance!
> >
> > My relevant codes:
>
>
>
>
>_______________________________________________
>This is the private VTK discussion list.
>Please keep messages on-topic. Check the FAQ at: 
<http://public.kitware.com/cgi-bin/vtkfaq>
>Follow this link to subscribe/unsubscribe:
>http://www.vtk.org/mailman/listinfo/vtkusers

_________________________________________________________________
享用世界上最大的电子邮件系统― MSN Hotmail。  http://www.hotmail.com  




More information about the vtkusers mailing list