3Depict Changelog

What's new in 3Depict 0.0.18 Alpha

Apr 28, 2015
  • Features:
  • User interface now uses its own CPU. Should be much more responsive during refreshes
  • Spectra can be normalised to allow for easier inter-spectra comparison. Several normalisation modes have been added.
  • Clustering ellipse fitting implemented. Can now determine best-fit ellipsoids on clusters, and plot them in 2D to identify lath/rod/sphere/disc shapes
  • Voxelisation filter now supports fast blurring
  • User Visible Changes:
  • Axial slice in voxelisation can now be made translucent
  • More noticable progress feedback, now as a progress "spinner"
  • Technical bugfixes/changes:
  • Significant refactoring of internals to allow for threading.
  • State has been made more prominent, viscontrol less.
  • New "TreeState" object created
  • New library added for voxelisation/image support : libvigra

New in 3Depict 0.0.17 Alpha (Aug 25, 2014)

  • Features
  • Upgrade to wxWidgets 3 (wx3)
  • Now using wx3 property grid. Property grid interaction greatly improved.
  • Categories collapsible
  • file browse buttons
  • One-click check buttons/dropdown
  • Set (Subtraction/Union/Intersection) operations on points
  • Can, eg load data from separate file after performing operations on primary file
  • User Visible Changes:
  • Fix bug in left/right panel startup size setting
  • Exporting images with colour bar now works correctly
  • Cursor now shows OS' busy status during refresh
  • Files no longer disappear from recent when loading
  • Fix range propagation behaviour when using spatial analysis
  • Clustering now supports cluster ID->value mode (Feature request)
  • Status messages are now queued, so they won't be missed
  • Fixed profile minimum events not working
  • Technical bugfixes/changes:
  • wxWidgets < 2.9 (prior to 2010) no longer supported
  • Remove 2.8 conditional code
  • Mathgl < 2.0 (prior to 2011) no longer supported
  • Remove 1.x conditional code
  • Fix relatively frequent crashes when sampling data files under parallel mode
  • 2D plots (f(x,y) and scatter+size) now supported, but no filter actually currently uses this
  • All filter properties must have a group title
  • Fix crash in mac OSX if expected data files not found
  • Refactoring for filter caching and property setting
  • Fix linker failure when using distcc

New in 3Depict 0.0.16 Alpha (Apr 18, 2014)

  • Features:
  • Added experimental LAWATAP (ATO) file support
  • User Visible Changes:
  • Animation state now saved/restored
  • Plot interaction should be much faster
  • Minor UI improvements
  • Filter tree now persistent when interacting, where possible
  • Mouse hover shows name on plot regions (ranges)
  • Show user prompt when no filters present
  • Nicer text fonts
  • Clustering filter properties simplified
  • Nicer looking logarithmic plots
  • Left plot panel now remembers size correctly
  • Minor 3D drawing fixes
  • Fixed inside-out cones on bounding box Z-axis
  • Fixed line-overlap-arrow with large annotation arrow linewidths
  • Allow loading text files with 3 columns
  • Fixed random_shuffle not being seeded in transform relabel
  • Composition profiles now have "min count" mode
  • Rotating camera image output was broken in version 0.0.15 - fixed
  • Prevent creation of "stretched" image output
  • Technical bugfixes/changes:
  • Linux automated UI checking, based on dogtail
  • Bugfix for caching errors in 0.0.15 tarball (already fixed in binary releases, and in repo)
  • many filters would incorrectly emit input data after caching
  • Many minor memory leaks and bugs fixed, due to Coverity scan
  • No longer launch 3Depict from windows installer
  • Fix crash with some tree configurations
  • Unit tests now check for installed files presence
  • Fix crash when linked against some mathgl-2 versions
  • Fixed SVG saving under non-english locales
  • Add support for qhull2012
  • Fixed caching parameter ineffective, due to fraction->percent bug
  • Fixed packages with anaglyph effect not loading

