Recent Releases of https://github.com/dipterix/threebrain
https://github.com/dipterix/threebrain - CRAN Release 1.2.0
First, this package is back on CRAN now.
Check https://github.com/dipterix/threeBrain/blob/master/NEWS.md for release notes.
- R
Published by dipterix over 1 year ago
https://github.com/dipterix/threebrain - CRAN Release 1.0.1
This version focuses on enhanced support on NIfTI format, allowing users to replace mgh/mgz with nii when preprocessing imaging data using pipelines other than FreeSurfer
- Updated controller library to have reasonable input focus
- Allow
MRIslices to beNIfTIformat - Set slices to be visible by default when the surface is not available
- Fixed transform for
datacube2 - Fixed
qformwhen readingNIfTIfiles - Fixed
auto-refinefunctions in electrode localization - Removed clipboard auto-copy and auto-paste functions since they conflict with other viewers; instead users can use controllers to copy and paste state
- R
Published by dipterix almost 3 years ago
https://github.com/dipterix/threebrain - CRAN Release 1.0.0 (Egypt)
This version is a major update since the major functions in electrode localization have been implemented.
- Created
threeBrain::threeBrainas the formal way to create brain objects - Updated
JavaScriptengine tov150 - Allow getting
HTMLtags from saved widget so the widget can be used fromJupyternotebook - Added
$rendermethod to remember viewer states - Allowing set title via proxy driver
- Added citation information
- Fixed hemisphere issue in localization when electrodes are closer to opposite hemispheres
- Added electrode registration from anatomical slice cross-hair
The version code is chosen in memory of Egypt, who just passed away earlier today.
The photo is licensed under Creative Commons Attribution-NonCommercial-NoDerivs (CC-BY-NC-ND).
- R
Published by dipterix almost 3 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.2.9
threeBrain 0.2.9
This version plans for a major update. Here are some highlights:
- Electrode localization can be done from original
CTinstead of re-sampled ones - Completely isolate
JavaScriptengine fromRcode. TheJavaScriptcode is available asnpmpackage and is used via sub-module - Implemented file readers directly from
JavaScript, this allows reading files directly in viewer, and no cache is needed - No home-brew version of
threejsis required: standardnpmdistribution is used - New controller
GUIis implemented - The viewer can be driven via
JavaScriptdirectly via event dispatchers - Anatomical segmentation map is visible from the side panels; the
voxelvalues are displayed when settingcrosshair
Detailed Changes
- Added step size in
datacube2material uniforms - Upgraded
threejstor148, and usenpmdistribution "three" - Massive code re-factory (variable names, trackball controls, legacy classes...)
- Removed
data-GUIand uselil-GUI - Fixed compass (finally...)
- Added title to the viewer
- Reworked the whole message signal system, added
ThrottledEventDispatcher.js - Added
MouseKeyboardclass to track mouse and keyboard events, greatly reduced canvas burden - Added
animParameterobject to canvas to keep track of the animation parameters - reworked shiny drivers
- fixed one-voxel shift issues
- Added format support for
nii,mgh/mgz,FreeSurfersurface,FreeSurfernode value binary formats - Added function
threeBrainto allow 3D viewer to run without cache (with fs only) - Fixed memory leak issues in
JavaScriptcode - Geometry groups can now change its storage path
- JS is completely independent now (available on
npmnow) - Peel event dispatcher from the canvas class so the events can be managed separately
- Hide time-stamps when there is no data/animation available
- Added experimental support to show labels on regular electrodes; currently no depth-test is turned on
- Added
GUIsupport to change electrode label visibility and size - Electrode label size adjusts along with electrode radius
handle_resizenow put off resizing function when detecting widget size is too small
Bug fixes
- Fixing
xfmnot parsed correctly when the line starts with blank spaces - Stopped rendering canvas when canvas is too small (less than 10 pixels)
Screenshot of the electrode localization.

