BUG: Update VTK

Rebase Slicer/VTK fork on top of kitware/VTK@07810cc and integrate Slicer
specific changes.

Among other changes, it includes:
* fixes added during the last VTK hackfest
* python wrapping fixes
* fixes for vtkAbstractPolygonalHandleRepresentation3D

$ git shortlog   7167ad1..07810cc --no-merges

Aashish Chaudhary (158):
      Added new volume rendering code
      Fixed texture state being dirty
      Use correct local bounds
      Fixed rotation bug
      Fixed style
      Fixed geometry beign missing after volume render
      Fixed indent
      Silenced cast warnings
      Fixed style and naming conventions
      Added copyright
      Embedded volume shaders into C++ units
      Fixed broken volume rendering because of uninitialized variable
      Fixed code document style a bit
      Added method to validate volume rendering
      Enable sample distance control
      Enabled additive and composite blend mode
      Use depth buffer to terminate ray
      Fixed incorrect mix geometry and volume rendering
      Added string replacement code
      First pass on compositing shader for the rendering
      Formalizing the grammar for the shader replacement
      Updated volume code to use new compositing mode
      Updating shader to be fully programmable
      Fixed loose ends
      Using appropriate variable names
      Rebuild shader if necessary
      Rename Helper to ShaderComposer as thats best suited
      Added tests for the new volume mapper
      Consolidating shading and color accumulation
      Got maximum intensity working
      Pass mapper to composer calls as its needed to query volume params
      Simplified the code a bit
      Fixed minor calculation bug
      Got rid of hard-coded maximum number of samples
      Removed references to vtkgl
      Separated lookup for clarity
      Compute and store actual max value
      Fixed bad gl state at the start of volume rendering
      Implemented cropping feature
      Using a better amplitude for the noise texture
      Use boolean to skip or consider a pixel for rendering
      Build cropping shader dynamically
      Condensed preprocessor tags
      Perform close bounds check
      Updated tests
      Got clipping working
      Passing size and data for clip planes in a single uniform array
      Implemented clipping via substitution
      Fixed clipping for multiple clip planes
      Fixed normals not getting passed correctly
      Fixed crash on resizing
      Updated clip test planes to reasonable values
      Following consistent way of checking for uninitiliazed values
      Removed hard-coded sample distance
      Adding minimum intensity blend capability
      Fixed wrong initial value of the min value
      Fixed biased not being passed to the shader
      Some more minor fixes
      Fixed rendering of short and some other types
      Added support for double (and other 8 bytes) datatypes
      Adding alpha blending
      Fixed issues with additive blending
      Renaming so that we can replace the old one with the new one
      Porting new volume mapper to proper vtk
      Got new mapper working
      Renamed the new volume module
      Fixed cropping
      Some more fixes
      Removed experimental code on cropping flags
      Updated lighting parameters
      Adding gradient opacity
      Implementing gradient opacity
      Added gradient opacity table to the mapper
      Added some more pieces for the gradient opacity
      Enabled auto-adjust sample distance
      Fixed style
      Added new gradient opacity test
      Added debug code
      Adding gradient opacity calculation
      Fixing / cleaing variables that are not required
      Fixed access from the texture
      Fixing the scaling of the gradients
      Fixing long data types volumes
      Using GLSL version 120
      Making gradient opacity optional
      Removed check for gl error for now
      Fixed shader issues on MAC
      Fix white edge showing up
      Fixed wrong invert matrix being passed
      Revert "Removed experimental code on cropping flags"
      Fixed cropping test
      Fixing gradient vector computation
      Added support for 4 components
      Adding support for mask type
      Fixing shading
      Adding support for label mask type
      Fixing issues
      Restructured the code a bit more to make it flexible
      Fixed some more issues
      Fixed lighting issues
      Clean up some code
      Improvig code readability
      VTK style fixes
      Adding support for parallel projection
      Got parallel projection working
      Disabled the gradient opacity test for now
      Fixed cpp issues
      Silenced compiler warnings
      Implemented release graphics method
      For now set reduction ratio to 1.0
      Fixed texture units
      Fixed wrong bounds used to pass bound values to shader
      Few style fixes
      Updated vtk point picker
      Added support for rendering when clipping by near plane
      Fixed volume geomety not updated
      Using smallest possible delta to offset precision issues
      Fixed release graphics resources
      Re-added gradient opacity
      Wrapped long lines
      Organzied the code bit better
      Disabled the gradient opacity test for now
      Fixed failing tests
      Added missing API to set uniform
      Updating to use vtk shader API
      Removed calls to old API
      Fixed volume not showing up
      Removed unused files
      Fixed licensing
      Removed unused file from cmake
      Updated to use vtkTextureObject
      Use vtkTextureObject if set
      Updated ray cast image display helper to use GL2
      Removed unused code
      Fixed casting to wrong type; copy-paste error
      Updated headers
      Fixed test failing by restoring defaults
      Updated logic for testing for translucency
      Updated logic to check for external texture object
      Updated display helper
      Improved code by removing redundant code
      Fixed style issues
      Added more volume tests that are passing now
      Removed unused header files
      Set referencee to render window for external texture object
      Fixed typo
      Mark as translucent if 1,2 or 4 components
      With Ken, fixed resources not release issue
      Added notes, comments
      Updated volume rendering to use shader cache
      Added error checks for volume render calls
      Using render window shader cache
      Fixed volume tests failing because of shader cache
      ShaderCache should release its graphics resources
      Removed unnecessary call and added notes
      Let shader cache invoke release graphics resources on shader
      Attempt to fix failing test by removing calls to interactor
      Added second baseline to fix failing test on some systems

