1. 16 Jan, 2015 1 commit
  2. 05 Dec, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Minor fixes: · 566a4b2d
      Christian Schulte zu Berge authored
      * Fixed DataSeriesSplitter::updateProperties()
      * Fixed VolumeExplorer's camera ID not being dependent on output image name
      * Added early return to AbstractProcessor::invalidate(level) if level == 0
  3. 24 Oct, 2014 1 commit
  4. 23 Oct, 2014 2 commits
  5. 22 Oct, 2014 2 commits
  6. 08 Aug, 2014 3 commits
    • Christian Schulte zu Berge's avatar
    • Christian Schulte zu Berge's avatar
      Work on VolumeExplorer: · 961b032c
      Christian Schulte zu Berge authored
      The VolumeExplorer has now an additional property defining which view is shown in the big section (and which in the three small sections). Hence, now it is also possible to show one of the slice views in large and have the volume rendering in small.
    • Christian Schulte zu Berge's avatar
      Refactoring SliceExtractor processor: · b7817eb2
      Christian Schulte zu Berge authored
      To better support sharing the functionality of slice rendering, the SliceExtractor processor was refactored: Similar to the RaycastingProcessor, the main functionality was moved to an abstract base class, the SliceRenderProcessor. This takes care of computing all the necessary transformation matrices, optionally rendering crosshair and integrating geometry, as well as handling user input to support scribbling. The actual SliceExtractor processor now only implements the rendering of the slice itself, i.e. applying the transfer function.
      In this regard, VolumeExplorer was updated to use the generic SliceRenderProcessor, and TransFuncWindowingEventListener supports changing of its assigned property.
  7. 05 Aug, 2014 1 commit
    • Hossain Mahmud's avatar
      Squashed various commits: · dd8e9771
      Hossain Mahmud authored
      relocated mscopysegmentation module
      relocated alglib library. Compiler warning level raised to w1 to get rid of float-double conversions.
      save results into csv
      akima spline interpolation using alglib, deleting nearest point
      alglib library. extensive trimming required
      ctrl+wheel zooming, arrow movement, ctrl+z, atl+click_nearest+click to edit _nearest point
      multi object, multi location, multi slide contour point/line painting
      draft code for addobject deleteobject
      added ContourObject class linked with add and delete button.
      added a proxy class of Vec4Property/Widget as colorproperty/widget to control drawing color
      edited DevilImageReader to read multiple files having same name pattern: somePrefix_[number].[extension] given the 1st file name
      Worked on DevilImageReader to load single 2d image for 3d rendering
      exp_01 commit
  8. 31 Jul, 2014 1 commit
  9. 27 Jul, 2014 2 commits
  10. 05 May, 2014 1 commit
  11. 23 Apr, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Fixed two minor issues: · db69d006
      Christian Schulte zu Berge authored
      * Geometry1DTransferFunctionEditor not correctly drawing image intensity histogram.
      * VolumeExplorer not always initializing slice- and raycasting render size properties.
  12. 07 Apr, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Moved invalidation level from AbstractProperty to AbstractProcessor: · 293d43dd
      Christian Schulte zu Berge authored
      To now, each property hat an _invalidationLevel field that was evaluated by processors when the property had changed in order to determine what has to be done. However, since properties could also be owned by other classes, this design was semantically misleading.
      Therefore, it was removed with this commit and replaced by the invalidation map of each processor. Now, this per-processor mapping of property -> invalidation level is managed by the processor itself. Furthermore, the invalidation level is no longer setup during property creation but during AbstractProcessor::addProperty(), which also makes much more sense.
      ATTENTION: Due to these intrusive API changes, the code of all processors and other classes handling properties needs to be changed. As a reminder, the implementation of addProperty() also now takes a reference instead of a pointer, so that old code does no longer compile.
      refs #542
  13. 06 Apr, 2014 1 commit
  14. 04 Apr, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Introducing scribble technology to SliceExtractor and VolumeExplorer: · 7be16186
      Christian Schulte zu Berge authored
      * Introducing SliceExtractor::onEvent() to handle mouse events and generate point scribbles from it, which are then published using the s_scribblePainted signal
      * Implemented SliceExtractor being able to render geometry in the slice space (with correct clipping)
      * Implemented creating and handling of scribbles in VolumeExplorer in cooperation with the SliceExtractor. Therefore, mouse events are passed to the SliceExtractor, the VolumeExplorer takes care of assembling the scribbles into proper geometry, which is finally rendered by the SliceExtractor. The scribbling can be optionally turned on using the VolumeExplorer::p_enableSclibbling property.
  15. 02 Mar, 2014 1 commit
  16. 16 Feb, 2014 1 commit
  17. 13 Feb, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Improved VolumeExplorer: · 8a8f9bba
      Christian Schulte zu Berge authored
      * Fixed orientation of XY-slice (flipped along Y axis)
      * Implemented background for raycasting result
      * Fixed sum for volume rendering integral evaluation in simpleraycaster.frag
  18. 13 Jan, 2014 2 commits
    • Christian Schulte zu Berge's avatar
      * Updated VolumeRenderer and VolumeExplorer to use user-defined RaycastingProcessor · 8d26da04
      Christian Schulte zu Berge authored
      * RaycastingProcessor now has the p_targetImageID property and optionally uses a custom GLSL version for the shader
      * Introducing PropertyCollection::getNestedProperty allowing to get nested properties with a single method call
      * Fixed StringUtils::split() methods being broken with multi-character delimiters
    • Christian Schulte zu Berge's avatar
      Fixing commit 5f72759e: · 56724724
      Christian Schulte zu Berge authored
      C++ implicit conversion rules made ShaderManager::loadSeparate() ambiguous in some cases. So I decided to cut loose ends and completely refactored loading with standard version into ShaderManager::load() and loading with custom version into ShaderManager::loadWithCustomGlslVersion().
      ShaderManager::loadSeparate() is no longer available!
  19. 12 Jan, 2014 1 commit
  20. 08 Jan, 2014 1 commit
    • Christian Schulte zu Berge's avatar
      Refactoring AbstractProcessor::process() for clearer semantics and better and... · cd9d3feb
      Christian Schulte zu Berge authored
      Refactoring AbstractProcessor::process() for clearer semantics and better and more uniform handling of invalidation levels:
       * AbstractProcessor::process() now calls updateShader(), updateProperties() and/or updateResult() with respect to the current invalidation level
       * each processor shall no longer override process() but the updateXYZ() methods, at minimum updateResult()
       * AbstractProcessor::process() takes care of (un)locking the processor itself (no need to do this from the outside anymore)
      Further implicit changes:
       * Removed redundant HasPropertyCollection::updateProperties()
  21. 05 Jan, 2014 1 commit
  22. 26 Dec, 2013 1 commit
  23. 13 Dec, 2013 1 commit
  24. 21 Nov, 2013 1 commit
  25. 29 Oct, 2013 1 commit
  26. 15 Oct, 2013 2 commits
  27. 11 Oct, 2013 1 commit
  28. 08 Oct, 2013 3 commits
  29. 27 Sep, 2013 1 commit
  30. 25 Sep, 2013 2 commits