New in 3Depict 0.0.13 Alpha (Apr 13, 2013)

  • Features:
  • Spherical composition profile support
  • Added axial distribution mode to spatial analysis (directional RDF)
  • New build for windows 64 (no parallel build available yet)
  • User Visible Bugfixes/Changes:
  • Fix crash if unable to obtain RSS feed when checking for updates from behind proxy (Windows only)
  • Rangefiles now correctly load when altering name property
  • Copy/pasting from the raw data grid now works.
  • Plot now updates when scrolling, rather than just during mouse motion
  • Fix refresh loop in Data Load filter when "monitor" active and "enabled" inactive.
  • Fix RDF generating error/crashes when passing < 4 points
  • Fix voxel filtering not preserving intensity correctly
  • Fix crash bug on OSX during animate
  • Fix animate dialog, where wrong text box updated on frame change
  • Animate dialog "remove" button now works correctly
  • Clipping algorithm now uses multiple CPUs
  • RDF algorithm (max dist) now uses multiple CPUs
  • The default camera now is stored and loaded when saving state
  • Ion information filter now emits warnings if sampling is enabled by a parent
  • Warning on export of plot's without legend fixed
  • Fix bug where gl window did not update after sash move on some video drivers
  • Not providing an extention when exporting plots now causes prompt, rather than error
  • Fixed filters not staying selected when loading new data files
  • More locking of UI elements during refresh
  • Improve view splitter startup behaviour
  • Technical Bugfixes/Features:
  • Mathgl >= 1.11 (Nov 2010) now required as hard
  • dependency, earlier versions will not compile
  • Mathgl 2.x now supported
  • Refactored clipping and concentration profile code
  • into single geometry handler
  • Refactored often copy-pasted XML writer code back to
  • "filter common" functions
  • Fixed bug whereby if user preference had been altered
  • for pos data, with loadlimit=0, then loading would cancel
  • if this value was not changed in the filter property,
  • and sampling was set.
  • Improved wx correctness in property grid
  • Tentative support in "getDeps" script for CentOS6
  • Refactor APTClasses & basics functions into several
  • more manageable parts
  • Better RNG support (negative ranges, range lines starting with a digit)
  • More extensive unit testing
  • Fix double-free bug for certain topologies in filter tree
  • Fix memory leak when aborting refresh
  • Cross compilation script for mingw-win64 and 32
  • Source code relayout to reflect overall design
  • Fix several minor assertion errors
  • Remove several redundant scene update calls in main window
  • Re-enable OSX checking for updates
  • Fix incorrect progress reporting when ranging
  • Improved release QA checking

New in 3Depict 0.0.11 Alpha (Jul 16, 2012)

  • Features:
  • Filter tree is now scanned for common errors, with a clickable
  • warning message for detected errors, e.g.:
  • Filters connected that cannot have any effect
  • Filters connected that may alter the outcome of
  • density dependant analyses, due to sampling.
  • Spatial analysis now has "density filtering" mode.
  • Bounding box has new draw modes "dimension" and "box only".
  • Oak-Ridge RNG multi-ion files, as emitted by some other programs, can now be read.
  • User manual has been expanded, now provides more detail on filters,
  • and specific examples for the External Program filter for multiple
  • programming languages (Scilab/bash/python/C++).
  • User Visible Bugfixes/Changes:
  • Clustering core mode in core-link algorithm has been fixed (Core dist > 0)
  • Previously program would crash/generate nonsense results.
  • Fixed voxels not showing if transparency set to zero in point cloud
  • mode
  • Multiple-autosave and resolution selection dialog usability improvements
  • Fix Undo not working after deleting filters
  • Recent files that do not exist are removed from recent files menu
  • External Program option "Clear cache" now correctly updates after
  • selection.
  • Spatial analysis color change for plot no long requires
  • recomputation.
  • Bulk distance > 0.5*Link distance now emits warning in cluster
  • filter, previously was incorrectly set to > 1.0*Link distance.
  • Tree no longer completely disables user interaction during refresh.
  • Lines now have conical arrow heads where appropriate (eg
  • annotation).
  • Package state restores now correctly restore working directory
  • information, fixing load failures for some external resources.
  • Fix cluster cropping/nmin not loading correctly from state files.
  • Fix bug where ion downsampler might not propagate range data
  • Cluster filter restores ions better when dragging/dropping between
  • different range file parents
  • Fix ion export not working correctly, due to change in viscontrol
  • behaviour for 0.0.10
  • Technical Bugfixes/Features:
  • Improvements to dependency fetch script "getDeps" for Mac OSX Lion.
  • Several small memory leaks fixed
  • Speed improvements by removing initialiser on ionhit data class
  • More unit test cases for filters
  • More strict emit/use/block patterns for spatial analysis, bound box
  • and external program