Andrew Bauer (9):
      Adding in a filter to append structured grids together.
      Adding the ability to merge structured grids for composite data sets.
      Fixed issue with ghost cells not being deleted properly.
      Removing temporary file that accidentally got added.
      Fixed issue of possibly modifying other polydatas.
      Removing Tcl tests the duplicate existing Python testing.
      Fixed incorrect cell data output.
      Making some cell locators more efficient.
      Giving a warning if trying to create a subcontroller with 0 procs.

Andrew Maclean (1):
      Make the generation of random hills consistent across all platforms.

Arnaud Gelas (1):
      Handle properties are not properly set up when starting vtkBoxwidget2

Ben Boeckel (23):
      FindPythonModules: use a function
      FindPythonModules: search if not found
      vtkmpi4py: empty out Py_{UN,}BLOCK_THREADS
      web: support Image from PIL in testing
      web: print the traceback from errors as well
      vtkPStreamTracer: remove unused function
      vtkModuleMacros: use STREQUAL rather than MATCHES
      cmake: use functions instead of macros
      cmake: minor style nits
      vtkPythonAlgorithm: print out all the error information
      tk: update to support 8.6
      vtkEnSightReader: use memmove for overlapping regions
      vtkFFMPEGWriter: use av_malloc to match the av_free
      vtkChartXY: check the scene before use
      otherByteSwap: fix calls for byteswapping
      netcdf: don't use the cache to set variables in the parent scope
      HeaderTesting: skip non-vtk* files
      HeaderTests: only run if VTK_SOURCE_DIR is set
      vtkChartXYZ: use dummy bounds rather for bounds calculation
      vtkChartXYZ: don't copy the points out
      RenderingOpenGL: remove unused file
      cmake: fix CMP0054 warnings
      cmake: remove variable dereferences in if statements

Berk Geveci (9):
      Added a SeedIds array to the output of stream tracer.
      Added support for specifying split mode.
      Added VTKPythonAlgorithmBase - base class for Python algorithms.
      Fixed vtkImageGradient in parallel.
      Added Python support for making new information keys.
      Removed mrmpi ThirdParty, which was not used.
      Fixed quadratic quad and biquadratic quad derivatives.
      Added a new example demonstrating developing SMP algorithms.
      Added another SMP example.

Bill Hoffman (2):
      Fix build with mingw 4.8.2 and qt 5.3.2, bug #14735
      Detect win32 or pthread model in a mingw gcc build.

