[vtkusers] vtkImage > Data / MapToColors / Cast / Actor..
Edward Pham
lost_bits1110 at hotmail.com
Fri Feb 27 14:56:44 EST 2004
okay nevermind
i forgot to setDisplayExtent
thanks anyways
ed
>From: "Edward Pham" <lost_bits1110 at hotmail.com>
>To: vtkusers at vtk.org
>Subject: [vtkusers] vtkImage > Data / MapToColors / Cast / Actor..
>Date: Fri, 27 Feb 2004 16:55:17 +0000
>
>Hi
>I'm trying to create a noisy background using vtkImageData (i've used the
>gaussian distribution to create this) Its a 2D image along x and z
>
>Below are some details of my code (its not that long, it just seems long
>but its quite straightforward):
>I used vtkImageMapToColors and vtkImageCast (because my scalars aer of type
>float not unsigned char)
>
>So all I see is black on my screen...! :o(
>what could i be missing? any ideas..??
>thanks in advance...
>Ed
>
>---------------------------------------------------------------------------------------------------------------------------------------
>
> int offset, iOffset, kOffset, gaussLimit;
> float scalarRange[2] = {VTK_LARGE_FLOAT,-VTK_LARGE_FLOAT};
>float x, y, z, gauss, sigmaSquared, sigma;
>
> NoiseData = vtkImageData::New();
> NoiseFloatArray = vtkFloatArray::New();
> NoiseLookupTable = vtkLookupTable::New();
> ImageMapToColors = vtkImageMapToColors::New();
> ImageCast = vtkImageCast::New();
> ConvertedNoiseData = vtkImageData::New();
>
>NoiseData->SetDimensions( 50, 1, 50 );
>NoiseData->SetOrigin(0, 1, 0);
>NoiseData->SetSpacing( 1, 1, 1 );
>NoiseData->SetScalarType(VTK_FLOAT);
>
>for ( int k=0; k < noiseDimZ; k++ )
>{
> z = sigma*Randomize()*gaussLimit;
> kOffset = k*noiseDimZ*noiseDimY;
>
> for ( int i=0; i < noiseDimX; i++ )
> {
> x = sigma*Randomize()*gaussLimit; //Randomize generates a random
>number b/w -1 & 1
> gauss = exp(-0.5*((x*x + z*z)/(sigmaSquared)));
>
> if (gauss<scalarRange[0])
> scalarRange[0] = gauss;
> if (gauss>scalarRange[1])
> scalarRange[1] = gauss;
>
> offset = i + kOffset;
> NoiseFloatArray->InsertTuple1( offset, gauss );
> }
>}
>
> NoiseData->GetPointData()->SetScalars( NoiseFloatArray );
> NoiseLookupTable->SetAlphaRange(0,1);
> NoiseLookupTable->SetHueRange(0, 0);
> NoiseLookupTable->SetNumberOfColors(256);
> NoiseLookupTable->SetSaturationRange(0, 1);
> NoiseLookupTable->SetValueRange(0, 1);
> NoiseLookupTable->SetTableRange(scalarRange);
> NoiseLookupTable->Build();
>
> ImageCast->SetInput( NoiseData );
> ImageCast->SetOutputScalarTypeToUnsignedChar();
>
> ImageMapToColors->SetInput(ImageCast->GetOutput());
> ImageMapToColors->SetLookupTable(NoiseLookupTable);
>
>// NoiseData->Modified();
>// ImageMapToColors->Update();
> NoiseActor->SetInput(ImageMapToColors->GetOutput());
>
> Ren1->AddActor( NoiseActor );
> RenWin->AddRenderer( Ren1 );
> RenWin->SetInteractor(Iren);
> Iren->Initialize();
> Iren->Render();
>
>_________________________________________________________________
>Get fast, reliable access with MSN 9 Dial-up. Click here for Special Offer!
>http://click.atdmt.com/AVE/go/onm00200361ave/direct/01/
>
>_______________________________________________
>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
_________________________________________________________________
Say good-bye to spam, viruses and pop-ups with MSN Premium -- free trial
offer! http://click.atdmt.com/AVE/go/onm00200359ave/direct/01/
More information about the vtkusers
mailing list