New in 3Depict 0.0.10 Alpha (Mar 31, 2012)

  • Features:
  • Improved aborting behaviour for filters
  • User Visible Bugfixes/Changes:
  • In cluster filter, datasets consisting of "core" only can now be clustered. Previously some "bulk" was required, due to programming error.
  • Fix drag/drop loading bugs
  • Fix multiple data files not being accepted at command line
  • Fix crash-on-exit in OSX 10.7 bug
  • Improved rangefile reader - more tolerant of oddly formatted rangefiles
  • Fix bug where downsample filter would not update ion selection if parent rangefile filter was altered.
  • Data loading can now use custom string for data name - defaults to "mass-to-charge"
  • Plot region dragging now disallowed if region not shown (ie lies outside visible data area).
  • Fix bug in plot panel, where I beam would not show if user did Y zoom starting below plot X axis
  • Fix bug in plot zooming, where a perfectly X or perfectly Y zoom (ie mouse moved exactly horizontally or vertically) would fail to zoom.
  • Fix bug in clip & composition cylinder where perfectly horizontal (XY plane) would result in incorrect direction for analysis.
  • Better drag/drop support when dropping into tree "base" - now will only allow filters that can be a data source on top level.
  • Most buttons/checkboxes/spinbuttons etc ("controls") now have tool tips when hovering mouse.
  • Several previously untranslated items added to translation database
  • Minor layout change to ion info properties.
  • Technical Bugfixes/Features:
  • Major internal reorganisation (refactor) of viscontrol. Now split into two parts, a tree manipulator & refresher (FilterTree), and UI/backend sync (Viscontroller)- Some export dialogs now take advantage of tree cache, making exporting dialog appearance faster in complex filter trees.
  • More unit tests for filters, rangefiles and filter trees.
  • Some export dialogs now take advantage of tree cache, making exporting dialog appearance faster in complex filter trees.
  • Improved dependency retrieval script, making porting a bit easier.
  • More QA checking in release script
  • Compiles against GCC 4.7.
  • Re-enable convex hull based algorithms in OSX.
  • Remove unneccessary #includes.
  • Some code de-duplication, thanks to pmd.sourceforge.net
  • Hidden debug only Autosave with ctrl+insert.
  • Fix memory leaks in filter devices, rangefile filter
  • Property keys now throw assertion error if not unique.
  • Fix small array overrun in NN histogram generation in RDF filter
  • Fix MK1 KD tree stack underrun for some trees.
  • Properties in XML files are now escaped and unescaped, avoiding malformatted/broken state and configuration files, if using any of "&" in saved elements.

New in 3Depict 0.0.9 Alpha (Dec 19, 2011)

  • Plot now supports scrollwheel zooming and dragging.
  • Drag and drop support for rangefiles (excludes Mac OSX).
  • Many bugfixes and usability improvements.

New in 3Depict 0.0.8 Alpha (Oct 24, 2011)

  • Features:
  • Data files can now be monitored for changes, prompting
  • auto-reloading of filter tree if file changes.
  • Multiple autosave files (per running program copy) are now
  • supported
  • Annotation filter, including angle measurement, text annotation,
  • and linear measurement.
  • User Visible Bugfixes/Changes:
  • Voxel smoothing option now works if smoothing kernel is larger
  • than dataset (i.e. small bin numbers or large sigma values).
  • Fix bug in density scaling (this was prev. included in some builds)
  • Fix bug in refreshing code which would not cause tree to be
  • loaded correctly in some filter combination cases (such as pos
  • Load->pos Load)
  • Fix preferences not respected when loading data files
  • Fix text files not selectable by default from load menu
  • Minor changes to ion info filter
  • Fix segfault if loading text data files with too few columns
  • Technical Bugfixes/Features:
  • wxWidgets 2.9 support (incl. source build now supported under OSX 10.7, in theory)
  • Minor correctness improvements to configure script
  • wxWidgets correctness fixes (assertion failures etc).
  • Fix build for libpng 1.4 (infopp_NULL -> NULL)
  • Respect user choice of system background in plot area

New in 3Depict 0.0.7 Alpha (Jul 30, 2011)

  • Foreign language support -- German (Deutsch) language files included.
  • Improved isosurface computation, including better visual representation.
  • Ion Info filter to provide volume and composition estimation methods
  • Faster voxel computations
  • Improved startup behaviour
  • Improved 3D transparency rendering
  • Update notifications for Windows/MacOS platforms

