[vtkusers] Volume Splatting: vtkCSCSPointSprites and GLU linking problems

Jordi Campos i Miralles jcampos at maia.ub.es
Mon Jun 25 07:22:01 EDT 2007


Hi,

[PROBLEM -----------------------------------------------------------]

When I try to build vtkCSCSPointSprites as a PV module I obtain the
following error:

[ 76%] Building CXX object
Servers/Filters/Testing/Cxx/CMakeFiles/ServersFiltersPrintSelf.dir/ServersFiltersPrintSelf.o
Linking CXX executable ../../../../bin/ServersFiltersPrintSelf
/opt/local/fonts/ParaView3-bin/bin/libvtkPVFilters.so: undefined reference to `gluErrorString'
/opt/local/fonts/ParaView3-bin/bin/libvtkPVFilters.so: undefined reference to `gluLookAt'

I checked vtkCSCS/vtkPointSprites/CMakeLists.txt and it seems it already
includes the library:

IF(WIN32)
  SET(vtkCSCSPointSprites_EXTRA_LIBS "Glu32")
ELSE(WIN32)
  SET(vtkCSCSPointSprites_EXTRA_LIBS "GLU")
ENDIF(WIN32)

What am I doing wrong?


Below, I expose:
- PROBLEM DETAILS: installation details previous to the exposed problem
- CONTEXT: motivations to use vtkCSCSPointSprites in case some can give
me other ideas



[PROBLEM DETAILS -----------------------------------------------------]

I download the source code and tried to compile them but found lilnking
troubles:

svn checkout https://svn.cscs.ch/vtkContrib/trunk/vtkCSCS/vtkPointSprites
cd vtkPointSprites
ccmake .
  CSCS_PARAVIEW_MODULES            ON
  ParaView_DIR                     /opt/local/fonts/ParaView3-bin (dir with ParaViewConfig.cmake)
  USE_PARAVIEW_OUTPUT_PATHS        ON
  CSCS_OUTPUT_PATH_EXECUTABLE      (automatically points to PV dir)
  CSCS_OUTPUT_PATH_LIBRARY         (automatically points to PV dir)
make
!!!!!!!! I'VE GOT THIS WARNING, I THINK IS NOT CRITICAL TO CURRENT ISSUE !!!!!!!
[ 61%] Building CXX object Testing/Cxx/CMakeFiles/vtkCSCSPointSpritesCxxTests.dir/TestPointSpriteGLSL.o
.../vtkPointSprites/Testing/Cxx/TestPointSpriteGLSL.cxx: In function 'int TestPointSpriteGLSL(int, char**)':
.../vtkPointSprites/Testing/Cxx/TestPointSpriteGLSL.cxx:82: warning: passing 'const double' for argument 1 to 'void vtkPoints::SetNumberOfPoints(vtkIdType)'
...
aptitude install freeglut3-dev
cd <Paraview3-bin-dir>
ccmake ../Paraview3
  PARAVIEW_EXTRA_EXTERNAL_MODULE   CSCSPointSprites
  PARAVIEW_USE_CSCSPointSprites    ON
  CSCSPointSprites_SOURCE_DIR      /opt/local/fonts/Sparticles/vtkCSCS/vtkPointSprites
make
[ 76%] Building CXX object Servers/Filters/Testing/Cxx/CMakeFiles/ServersFiltersPrintSelf.dir/ServersFiltersPrintSelf.o
Linking CXX executable ../../../../bin/ServersFiltersPrintSelf
/opt/local/fonts/ParaView3-bin/bin/libvtkPVFilters.so: undefined reference to `gluErrorString'
/opt/local/fonts/ParaView3-bin/bin/libvtkPVFilters.so: undefined reference to `gluLookAt'



[CONTEXT - may be someone can give me other ideas -------------]

I need a fast visualization to direct volume render a "set of
voxels" (set of coordinates and density values, with no order).

First, I took a look into vtkUnstructuredGridVolumeRayCastMapper but it
naturally seems to be too slow.

Then, I though about using a "volume splatting" algorithm, in which
voxels are "splatted into a 2D image" using Gaussian splat kernels
(nothing to do with the vtkGaussianSplatter which splats them into a 3D
volume).

As far as I could learn (here are my notes on vtk/PV
http://namaste.maia.ub.es/public/vtk-volume-rendering-tutorial.pdf ), I
need to develop a Mapper. I was looking for something similar and I
found a post (http://www.nabble.com/Re%3A-plot-3d-points-p6950717.html)
talking about vtkCSCSPointSprites.

I know vtkCSCSPointSprites is not exactly what I need, but it could be a
great basis to know how to build my own filter. In fact, I need to
project the voxels as GPU point sprites.

Currently I'm trying to run vtkCSCSPointSprites, but I can not build it.


-- 
Jordi Campos i Miralles
Departament de Matemàtica Aplicada i Anàlisi, MAiA
Facultat de Matemàtiques, Universitat de Barcelona
Gran Via de les Corts Catalanes, 585
08007 Barcelona
Telf : +34 93 403 93 72 




More information about the vtkusers mailing list