Bill Lorensen (4):
      BUG14463 vtkMy does not work for vtk6
      BUG: 0013057: bad xml input to XML Reader's causes exception
      BUG14527: Subdivision fails for non-manifold data
      BUG: ImageAccumulate overflows for large images

Brad King (2):
      ENH: Use if(DEFINED) to simplify conditions
      COMP: Include "vtk_glew.h" instead of "GL/glew.h"

Chris Harris (3):
      vtkWeb: parseObject now returns an array of actors
      Export same scalar bar title as is displayed by actor
      Update VGL version

Chuck Atkins (14):
      Remove leftover debug messages
      Expose WriteAllTimeSteps as a setable parameter for ADIOS
      Properly handle WriteAllTimeSteps = false for vtkADIOSWriter
      vtkIOADIOS: Fix incorrect multi-block multi-step scalar values.
      vtkIOADIOS: Ensure time values always get written, even if just the step.
      vtkIOADIOS: Collection of small fixes
      jsoncpp: Update to use the seperate-file version
      vtkIOGeometry: Correct typos in older jsoncpp API calls
      jsoncpp: Fix vs7 build error from missing C99 functions
      COMP: Suppress warnings on PGI with commonly used patterns
      COMP: Remove unreachable break; statements following returns
      BUG: Replace a few previously removed exit conditions
      BUG 14681: Allow for early exit when no data can be decoded.
      BUG 14681: Close leftover file handles on exit

Cory Quammen (20):
      Removed unused types and member variables, fixed formatting
      Rename local functions and embed in anonymous namespace
      Change clamping range for texture coordinates
      Turn on edge clamping
      Fixed errors exposed by changes to clamping of texture coordinates
      Replaced buggy and redundant implementation of GetRGBPoints()
      Updated baseline for when test uses alpha blending
      Improved comments and made some formatting improvements
      Removed code mistakenly introduced during a merge
      Updated test baseline
      Removed unneeded function argument
      Enabled easier specification of custom test name
      Re-enabled some tests overlooked by vtk_add_test_*
      Fixed some file extensions in documentation
      6657: Add out-of-range colors to color maps
      CMake was complained about unknown arguments to find_package
      BUG: Fixed how the header size is computed
      BUG 10708: Fix vtkPolyDataMapper2D color mapping
      Avoid insertion of extra newlines when adding comments
      BUG: Added missing build of lookup table

Dan Lipsa (2):
      FIX: Get rid of dependent properties.
      FIX: Set the hue range for the default lookup table.

Dave DeMarle (11):
      Add render mode in which values are drawn as recoverable 24bit colors.
      fix a compilation warning
      Fix test failure
      Fix test failure
      Revert "Fix test failure"
      Revert "Fix test failure"
      now 000 is reserved as the no value (background) color
      fix dashboards that lack multisampling
      make area picker respect prop transformations
      prevent possibly uninitialized ivar use
      java install shouldn't delete /usr/bin !

David C. Lonie (4):
      Check if the selection array exists before dereferencing it.
      Ignore blanked cells in vtkCellDataToPointData.
      Error if attribute arrays are incorrectly sized in vtkGlyph2D.
      Remove unused variable.