New in 3Depict 0.0.6 Alpha (May 22, 2011)

  • Features:
  • Text data file loading
  • Cameras can now be locked
  • Add noise mode to transform filter (gaussian/white)
  • User Visible Bugfixes/Changes:
  • Clustering algorithm now gives sensible results.
  • Previous implementation was wrong in several respects. Now
  • should behave correctly, even on corner cases.
  • Now performs bounds-in-sphere check for large queries,
  • significantly improving the scaling characteristics of
  • the search when using large bulk link radii
  • Fix crash when moving range on empty data
  • Workaround for wxWidgets bug where recent file list >9 items
  • would not load
  • Fix bug in undo/redo where tree may not reset correctly if it
  • contains range data after undo/redo op.
  • Technical Bugfixes/Features:
  • Signficantly more complex refresh system, now performs type analysis
  • on tree to determine minimal subsections of tree to refresh. Now filters
  • that cannot cache well will penalise the refresh system much less.
  • Fix corner case bug in LFSR selection routines (power of two
  • selection from same size array results in single duplicate).
  • Fix opengl bug with isosurface draw which appears up under some
  • video card/driver combinations, which lead to undefined video
  • behaviour (bad glPopAttrib()/glEnd() ordering)
  • Fix incorrect "loaded file" message if uninterpretable pos file
  • loaded.
  • Fix error in plot causing assertion error during mouseover
  • Fix plot behaviour when all data == 0.

New in 3Depict 0.0.5 Alpha (Mar 28, 2011)

  • Features:
  • Clustering algorithm
  • Modification of methods of Stephenson et al.; this includes Max. Sep algorithm. See manual for algorithm description and parameter details
  • Value shuffle mode in transform filter
  • Mouse preferences for zoom and other controls
  • User Visible Bugfixes/Changes:
  • Add hint to resolution dialog to maintain aspect ratio in output plots by default
  • Mac binary now distributed through packagemaker.
  • Technical Bugfixes/Features:
  • Major code refactor; simplify code layout to aid further code development, speed compilation
  • Fix "press shift to refresh" hint not working
  • Fix voxels not reporting cache size
  • Fix possible crash bug in double click plot when no plot visible.
  • Filters now support named sections in property sets
  • Disallow zero sized ion streams from rangefiles
  • Fix off-by-one bug in boundcube set func (can cause assertion error)
  • Improve progress reporting for LSFR random selections

New in 3Depict 0.0.4 Alpha (Jan 24, 2011)

  • Features:
  • Preferences dialog
  • User defined defaults for each filter
  • Window startup behaviour
  • Postprocessing effects
  • Interactive/fast depth buffer based cropping
  • Analgyphic (oldschool coloured glasses) stereo
  • Fullscreen now has "partial" and "really" fullscreen modes
  • Ion downsampling filter now aware of ranges
  • User Visible Bugfixes/Changes:
  • Improved parsing of points, so more styles of 3D point entry is
  • allowed, eg when cutting/pasting from scilab
  • Plot now zooms in X or Y only by double clicking below axis
  • Some sections that were supposed to be paralellised, but were not
  • due to typos, now actually are.
  • Fix bugs in state file writing for ion clipping (non saved var)
  • Fix parallelism in KD tree building
  • RDF was not paralellised, and could not be aborted
  • Voxels no longer crash due to non-ion input
  • Fix assertion errors when working with cylinder clipping tools
  • Fix overlays hints being drawn "below" other points in the scene (disable
  • depth buffer, and draw last)
  • Technical Bugfixes/Features:
  • Improve compilation structure to simplify builds under all
  • platforms, particularly when using paralell or similar
  • Various crash fixes due to re-entry bugs
  • Fix a few unititalised variables (eg spat. analysis ->cache on plot)
  • Implement "effects" framework to allow insertion of arbitrary openGL
  • calls using derived effects classes.
  • Some internal refactoring to reduce code duplication (Filter
  • generation)

New in 3Depict 0.0.2 Alpha (Dec 1, 2010)

  • Added Radial Distribution Function & Nearest neighbour analyses
  • Added on-plot range interaction
  • Add axis aligned box clip mode
  • Plot panning (hold shift key)
  • Add on-screen colourbar for ion colour
  • Add axis drawing
  • Show marker for transform in mass-centre & boundbox mode. Allow user to show or hide marker.
  • Add drag and drop support for file opening
  • Added better error messages to XML file read
  • Add mode to lock cylinder magnitude during rotation
  • Improvements to manual