1. 18 Nov, 2013 1 commit
    • Andrew Maclean's avatar
      Allow the examples to specify what modules to use. · 733ef2dd
      Andrew Maclean authored
      
      
      This approach demonstrates good programming practice by only
      linking to the needed modules.
      It also removed the need to set CMP0020 to NEW in all cases
      except those examples that link to Qt.
      
      The include(${VTK_USE_FILE}) has been removed from the
      top-level CMakeLists.txt file as it is unnecessary.
      
      The solution presented here will work with the Examples built
      as a stand-alone folder or within the VTK tree or with the
      individual examples.
      
      They have been tested on Linux, Windows VS2012 Express,
      Mac OS-X 10.9 using Qt5.1.1.
      
      Change-Id: I0572a395b2ebc6630db8c1407f410a584f668a85
      Signed-off-by: Andrew Maclean's avatarAndrew Maclean <andrew.amaclean@gmail.com>
      733ef2dd
  2. 12 Nov, 2013 1 commit
  3. 10 Nov, 2013 1 commit
  4. 28 Oct, 2013 1 commit
    • Andrew Maclean's avatar
      Eliminating CMP0020 warnings in the examples. · bb20b9df
      Andrew Maclean authored
      
      
      If VTK is built with Qt5 and CMake >= 2.8.11 CMP0020 warnings are generated
       in these examples. Setting CMP0020 to new eliminates these warnings.
      
      This warning happens because the examples link to ${VTK_LIBRARIES}
      which, inside the VTK build tree, is all libraries built including
      those that use Qt.  The policy is set as a workaround in these cases.
      
      A future submission will modify these and other examples to just
      use the needed libraries.
      
      Change-Id: Iea460773065ed55880b198eeaeec3da3b711c258
      Signed-off-by: Andrew Maclean's avatarAndrew Maclean <andrew.amaclean@gmail.com>
      bb20b9df
  5. 26 Oct, 2013 1 commit
  6. 11 Oct, 2013 1 commit
    • Andrew Maclean's avatar
      ENH: Eliminate CMP0020 warning. · 96bc743f
      Andrew Maclean authored
      
      
      Eliminate a warning when building in Windows that relates
        to static linking of Qt executables to qtmain.lib.
      This policy was introduced in CMake version 2.8.11.
      CMake version 2.8.11.2 warns when the policy is not set
        and uses OLD behavior.
      
      This change sets the behaviour to NEW as all the Qt
        executables in VTK link to qtmain.lib.
      
      Change-Id: Ie37e447fda1af40c836da56e6c3f5d5c6ce2b4a1
      Signed-off-by: Andrew Maclean's avatarAndrew Maclean <andrew.amaclean@gmail.com>
      96bc743f
  7. 02 Oct, 2013 1 commit
  8. 25 Sep, 2013 1 commit
    • Marcus D. Hanwell's avatar
      Removed the XML shaders and associated classes · 67cb974b
      Marcus D. Hanwell authored
      These have not been used in quite some time, add dependencies on XML
      in the core rendering API and have been superseded by their sequels.
      
      Disabled GenericVertexAttributes tests for now due to use of XML
      shader API, along with the materials object example.
      
      Change-Id: I3c57c46b1d3cc7f550bd30e1abcd6e5d87347d36
      67cb974b
  9. 17 Sep, 2013 1 commit
    • Burlen Loring's avatar
      Surface LIC: dashboard clean up and bug fix · 1c8cb6e0
      Burlen Loring authored
      cleanup dashboard warnings, make sure examples build, and also
      renamed examples to match new module. fixed bug where invalid
      extent was used when aabb points are behind near clip plane.
      For in-place compositor make decomposition locally disjoint
      to avoid redundant computations. Fixed unbalanced timer calls
      added metrics for comparing domain decomp efficiecny and reporting
      number of guard pixels used.
      
      Change-Id: Ie8bf6d2ecbabecbf087d7b2171705a81565df573
      1c8cb6e0
  10. 14 Sep, 2013 1 commit
  11. 13 Sep, 2013 2 commits
    • Burlen Loring's avatar
      Surface LIC : parallelization & fine tuning features · ad4dddfc
      Burlen Loring authored
      * Parallelization:
      Support for Multiblock datasets and MPI parallel usage. Three compositing
      strategies are provided, with a heuristic to automatically make a reasonable
      selection between them. [1] INPLACE, [2] INPLACE_DISJOINT, [3] BALANCED.
      The inplace strategy processes data where it falls given its parallel domain
      decomposition and projection to the screen. For simple surfaces such as
      slices where ranks/blocks data does not overlap in screen space this is the
      most efficient approach. However where ranks/blocks data have large amount
      of screen space overlap, this approach has high communication/compositing
      and overhead and a large amount of redundant computation that's discarded.
      The inplace-disjoint strategy was designed to address these issues. It
      leaves data inplace as much as possible but will assign pixels to ranks
      uniquely eliminating redundant computation. The communication costs are
      the same as the inplace strategy however they are split into two temporally
      disjoint parts with computation in between which tends to reduce congestion
      and contention. The balanced strategy divides the screen into equally sized
      disjoint regions and assigns each rank a region. This strategy can suffer
      from load balancing issues, and because no account is made of the initial
      data distribution it may have higher communication/compositing costs than
      the others. The parallel implementations have been tested with IceT in
      ParaView. The compositors uses non-blocking mpi communications, MPI
      subarrays for describing non-contoguous memory extents, and communicates
      efficiently by pasing mpi gpu mapped memory via extensions made to
      vtkPixelBufferObject. An object factory is used to override the serial
      objects with their parallel counterparts  when the parallel module is
      linked.
      
      * Contrast and Color Contrast Enhancement:
      The new contrast enhancement feature increases both dynamic range contrast
      while preserving patterns in the LIC. Contrast enhancment is implemented using
      histogram stretching. The color contrast enhancement is made in HSL space on
      the L channel to minimize color distortions. During the "enhanced" LIC mode
      contrast enhancement is also applied after the first pass of LIC compution.
      This helps strengthen streaking patterns.
      
      * Enhanced scalar color shading:
      A new mode has been added to the shader that shades surface geometry combining
      both LIC and scalar colors. The new shader produces bright colors without
      diminishing the visibility of the LIC by multiplying colored lit surface with
      computed LIC texture. The original blending implementation is left in place
      as it works well in many situations.
      
      * Noise texture customization:
      A new noise texture generator has been added to improve control over "streaking"
      in the convolved texture. The noise textures produced are fully customizable over
      9 degrees of freedom. [1] Noise distribution (Gaussian, Uniform, Perlin); [2] Noise
      texture size [3] Noise grain size [4,5] Min/max noise values [6] Number of noise
      levels; [7] Impulse noise probability; [8] Impulse noise background color; [9]
      Noise generator seed
      
      * Fragment masking controls:
      The new fragment masking provides controls over the color and intensity of masked
      fragments and their blending with scalars. Fragments are masked by threshold |V|<t,
      where t is a user specified threshold value, and V are mask vectors. Masking vectors
      can be optionally projected onto the surface or passed through un-modified so that
      threshold is provided in the original vector units and matches scalar color shading.
      
      * Vector Normalization Control:
      The new vector normalization control lets the user turn on and off normalization
      in the integrator. Disabling normalization can help highlight relative strengths
      in strongly varying regions of a flow field by making the amount of smoothing that
      occurs during convolution proportional to the flow strength.
      
      * Antialiasing:
      An optional anti-aliasing stage was added. In some cases the CE and EE stages
      produce streaks with sharp jagged transitions from black to white. The AA stage
      can be used to soften the result and smooth sharp transitions.
      
      * Optimizations:
      The implementation has been split into 8 major steps with the result of each stage
      cached in a texture.[1] Vector projection and lighting calculation; [2] Gather;
      [3] Compositingand guard pixel generation; [4] LIC Computation; [5] Scatter;
      [6] Scalar coloring; [7] Color contrast enhance; [8] Depth test. During user
      interaction stages that do not have modfied paramters or input data can be skiped
      using the cahced result instead.  This can save large amount of time for expensive
      operations such as projecting vectors, computing the LIC etc. Classes
      were added to simplify monitoring of various system paramters that would trigger
      an update, such as changes to lights, modelview or projection matrices, background
      color, etc. A new framebuffer object has been introduced, designed specifically
      for efficient buffer ping-pong, as well as efficiency improvements for setting
      shader unfiorms on inner parts of buffer ping-pong loops.
      
      * Porting and Testing:
      The code has been ported to Apple + ATI systems, and to OS Mesa with the gallium
      llvmpipe state tracker. A number of ctests have been introduced to excersize the
      new features. Parallel features have testing coverage in ParaView.
      
      Change-Id: I26f90a4e1e4e204289d38993d1e32fe5493b7a0d
      ad4dddfc
    • Christian Lackas's avatar
      Fixed buiding SimpleView example · ab1aab29
      Christian Lackas authored
      Change-Id: I9c7f30ccff1ae9fed6ba48400c11d211abc26035
      ab1aab29
  12. 01 Sep, 2013 1 commit
  13. 13 Aug, 2013 1 commit
  14. 05 Aug, 2013 1 commit
  15. 25 Jun, 2013 1 commit
  16. 11 Jun, 2013 2 commits
    • Bill Lorensen's avatar
      BUG: Examples should build if BUILD_TESTING is OFF · 61511f37
      Bill Lorensen authored
      With BUILD_EXAMPLES:ON and BUILD_TESTING:OFF, the Examples should
      compile.
      
      To configure VTK with BUILD_EXAMPLES:ON and BUILD_TESTING:OFF, from an
      empty build tree,
      
      cmake  -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release vtk_src_tree
      
      NOTE: If you have already configured VTK with default settings, you
      must clean the build tree and rerun cmake with the above
      setting. Otherwise, bogus tests will remain.
      
      Conflicts:
      	Examples/IO/Cxx/CMakeLists.txt
      	Examples/ImageProcessing/Cxx/CMakeLists.txt
      	Examples/Medical/Cxx/CMakeLists.txt
      	Examples/Modelling/Cxx/CMakeLists.txt
      	Examples/VisualizationAlgorithms/Cxx/CMakeLists.txt
      	Examples/Widgets/Cxx/CMakeLists.txt
      
      Change-Id: I996065a30aab43cca630a369b39d748de728039b
      61511f37
    • Dave DeMarle's avatar
      fix and restore example of external module · bc51f8e3
      Dave DeMarle authored
      Install more cmake infrastructure to build external modules
      from install tree.
      Update vtkLocal example to modular VTK mechanics.
      Note:
        wrapped modules still have problems
      
      Change-Id: I2a46fc2f3ec32e05c986fa4cc92f3ad35ee7c12a
      bc51f8e3
  17. 05 Jun, 2013 1 commit
    • Sven Buijssen's avatar
      Fix typos · 5ef33d3b
      Sven Buijssen authored
      Change-Id: I2edeb9e78066aa766e47ba37af92ddcbfe75a436
      5ef33d3b
  18. 04 Jun, 2013 1 commit
    • Brad King's avatar
      Convert VTKData test inputs to ExternalData content links · 3797f83d
      Brad King authored
      Add to the Testing/Data directory ExternalData content links mirroring
      the content and layout we use from the VTKData/Data directory.
      
      Add a CMake/vtkLegacyData.cmake module, included from CMakeLists.txt and
      Testing/External/CMakeLists.txt, to call ExternalData_Expand_Arguments
      for all data directories added from VTKData/Data.  This will bulk-fetch
      all test input data currently used by tests of any module, enabled or
      not.  We can make the DATA{} references more granular later.
      
      Add a VTK_TEST_DATA_DIR variable to refer to the directory we tell the
      ExternalData module to populate the real data files.  Replace references
      to VTK_DATA_ROOT in test command lines (after -D) with references to
      VTK_TEST_DATA_DIR.  Drop the VTK_DATA_ROOT CMake option and stop using
      the VTKData repository.
      
      Remove the TESTING_DATA option from the vtk_add_test_cxx API and remove
      the VTK_DATA_ROOT option from the vtk_add_test_mpi API since all test
      input data are now handled through ExternalData and Testing/Data content
      links.
      
      Change-Id: Id02490b76ea2e161b9038188264a4830485039d8
      3797f83d
  19. 27 May, 2013 1 commit
    • Jean-Christophe Fillion-Robin's avatar
      COMP 12945: Allow VTK to build against Qt5 · 384636ec
      Jean-Christophe Fillion-Robin authored
      Since VTK build system has been updated to make use of CMake macros
      specific to Qt5, the support has to explicitly enabled configuring VTK
      with -DVTK_QT_VERSION:STRING="5"
      
      Additionally, in case Qt5 is not installed in a standard location,
      a custom prefix for "find_package" should be passed.
      For example:
        -DCMAKE_PREFIX_PATH:STRING=/home/jchris/Qt5.0.2/5.0.2/gcc_64/
      
      
      Finally, this commit also resolves the build errors reported below.
      
      Fix missing header build error by including Qt headers directly without
      specifying the intermediate directory.
      
      * Fix build error changing QString::toAscii into  QString::toLatin
      The method "toAscii" has been deprecated and is not available in
      default Qt5 distribution.
      See http://qt-project.org/doc/qt-5.0/qtcore/qstring.html#toAscii
      
      * Fix build error changing Qt::WFlags into Qt::WindowFlags
      See http://qt-project.org/doc/qt-5.0/qtcore/qt-obsolete.html
      
      * Fix build error changing QAbstractItemModel::reset() into
      combo QAbstractItemModel::beginResetModel()/QAbstractItemModel::endResetModel()
      The method "reset" has been deprecated and is not available in
      default Qt5 distribution.
      See http://qt-project.org/doc/qt-5.0/qtcore/qabstractitemmodel-compat.html#reset
      
      * Fix build error by including "vtkObjectBase.h":
      /home/jchris/Projects/Qt5.0.2/5.0.2/gcc_64/include/QtCore/qmetatype.h:464: error: invalid application of ‘sizeof’ to incomplete type ‘QStaticAssertFailure<false>’
      
      * Fix "no matching function for call to ‘QPixmap::grabWidget(QWidget*)’" by using
      "QWidget::grab"
      See http://qt-project.org/doc/qt-5.0/qtwidgets/qwidget.html#grab
      
      * Fix missing QHttpHeader/QHttpRequestHeader headers by removing them.
      They have been removed from Qt5 and were not used in the code.
      
      * Fix error: ‘qInstallMsgHandler’ was not declared in this scope
      by using "qInstallMessageHandler"
      See http://qt-project.org/doc/qt-5.0/qtdoc/sourcebreaks.html
      
      * Fix Q4VTKWidgetPlugin.cxx:147: error: invalid application of
      ‘sizeof’ to incomplete type ‘QStaticAssertFailure<false>’ by
      using "Q_PLUGIN_METADATA" macro instead of Q_EXPORT_PLUGIN
      or Q_EXPORT_PLUGIN2.
      See http://qt-project.org/wiki/Transition_from_Qt_4.x_to_Qt5#7ec1b8f08d7f31ebcb53188f0bd15ed5
      
      Change-Id: Ie7123e5990e3a8afb4d7d2efa0fda5bd7b98c1e3
      384636ec
  20. 23 May, 2013 1 commit
    • Bill Lorensen's avatar
      BUG: Examples should build if BUILD_TESTING is OFF · 3c68fe1f
      Bill Lorensen authored
      With BUILD_EXAMPLES:ON and BUILD_TESTING:OFF, the Examples should
      compile.
      
      To configure VTK with BUILD_EXAMPLES:ON and BUILD_TESTING:OFF, from an
      empty build tree,
      
      cmake  -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release vtk_src_tree
      
      NOTE: If you have already configured VTK with default settings, you
      must clean the build tree and rerun cmake with the above
      setting. Otherwise, bogus tests will remain.
      
      Change-Id: I2035e49c7df4ba6f3d88447ea1b768ec63b87ee7
      3c68fe1f
  21. 22 May, 2013 1 commit
    • Brad King's avatar
      Teach Examples to use ExternalData · a731ca41
      Brad King authored
      Teach vtk_add_test_cxx and vtk_test_cxx_executable to work in
      Examples/*/Cxx directories when variable "vtk-example" is set and
      "vtk-module" is not set.  Convert Examples/*/Cxx/CMakeLists.txt to use
      these functions.  Populate Examples/*/Cxx/Baseline/ directories with
      ExternalData content links for example baseline images.
      
      Change-Id: Ic7d847a4561f5ed882b35e80c3ce98aa578ef7d3
      a731ca41
  22. 12 Apr, 2013 1 commit
    • Sean McBride's avatar
      SimpleCocoaVTK Xcode project now links properly · 9385718b
      Sean McBride authored
      Added vtkRenderingCore_AUTOINIT and
      vtkRenderingVolume_AUTOINIT definitions and a couple
      of missing libraries, and now the SimpleCocoaVTK
      Xcode project links and runs properly.
      
      Change-Id: Ieeb9d2e691b92d07f653d571e7cd239fcc970681
      9385718b
  23. 08 Apr, 2013 1 commit
  24. 15 Mar, 2013 2 commits
    • Sean McBride's avatar
      Big find-replace of VTK_LARGE_FLOAT -> VTK_FLOAT_MAX · 04d04637
      Sean McBride authored
      vtkType.h says that VTK_LARGE_FLOAT is a
      'compatibility name'.  There were many uses of the
      old name, which I updated.  The find-replace should
      be quite safe as it's basically what the preprocessor
      does anyway.
      
      Change-Id: I66ecb51cd2f21ee3cdf9289d8a65d39fc4519a83
      04d04637
    • David Cole's avatar
      Fix Examples/GUI/Qt/FourPaneViewer · d7075681
      David Cole authored
      QVTK does not exist anymore, use VTK_LIBRARIES instead.
      
      vtkResliceImageViewer::SetInputConnection does not work,
      and formerly emitted an error saying "Use SetInput" instead.
      
      But there is no more SetInput, so the error message should
      say "Use SetInputData"...
      
      Updated the error message, and updated the example to avoid
      the error message.
      
      Change-Id: I64b6943dedc9956e7d6892d645356c2ffc87ad13
      d7075681
  25. 04 Mar, 2013 1 commit
  26. 14 Feb, 2013 1 commit
    • Sean McBride's avatar
      Updated SimpleCocoaVTK to actually build against VTK git master · cf7d187a
      Sean McBride authored
      -Before this, the Xcode project was referring to VTK5 library names.
      -Upped requirements to OS X 10.7 / Xcode 4 or better.
      -Updated Instructions.rtf
      -Updated Xcode project and nibs to newer format
      -Updated CMAKE_MINIMUM_REQUIRED to match VTK itself
      -Although it now builds, there is still a crash at runtime...
      
      Change-Id: Idc8c2bd668ea4cff3411cde026bd26a609a00843
      cf7d187a
  27. 29 Jan, 2013 1 commit
    • David Cole's avatar
      Examples: Modernize the MFC Examples header files · a3257608
      David Cole authored
      Use Windows XP or later values for _WIN32_WINNT and WINVER
      in Example header files. Match the values used by default
      when building the VTK libraries.
      
      You can still use VTK and the MFC Examples with earlier versions
      of Windows, but you have to define _WIN32_WINNT before
      including any of the VTK or Examples header files.
      
      By default, the Examples header files should match what is
      found in the VTK header files.
      
      Change-Id: I8035ce25d9f42004de14d3c40332516eb3b0ef2a
      a3257608
  28. 25 Jan, 2013 1 commit
    • Utkarsh Ayachit's avatar
      Moving vtkTestingObjectFactory.cmake to ${VTK_SOURCE_DIR}/CMake. · c2eeaa2d
      Utkarsh Ayachit authored
      This makes it easier for external applications attempting to use
      vtkTestingObjectFactory since they don't require the
      vtkTestingRendering_SOURCE_DIR to set anymore (which won't even when the
      vtkTestingRendering module has been successfully imported.
      
      Change-Id: I14795bbe0f9d71d41da14c970ba49bdb8e11a913
      c2eeaa2d
  29. 13 Dec, 2012 1 commit
  30. 12 Dec, 2012 5 commits
  31. 11 Dec, 2012 3 commits