- R
Published by dipterix about 3 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.2.7
threeBrain 0.2.7
Changes
- Rewired events, allowing to drive the viewer via
JavaScriptevents - Allowed to set animation playback status
- Remove modal by default if
raveioorravedashis loaded - Edited launch script to always use
Python3
Bug fixes
- Fixed installation issues (template brain) on
Windows, avoid backslashes
threeBrain 0.2.6
Changes
- Allowed users to pan the camera when localizing electrodes
- Added line segment geometry type that can either display static line segments (such as
DTI), or connect two electrodes dynamically - Printing brain now uses more accurate terms
- Allowed
CTto be either path or the actual data when calling localizing function
Bug fixes
- Fixed
NifTiorientation issues and use correctsform - Fixed localization issue when
NifTitransform matrix has determinant not equally to 1 - Fixed volume shader, resolved shift issues when panning the camera
- R
Published by dipterix over 3 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.2.5
Changes since 0.2.0:
Highlights:
- Added electrode localization with aligned re-sampled CT image. Can be accessible via
brain$localize(ct_path). Rendering original CT is in the dev schedule - Users can download electrode coordinates as
csvdirectly from the control panel - Added support to download other templates such as
fsaverage,bert,cvs_avg35etc. - Allow to show volume data directly in the viewer (toggle with key
l) - Allow surface vertex color to be sampled from volume or electrodes (projected to the surface with Gaussian blur) via shortcut
k.
Changes
- Surface
sync from voxelsnow clamp the surface nodes - Added
Voxel Displaycontroller to toggle volume display modes - Changed shortcut
lfromVoxel TypetoVoxel Display - Volume
fragmentShaderuses non-linear function to calculate fragment colors combined with face normal; this will create smoother results DataCube2geometry usesConvexHullinstead of box/sphere to improve the performanceDataCube2are no longer hidden whensync from voxelsis on: users can use shortcutslandkto easily control the visibility.download_template_subjectcan download other templates such asfsaverage,cvs_avg35,bert.- Allows electrodes to be reset
- Displays electrode labels along with the electrodes
- Allows resizing electrode size on the fly
- Allows resizing the electrode labels
- Localization module has been integrated into
RAVE - Added line mesh to mark the distance of the electrode deviating from its original position. The line color changes with the distance value.
- Supported video content to display auditory visual stimuli along the response
- Default to closing the
defaultandvolumeside folders - Renamed recording button to
Chrome-specific - Can download electrodes as
csv
Improvements
- Improved localization precision
- Auto-adjusting electrodes now respects the topology
- Electrodes in the localization mode now have
LocElectrodeclass - Volume rendering and ray-casters now respects the transform matrices
- Added 3 vignettes
- Added
TextTexturein the internal code to display textSpriteeasily
Bug fixes
- Fixed a volume rendering issue where ray-marching directions are not calculated correctly
- Fixed color not set correctly when changing
Voxel Labelswhile surface colors aresync from voxels - Fixed electrode localization interpolation issue
- Proper dispose the localized electrodes
- Fixed screenshot and video recording functions
- R
Published by dipterix about 4 years ago
https://github.com/dipterix/threebrain - Pre-Release 0.2.0
This (draft) release includes core engine updates and performance improvements. It's in testing phase.
- R
Published by dipterix almost 5 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.1.8
Changes
- Screenshot now downloads
pdfformat
Bug Fixes
- Fixed
freesurferformatsface index starting from 1 instead of 0
- R
Published by dipterix almost 6 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.1.7
Bundled update from 0.1.5
threeBrain 0.1.6 ~ 0.1.7
Changes
- Now displays
MNI305coordinates instead oftkRAScoordinates Removed
reticulateand related functions to support native R functionsImplemented
view_ct_t1to viewCTaligned toT1imagesUpdated document on how to generate
FreeSurferbrainRemoved dependency to
nibabeland use native R packagesRe-designed legends, added options to show, hide display information
Added screenshot to download as image
Improvements
- Fixed
MNI305calculation issues - Internally calculates anterior commissure
- R
Published by dipterix about 6 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.1.5
- R
Published by dipterix over 6 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.1.4
Compatible with RAVE ver. 0.1.8-beta and ravebuiltins ver. v0.1-alpha
- R
Published by dipterix over 6 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.1.3
Changes
- File structure change: now directly read in from
FreeSurferfolder - Added readers for
.mgz,.m3zfiles - Added coordinate system to align volume with surface data
- Implemented side-viewers, added three side cameras at XYZ axis
- Can now read, export electrodes as csv file
- Re-write brain generating function
- Can display/switch multiple value types
- Added transparency to surfaces
- Implemented experimental electrode localization
- Automatically determine color type (continuous or discrete) and value range
Improvements
- Shortcuts available at here
- Optimized electrode value settings
- R
Published by dipterix over 6 years ago
https://github.com/dipterix/threebrain - CRAN Release 0.1.2
- R
Published by dipterix almost 7 years ago