[vtkusers] AIX and vtkFixedPointVolumeRayCastMapper

Chris Want cwant at ualberta.ca
Tue Oct 18 14:08:11 EDT 2005


Lisa Avila wrote:
> Hi Chris,
> 
> Are you sure your data loaded into your program correctly? It sound like 
> a missing input for the mapper (which means that wherever you are 
> setting this input there is a problem - or before)
> 
> Lisa

Hi Lisa,

Thank you for responding.

As far as I know, the data loads alright into my float array.
This problem does not seem to be isolated to the
vtkFixedPointVolumeRayCastMapper however, since
vtkMarchingCubes also has a similar problem. I can get
the supplied vtk demos to work on AIX, but none of them
use the vtkFloatArray::SetArray() method -- could there be
a problem with the way the input is set up when using this
method on AIX? (the same program works fine on both 32 and
64 bit linux).

Cheers,
Chris

>> ERROR: In 
>> /synapse_scratch_local_many/cwant/vtk/VTK-HEAD/Filtering/vtkDemandDrivenPipeline.cxx, 
>> line 724
>> vtkStreamingDemandDrivenPipeline (125b5cb30): Input for connection 
>> index 0 on input port index 0 for algorithm 
>> vtkFixedPointVolumeRayCastMapper(125757130) is NULL, but a 
>> vtkImageData is required.
>>
>> I get this error in both HEAD and VTK-5-0, and
>> it does not matter if I compile for 32 bit or
>> 64 bits. I don't ever explicitely set up a
>> vtkStreamingDemandDrivenPipeline.
>>
>> The code connecting the various modules looks
>> something like this (some details, such as
>> transfer function setup excluded):
>>
>> #define VTKNEW(A,B) A *B = A::New();
>>
>> VTKNEW(vtkStructuredPoints, sp);
>> VTKNEW(vtkFloatArray, scalars);
>> // using my own array of floats
>> sp->SetDimensions(x, y, z);
>> scalars->SetArray(float_array, x * y * z, 1);
>> sp->GetPointData()->SetScalars(scalars);
>> sp->Update();
>>
>> VTKNEW(vtkPiecewiseFunction, opacityTransferFunction);
>> VTKNEW(vtkColorTransferFunction, colorTransferFunction);
>> VTKNEW(vtkVolumeProperty, volumeProperty);
>> volumeProperty->SetColor(colorTransferFunction);
>> volumeProperty->SetScalarOpacity(opacityTransferFunction);
>> VTKNEW(vtkFixedPointVolumeRayCastMapper, volumeMapper);
>> volumeMapper->SetInput(sp);
>> VTKNEW(vtkVolume, volume);
>> volume->SetMapper(volumeMapper);
>> volume->SetProperty(volumeProperty);
>>
>> Does anybody know why this might run fine on
>> linux (both 32-bit and 64-bit) but fail on
>> AIX?
>>
>> Cheers,
>> Chris

-- 
  ____________________________________________________________________
( Chris Want                                                         )
( Research Computing Support                                         )
( Academic Information and Communication Technologies (AICT)         )
( University of Alberta                                              )
( Tel: 1-780-492-9418                                                )
  --------------------------------------------------------------------



More information about the vtkusers mailing list