[vtkusers] Bug when using VolumePro

ddey ddey at irus.rri.on.ca
Fri Jul 21 00:29:46 EDT 2000


Hi Lisa, John,

    Thanks for your comments.
    Right now I have the volume and the polydata in2 separate renderers
and renderwindows.

    So far I only had a problem with that one tcl script, but that is the only
one that I tried, which uses the vtkTransformPolyDataFilter.

    Damini.


> Hello Damini,
>
> The problem you are experiencing has nothing to do with the VolumePro
> support in VTK.  It is due to an underflow (when there is not enough
> precision to represent the number anymore) exception probably occurring
> somewhere in the transform code. I don't know if underflows cause
> exceptions on all architectures - maybe there truly is a problem in that
> test and most architectures don't report underflows?
>
> Is that the only test that you have a problem with?
>
> Since you say that you need to use both vtkTransformPolyDataFilter and
> vtkVolumeProMapper in the same application - do you know that you cannot
> intermix geometry with a volume rendered with VolumePro? You can have
> geometry in the same scene as long as it doesn't intersect the volume at
> all. For example, a bounding box is OK since it is outside of the volume,
> but a plane cutting through the volume would not be OK.
>
> John - you can always create query a vtkVersion:
>
> % vtkVersion v
> v
> % v GetVTKSourceVersion
> vtk version 3.1.2, vtk source $Revision: 1.576 $, $Date: 2000/07/18
> 20:09:37 $ (GMT)
>
> Lisa
>
> At 07:30 PM 7/20/00 -0400, John Anast-JM wrote:
> >Damini,
> >
> >I tried your code on a Dell 610/VolPro with vtk 3.1 (I believe) and vli
> >1.2 and
> >did not get your error message when I uncommented the
> >vtkTransformPolyDataFilter
> >. Perhaps you are using an older version of vli
> >
> >Is there a way to tell exactly which version of vtkdll I have....someone else
> >compiled it for me since I only have VC++ 5.0 (not the required VC++ 6.0
> >for vli
> >1.2, stupid corporate policies). I tried QuickView and Properties but
> >didn't see
> >the version number in either.
> >
> >...john
> >
> >
> >
> >  Internet Mail Message
> >  Received from host: public.kitware.com
> >  [208.136.18.25]
> >
> >
> >
> >Envelope Sender:    vtkusers-admin at public.kitware.com
> >
> >From: ddey <ddey at irus.rri.on.ca> on 07/20/2000 06:21 PM
> >
> >To:   vtkusers at public.kitware.com
> >cc:    (bcc: John Anast-JM/PGI)
> >Subject:  [vtkusers] Bug when using VolumePro
> >
> >
> >
> >
> >
> >Hi,
> >
> >     I compiled vtk 3.1.2 official release with the VolumePro option on
> >SGI Visual
> >PC running Windows NT 4.0. The volume pro board seems to work fine with
> >the vtkVolumeProVG500Mapper. But the example
> >ThinPlateTransform.tcl crashes on me with the following enlightening
> >error:
> >
> >The exception Floating point underflow (Ox.c0000093) occurred in the
> >application
> >at location 0x01b0cb8b.
> >
> >If I take the vtkTransformPolyDataFilter step  (marked with * , see
> >below) out
> >of the pipeline, it does not crash. I need to use both
> >vtkTransformPolyDataFilter
> >and VolumePro together.
> >
> >Has anyone seen/ know how to fix this bug ?
> >
> >
> >     Damini.
> >
> ># ------------------------------------------------------------------
> ># Test the vtkThinPlateSplineTransform class
> >#
> >
> >catch {load vtktcl}
> >if { [catch {set VTK_TCL $env(VTK_TCL)}] != 0} { set VTK_TCL
> >"../../examplesTcl" }
> >if { [catch {set VTK_DATA $env(VTK_DATA)}] != 0} { set VTK_DATA
> >"../../../vtkdata" }
> >
> ># this is a tcl version of the Mace example
> ># get the interactor ui
> >
> >source $VTK_TCL/vtkInt.tcl
> >source $VTK_TCL/colors.tcl
> >
> ># create a sphere source and actor
> >#
> >vtkSphereSource original
> >     original SetThetaResolution 100
> >     original SetPhiResolution 100
> >
> >vtkPolyDataNormals normals
> >     normals SetInput [original GetOutput]
> >
> >vtkPoints spoints
> >     spoints SetNumberOfPoints 6
> >vtkPoints tpoints
> >     tpoints SetNumberOfPoints 6
> >
> >spoints SetPoint 0 0 0 0
> >tpoints SetPoint 0 0 0 0
> >spoints SetPoint 1 1 0 0
> >tpoints SetPoint 1 1 0 0
> >spoints SetPoint 2 0 1 0
> >tpoints SetPoint 2 0 1 0
> >spoints SetPoint 3 1 1 1
> >tpoints SetPoint 3 1 1 0.5
> >spoints SetPoint 4 -1 1 2
> >tpoints SetPoint 4 -1 1 3
> >spoints SetPoint 5 0.5 0.5 2
> >tpoints SetPoint 5 0.5 0.5 1
> >
> >vtkThinPlateSplineTransform trans
> >     trans SetSourceLandmarks spoints
> >     trans SetTargetLandmarks tpoints
> >
> ># yeah, this is silly -- improves code coverage though
> >vtkGeneralTransformConcatenation transconcat
> >     transconcat Concatenate trans
> >     transconcat Concatenate [trans GetInverse]
> >     transconcat Concatenate trans
> >
> >
> >  vtkTransformPolyDataFilter warp
> >    warp SetInput [original GetOutput]
> >     warp SetTransform transconcat
> >
> >vtkPolyDataMapper mapper
> >
> >#****************************
> ># take warp out of the pipeline
> >#****************************
> >#mapper SetInput [warp GetOutput]
> >
> >      mapper SetInput [original GetOutput]
> >
> >vtkProperty backProp
> >     eval backProp SetDiffuseColor $tomato
> >vtkActor actor
> >     actor SetMapper mapper
> >     eval [actor GetProperty] SetColor $peacock
> >     actor SetBackfaceProperty backProp
> >
> ># Create the RenderWindow, Renderer and both Actors
> >#
> >vtkRenderer ren1
> >vtkRenderWindow renWin
> >     renWin AddRenderer ren1
> >     renWin SetSize 100 250
> >vtkRenderWindowInteractor iren
> >     iren SetRenderWindow renWin
> >
> ># Add the actors to the renderer, set the background and size
> >#
> >ren1 AddActor actor
> >ren1 SetBackground 1 1 1
> >renWin SetSize 200 300
> >
> ># render the image
> >#
> >iren SetUserMethod {wm deiconify .vtkInteract}
> >iren Initialize
> >
> >set cam1 [ren1 GetActiveCamera]
> >$cam1 SetClippingRange 1.87 3.9
> >$cam1 SetFocalPoint 0 0 0.254605
> >$cam1 SetPosition 0.571764 2.8232 0.537528
> >$cam1 ComputeViewPlaneNormal
> >$cam1 SetViewUp 0.5188 -0.0194195 -0.854674
> >renWin Render
> >
> >renWin SetFileName "thinPlateTransform.tcl.ppm"
> >#renWin SaveImageAsPPM
> >
> ># prevent the tk window from showing up then start the event loop
> >wm withdraw .
> >
> >
> >
> >
> >
> >_______________________________________________
> >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://public.kitware.com/mailman/listinfo/vtkusers
> >
> >
> >
> >
> >
> >
> >
> >_______________________________________________
> >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://public.kitware.com/mailman/listinfo/vtkusers
>
> _______________________________________________
> 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://public.kitware.com/mailman/listinfo/vtkusers





More information about the vtkusers mailing list