BUG: Fix volume rendering object factory on VTKv6

Issue #3514

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23142 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix VTK python library paths on Windows for VTKv6

Issue #3514

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23143 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Remove error message when loading volume with VTK6

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23144 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Use demand driven pipeline for VTKv6 in model DM

Issue #3514

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23145 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Replace improperly licensed icons

Replace icons which were taking from the Oxygen theme and being used in
violation of their license (LGPLv3, which would require us to at minimum
be providing the scalable versions) with icons from the Tango theme,
instead, which are Public Domain.

Note that the statement in r21618 that the icons were licensed under
CC-BY-SA 3.0 appears to be incorrect. While that claim is indeed made by
Open Icon Library, I was unable to find any evidence to substantiate it,
and all other sources (including the canonical kde.org distribution
tarball) give LGPLv3 as the only applicable license.

See also http://techbase.kde.org/Projects/Oxygen/Licensing,
http://commons.wikimedia.org/wiki/Tango_icons and
http://en.wikipedia.org/wiki/Tango_Desktop_Project.

PNG's copied from tango-icon-theme-0.8.90-6.fc17.noarch.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23146 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: 3672. Made  Eigenvector to display for lines/tubes glyphs in vtkMRMLDiffusionTensorDisplayPropertiesNode to better map onto UI combo box index

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23147 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Replaced vtkITKBSplineTransform by vtkOrientedBSplineTransform

Problem:
vtkITKBSplineTransform incorrectly computed the 1. forward derivatives, 2. inverse displacement when there was a bulk transform component and rotated bspline grid, 3. the inverse displacement.

Analysis:
In the ITK bspline transform no inverse computation is available and in the current ITK bspline version no additive bulk transform is supported (therefore it is not backward-compatible with the old ITK bspline transform), ITK's transform support is very limited (compared to the powerful transform pipelines in VTK), and Slicer already uses VTK transforms (vtkGridTransform), therefore the ITK bspline is not usable in Slicer as is.
A bspline transform implementation is available in VTK, which is is efficient and well-tested (and equivalence with ITK's bspline implementation can be proven by testing).

Solution:
Replaced vtkITKBSplineTransform it with a vtkBSplineTransform-based transform, vtkOrientedBSplineTransform, which extends the original VTK class to handle arbitrarily oriented b-spline grids and supports an additive bulk transform.
Added test that verifies the vtkOrientedBSplineTransform's equivalence with the ITK BSpline transform implementation in the whole bspline grid (the differences are less than 1e-10).
Added test that verifies the correctness of the inverse and derivative computation.

Fixes:
http://www.na-mic.org/Bug/view.php?id=3664
http://www.na-mic.org/Bug/view.php?id=3659
http://www.na-mic.org/Bug/view.php?id=3614


git-svn-id: http://svn.slicer.org/Slicer4/trunk@23148 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Added missing vtkOrientedBSplineTransform files

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23149 3bd1e089-480b-0410-8dfb-8563597acbee