David Cole (8):
      Rendering: Use AdjustWindowRect to ensure pixel perfect client size
      Rendering: Retrieve the full screen size in GetScreenSize
      Rendering: Use AdjustWindowRect to ensure pixel perfect client size
      vtkTesting: Refactor RegressionTest, eliminating hard-coded cout
      vtkTesting: If test fails with back buffer, try front buffer too
      VRMLImporter: Fix memory leaks and crashes
      VRMLImporter: Fix crash. Avoid dereferencing NULL pointer (#1624)
      vtkVRMLImporter: if non-NULL, delete CurrentTransform in destructor

David Gobbi (22):
      Add wrap hints for vtkPoints2D and vtkRenderWindow.
      Reactivate the RenderingImage tests.
      Replace python mutable with its value in GetValue().
      Clean up cocoa input event handling.
      Interpret OS X Command key as Ctrl instead of Alt.
      Initialize interactor in Start() if not done yet.
      Fix illegal extent request in ImageThresholdConnectivity.
      14445: Fix vtkImageStencilData IsInside upper bound.
      14552: Check python interp and lib versions.
      12098: Mangle void_p like other swig pointers.
      Exit the Cocoa event loop when the window closes.
      Readability improvements to vtkCocoaGLView event code.
      14999: Python Tk widgets fail to load on Tcl 8.6.
      Remove InstallMessageProc flag from OS X interactors.
      Reduce code duplication for Start() method.
      Ensure python header version matches lib version.
      Remove the deprecated PYTHON_INCLUDE_PATH variable.
      Fix Initialize() and Start() interactor documentation.
      Revert "Remove the deprecated PYTHON_INCLUDE_PATH variable."
      Remove obsolete PYTHON_INCLUDE_PATH from CMakeLists.
      Do not cache deprecated PYTHON_INCLUDE_PATH.
      14042: Numerical stability of vtkPolyDataToImageStencil.

David Thompson (1):
      Remove MD5 test-data MD5 file.

Hans Johnson (1):
      DOC:  Remove documentation that is not relevant to VTK6

Joachim Pouderoux (10):
      Fix code formating & style to VTK coding-style rules.
      Add algorithm header for std::lower_bound function call.
      Fix non Delaunay internal edges added by RecoverEdge().
      Add missing NoBlockSend(vtkIdType) method.
      Remove compilation warnings on some platforms.
      Add support for EDGEFLAG attributes in legacy reader & writer.
      Add a new test for EDGEFLAGS point attributes.
      Fix vtkHyperOctree copy functions.
      Disable edgeflag test if Mesa driver is detected.
      Fix and clean VRML importer code.

Johan Andruejol (1):
      Refactor parts of vtkLookupTable

Julien Finet (2):
      Fix vtkAbstractPolygonalHandleRepresentation3D visibility
      Fix crash in vtkFixedSliceHandleRepresentation3D

Julien Jomier (4):
      ENH: Added back support for TDx
      COMP: GLEW_STATIC should be defined with MSVC2010 when building static
      COMP: Missing type for vtkWindow GetScreenSize()
      COMP: Q_OS_X11 doesn't exist with Qt4 replacing it back to Q_WS_X11

KWSys Robot (4):
      KWSys 2014-08-11 (32023afd)
      KWSys 2014-09-08 (80e852f6)
      KWSys 2014-09-19 (6aa1f800)
      KWSys 2014-09-25 (29ffaf43)

Ken Martin (95):
      dashboard fixes and debug leak
      some fixes for macs
      fix glyph memory leak and issue on intel
      cleanup reorg and fix some memory leaks
      minor doc fix
      fix unit memory issue
      in progress ios
      more iOS changes and depth peeling fix
      some minor cleanups to wrapped classes
      lighting fix for generated normals
      remove unimplemented methods
      fix a number of dashbaord issues
      fix for lines that are exactly horizontal or vert plus cleanup
      fix for lines that are exactly horizontal or vert plus cleanup
      add support for cell normals
      add support for cell normals
      fix a bad test
      minor cleanup to a test
      forgot to update the python version
      yank test for a feature we do not plan to support
      fix an initialization issue with image reslice
      fix incorrect filename
      added valid image for line lighting in opengl2
      removed broken test form opengl corrected for opengl2
      more ios changes
      some good cleanup
      ** working **  app and some cleanup
      fix for iphone test
      minor fix to cover vtkcompiletools
      remove some extra files that we do not need
      make sure modules are really turned off
      in progress need rebase
      turn off more modules by default
      in progress
      working clean prepping for opengl instancing
      some minor cleanups
      really turn shared libs off
      Fix compile warning in TextureObject
      update toolchains to ios8
      Fix scalar colors using textures
      Fix image mapper positions
      Fix the tcl and python cells test
      Fix otherPrint and TestEmptyInput tests
      fix for failing mac dashbaords
      Remove setting of ambient to 1.0
      Add support for backface properties
      use GL_EXT_gpu_shader4 when picking
      Rename TextureUnitManager to not have the OpenGL
      Rename texture unit manager to not have OpenGL in it
      Forgot to uncomment line on prior commit
      Add support for OpenGL32 instancing in GlyphMapper
      Had to rebase as master had comflicts
      fix opengl es issues with glyphing code
      Try adding support for ARB_instanced_arrays
      Handle case with no lights on
      Remove extra call to set the divisor
      Forgot to add the image hash
      Replace some valid images lost with the big merge and a pick bug
      Fix error in glyphing and extend to mac
      Fix fast path on apple
      Fix cleanup issue
      Fix two glyph issues
      trivial compiler warning fix
      Forgot a file dangit
      Exclude freetype form iOS and andriod
      Remove EdgeFlags test from OpenGL2
      Support edge flags.
      Fix for the 1 0 1 edge flag case.
      Minor cleanup
      Another attempt.  I think this one should work.
      Update the ios example to use GLKit View and put most logic in controller
      temporarily turn of mesa test until Joachim ets a chance to look at it
      Add in support for clipping planes
      Add back in the edge test
      Some suggested changes form Casey and remove user files
      A first cut at a CompositePolyDataMapper2
      Fix compiler warning and increase test threshold
      Cache camera and actor matrices for performance
      Remove the unused old code
      Fix compiler error
      Fix issue with mesa and gl_FrontFacing
      make it so that this test works on the old OpenGL backend
      Fix a MTime check in the matrix cache
      Fix header test warning
      Minor fix for glyphing using CurrentInput
      Fix float to integer comparison in shader code
      Cleanup some indentation
      Convert Projected Tetrahedra class to OpenGL2 backend
      Fix up compiler warning of shadowed variables
      Fixing ray cast image display helper
      Fix a few compiler warnings
      Cleanup a C style cast to keep it real plus a bug fix
      Fix a compile warning
      Remove bad transpose of normal matrix
      Updated API to force use of vtkShaderCache

Kenneth Moreland (4):
      Change vtkDaxMarchingCubes to vtkDaxContour
      Add compute scalars to Dax contour filter.
      Support Dax marching tetrahedra
      Support passing point field data in Dax threshold filter.

Marcus D. Hanwell (13):
      Added some code to fix Tcl and its use of OpenGL backends
      Added excludes for OpenGL2 headers
      Enable the Java rendering test for OpenGL2 too
      Actually define GLX_GLXEXT_LEGACY to prevent the include
      Update to the upstream GLEW 1.11.0 release
      Added logic for OSMesa contexts
      Add support for OSMesa builds of OpenGL2
      Added colored bar charts, along with a test
      Expand support for the OpenGL2 backend
      Restore test deps for matplotlib tests
      Disable some widget tests building for OpenGL2
      BUG: Fix bug #14378, ensure observer is removed in dtor
      Added a non-const form of vtkTesting::AddArguments

Matthew Woehlke (2):
      Fix rotation handling in vtkTransformInterpolator.
      Fix operation order in vtkTransformInterpolator.

Nicolas Gallego (1):
      IntersectWithLine method documentation update

Orion Poplawski (1):
      thirdparty: support defaulting all third party library sources

Ronald Römer (1):
      bugfix 14459: Iterating through polydata cells incorrectly.

Sankhesh Jhaveri (26):
      Renamed module to vtkRenderingVolumeOpenGLNew
      ENH: Changed dependency from glew to vtkglew
      FIX: Build error due to misplaced colon and style fixes
      ENH: Implement PrintSelf
      STYLE: Fix lines larger than 80 chars
      FIX: Failing HeaderTest and rename vtkGLSLShader
      Bring back deleted files
      FIX: VertexArray issue on APPLE machines
      ENH: Additional tests for new volume mapper
      ENH: Added baselines based generated using old volume mapper
      FIX: Exclude the vtkRenderingOpenGLNew module from BUILD_ALL_MODULES
      FIX: Use RegressionTestImage instead of InteractorEventLoop
      FIX: Disable new volume rendering tests for old mapper
      FIX: Exclude vtkRenderingVolumeOpenGLNew from vtkOpenGL kit
      FIX: Reset clipping planes
      FIX: Remove all vtkgl dependencies for vtkRenderingVolumeOpenGLNew
      Fix unused variable warning
      ENH: Added new vtkOpenGLGPUVolumeRayCastMapper to VolumeOpenGL2
      ENH: Add all GPURayCast tests for OpenGL2 backend
      Remove unused shader files
      Fix cmake string issue
      STYLE: Rename shader variables to maintain consistency
      ENH: Initial take at SmartVolumeMapper support
      ENH: Removed all vtkVolumeTextureMapper3D refs from OpenGL2 module
      Port warning and style fixes from VolumeOpenGL2
      ENH: Sorted out python and tcl tests for new volume rendering

Scott Wittenburg (4):
      Properly override ApplicationSession c-tor, supports Crossbar.io.
      This should fix problems with paraviewweb and python 2.6.
      Added alternate jQuery catalyst view constructor.
      Added an rpc method to exit after a delay instead of immediately.

Sean McBride (29):
      Added comments about the danger of not clamping.
      Fix clang warning about comparision that's always true.
      Added TODOs to indicate source of TestQuadricLODActor failure
      Change #include style from <> to "" for some vtk files
      Changed #include <limits.h> to <climits>
      replaced #include <stdlib.h> with <cstdlib>
      replaced most <time.h> with <ctime> includes
      changed some <assert.h> to <cassert>
      changed some <stddef.h> to <cstddef>
      Fix gcc warning about possible use of uninitialized variable
      Added check for null before dereference, for bug #14671
      cleanup all uses of fclose() in vtkSTLReader, for bug #14515
      Removed dead code in test by using #if 0
      Moved unused var suppression to suppressed dead code warning
      Removed unneeded break statements in switches
      Fixed inconsistent #include style, from <> to ""
      Fixed inconsistent #include style, changed <> to ""
      Fixed SimpleCocoaVTK Xcode project to build properly.
      Fixed bug #14266: fix observation of NSView size change
      Fixed unused const var warning
      Fixed a backwards ‘if’ test, and memory leak
      Eliminated unneeded null checks before using delete/free
      Fixed indentation level
      Fixed ‘null deref’ warning
      Simplified memory deallocation
      Removed useless assignment
      Fixed warning about using null with memcpy
      Removed useless assignments
      Misc cleanup and refactoring

Sebastien Jourdain (3):
      Fix import with latest Autobahn update
      Add missing call to properly handle webgl rendering
      Remove loading of native lib from vtk classes

Shawn Waldon (8):
      Fix the vtkPolyPlane implicit function
      Change vtkProbeFilter to expose the 'in' threshold
      Move static data in vtkVRMLImporter to local struct
      Assume block request produced what was requested
      Add a documentation module that contains information keys
      Add block amount of detail information key
      Block opacity and color are now more independent
      Add a baseline for block opacity with no depth peeling

Tim Thirion (1):
      Prefer xcrun when querying for iOS-related SDK elements

Utkarsh Ayachit (12):
      Refactoring CMake code for Python modules.
      BUG #14971. Fix invalid sprintf() in vtkPNGWriter.
      Add missing <algorithm> include. Needed for std::max/min.
      Handle case when make_vector is called with NumPy arrays.
      Make vtkScalarsToColorsPainter respect ScalarMaterialMode.
      Update TestScalarMaterialMode test image size.
      BUG #14779. Fixes for vtkDistancePolyDataFilter.
      BUG 14693: Fixed vtkAssignAttribute for unnamed arrays.
      BUG #12753: Fixed support for large images.
      BUG #11607: Fixed support for large images.
      Add support for vtkTable to vtkExtractSelectedThresholds.
      Fixed warnings with shadowed variables.

Will Schroeder (5):
      Added hints for vtkBox.GetBounds()
      Updated documentation
      Select internal tetra tessellation based on scalar change
      New data file for QuadraticTetra
      Alternative test image