- 22 Apr, 2014 1 commit
-
-
Christian Schulte zu Berge authored
Removed ProcessorDecoratorShading and replaced all of its usages with the new LightSourceData API. This also includes adding LightSourceProviders to the corresponding pipelines. refs #547
-
- 11 Apr, 2014 2 commits
-
-
Christian Schulte zu Berge authored
* Introducing base module with LightSourceProvider processor * Updated GeometryRenderer and GeometryRendererDemo to use LightSourceData instead of ProcessorDecoratorShading * Introducing LightSourceData::bind() refs #547
-
Christian Schulte zu Berge authored
refs #547
-
- 07 Apr, 2014 6 commits
-
-
Christian Schulte zu Berge authored
This reverts commit cedb7a00.
-
Christian Schulte zu Berge authored
Issue 545
-
Christian Schulte zu Berge authored
Commit dabdc917 fixed the tgt vector and matrix implementation to follow strict aliasing rules but also changed the semantics of the sub-vector/sub-matrix getters, which previously returned references but after returned copies. While this did not break CAMPVis code, since nobody relied on it, the original reference semantics were much more intuitive. This commit brings them back but in a valid C++ way not breaking strict aliasing rules. closes #545
-
Christian Schulte zu Berge authored
Move invalidation levels from properties to processors See Issue 542: https://campcloud.informatik.tu-muenchen.de/redmine/issues/542
-
Christian Schulte zu Berge authored
Fixed CMake build scripts to better handle default enabled modules and specifically disabled modules.
-
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
-
- 06 Apr, 2014 8 commits
-
-
Christian Schulte zu Berge authored
Merge Ieeevis Predicates Merging the cleaned code from Christian's IEEE SciVis '14 submission on predicate-based volume rendering.
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
removed obsolete scr_msk module. Code for Christian's IPCAI '13 submission on orientation-driven ultrasound compounding will be reimplemented from scratch at some point anyway.
-
Christian Schulte zu Berge authored
Introduced manualsegmentation module with a HIGHLY EXPERIMENTAL processor and pipeline for manual segmentation of tissue layers. This code not really intended for use in other code but only to keep the somewhat extensive code for later reuse.
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
Added implementation for IEEE SciVis 14 submission on "Predicate-based Focus-and-Context Visualization for 3D Ultrasound" (Schulte zu Berge et al.) to advancedusvis module: * Introducing AbstractPointPredicate base for point predicates and various derived classes * Introducing PointPredicateHistogram, its corresponding PointPredicateHistogramProperty and the PointPredicateHistogramPropertyWidget * Introducing PointPredicateEvaluator, PointPredicateRaycaster, PointPredicateVolumeExplorer and ScanlineDistributionComputation processors * Added demo/reference pipeline implementations for the four data sets from the paper: Achilles tendon, shoulder and two carotid arteries
-
Christian Schulte zu Berge authored
Merge Pre-Paper Work Cleaned and squashed version of the various works done for the different paper deadlines during the last months.
-
Christian Schulte zu Berge authored
Removed ITK dependency from CmBatchGeneration pipeline and replaced Gaussian computation with GlGaussianFilter processor.
-
- 05 Apr, 2014 1 commit
-
-
Christian Schulte zu Berge authored
Module file parsing now supports new fields "ThisModApplicationSources", "ThisModApplicationHeaders", and "ThisModApplicationToBeMocced". These files will be added to the campvis-application package (instead of to the campvis-modules package) and thus for instance allow a module to declare property widgets in a non-intrusive way. Little bug fix in glvesselnessfilter.frag shader.
-
- 04 Apr, 2014 13 commits
-
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
-
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.
-
Christian Schulte zu Berge authored
* Introducing sigslot::signal::has_connections() to check whether a signal has listeners * Fixed default OpenGL texture wrapping Conflicts: modules/pipelinefactory.h
-
Christian Schulte zu Berge authored
* Added GCC pragma to ignore false-positive warning in ItkWatershedFilter
-
Christian Schulte zu Berge authored
* Introduced tgt::Shader::IgnoreUniformLocationErrorGuard * Fixed SimpleRaycaster::updateProperties() and OptimizedRaycaster::updateProperties() not calling base class' updateProperties()
-
Christian Schulte zu Berge authored
* Updated ProcessorDecoratorGradient to support controllable LOD for gradient computation * updated RaycastingProcessor to compute min/max depth values of entry/exit points and set as uniforms if needed by shader
-
Christian Schulte zu Berge authored
* GlGaussianFilter performs a Gaussian blur * GlIntensityQuantizer quantizes image intensities into bins using a transfer function * GlSignalToNoiseRatioFilter computes a very simple variance-based SnR value * GlVesselnessFilter computes a Frangi-similar vesselness measure
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
Refactor Propertywidget Registration
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
* Fixed RTTI type inference in PropertyWidgetFactory::createWidget()
-
Christian Schulte zu Berge authored
Implemented a real PropertyWidgetFactory where property widgets can register themselves together with the property type they wrap around. Registration is implemented using CRTP do allow automatic registration across DLL boundaries during static initialization time. This commit replaces the long list of if-else in PropertyWidgetFactory with a much more generic approach.
-
- 02 Apr, 2014 4 commits
-
-
Christian Schulte zu Berge authored
-
Christian Schulte zu Berge authored
* GeometryRenderer supports textured rendering * GeometryRenderer and RenderTargetCompositor support alpha blending of (semi-)transparent surfaces * Updated GeometryRendererDemo to show a demo implementation of the new features
-
Christian Schulte zu Berge authored
* Introducing virtual GeometryData::hasTextureCoordinates() * Introducing virtual GeometryData::applyTransformationToVertices()
-
Christian Schulte zu Berge authored
-
- 25 Mar, 2014 2 commits
-
-
Christian Schulte zu Berge authored
Implemented normalizing conversion between different GenericImageRepresentationLocal<BASETYPE, NUMCHANNELS> representations as proof-of-concept. This conversion might not always yield expected results since it remaps the entire input data type range to the entire output data type range. While this is reasonable for downcasts (narrowing conversions) a histogram stretch for widening conversions is probably not expected or wanted by the caller. A more flexible and elaborate conversion as well as automatic conversion from ITK and OpenGL representations will need a redesign of the conversion interface since we're fighting with severe cyclic include dependency problems here. The future design should provide the possibility to externally register conversion functions for new data types that are not necessarily known in the core package (i.e. ITK representations). refs #474
-
Christian Schulte zu Berge authored
Removed AbstractImage::getSubImage() interface since it's implementation in all subclasses is far from trivial and therefore was not done thoroughly. Since the functionality was not used anywhere so far, it was removed to avoid unexperienced users trying to use it and getting confused if it does not work as intended. Could be reimplemented in extra processors for special cases. closes #339
-
- 23 Mar, 2014 1 commit
-
-
Christian Schulte zu Berge authored
Fixed GeometryTransferFunctionEditors trying to initialize their OpenGL contexts from non OpenGL thread.
-
- 17 Mar, 2014 2 commits
-
-
Christian Schulte zu Berge authored
ITK Filter to include Thresholding hacked into vector field branch before MICCAI - now ready for merging
-
Christian Schulte zu Berge authored
-