{"push_id":955979130,"size":5,"distinct_size":5,"ref":"refs/heads/viewannotations-integ-reorg-jcfr","head":"c70d9713dfd731d27caa83ca899236eb947405e8","before":"842f5d3e27e36f41dc23e2e458a4fd251b2ff4a1","commits":[{"sha":"8fc57f44c9d9cc56ceb953764ddc10e5869c6293","author":{"email":"137e42656562fb5ddd849b4ba850655db4822167@3bd1e089-480b-0410-8dfb-8563597acbee","name":"lassoan"},"message":"BUG: Prevent crash if ITK->VTK transform conversion fails\n\ngit-svn-id: http://svn.slicer.org/Slicer4/trunk@24904 3bd1e089-480b-0410-8dfb-8563597acbee","distinct":true,"url":"https://api.github.com/repos/jcfr/Slicer/commits/8fc57f44c9d9cc56ceb953764ddc10e5869c6293"},{"sha":"3e18e59ffd6bffbab53d41e8f167bc3a7923c03e","author":{"email":"bf5e972943f0e90adb0d9bfa939dcc72ce410bec@queensu.ca","name":"Andras Lasso"},"message":"ENH: Add infrastructure to support default MRML nodes\n\nAllow modifying default node content: Scene can store \"default\" nodes. If\na default node is specified for a class then the content of that node will\nbe used to initialize new nodes and reset nodes.\n\nCurrently used only for 3D views but can be used for other purposes, too\n(e.g., disable interpolation by default for volume nodes).\n\nThis is a backward incompatible change. Signature of\n\n  vtkMRMLNode::Reset()\n\nhas been changed into\n\n  vtkMRMLNode::Reset(vtkMRMLNode* defaultNode)\n\nCo-authored-by: Csaba Pinter <csaba.pinter@queensu.ca>","distinct":true,"url":"https://api.github.com/repos/jcfr/Slicer/commits/3e18e59ffd6bffbab53d41e8f167bc3a7923c03e"},{"sha":"eeca08d29e0d68eb15b55ad4cc122eb90652de7f","author":{"email":"859d3fd8ca46de62a08fca56c64958e301f5352c@kitware.com","name":"Jean-Christophe Fillion-Robin"},"message":"ENH: Update vtkMRMLSceneTest1 adding test for ResetNodes()","distinct":true,"url":"https://api.github.com/repos/jcfr/Slicer/commits/eeca08d29e0d68eb15b55ad4cc122eb90652de7f"},{"sha":"b66b61b99174d6b154f84640d517d34abe30d70a","author":{"email":"bf5e972943f0e90adb0d9bfa939dcc72ce410bec@queensu.ca","name":"Andras Lasso"},"message":"ENH: Update vtkMRMLLogic API adding GetApplication(Home|Share)Directory()\n\nAdded common helper functions for accessing file resources from MRML\nnodes.\n\nPreviously a Slicer-specific environment variable was hardcoded in\nvtkMRMLFreeSurferProceduralColorNode.\n\nNow the environment variable name is configurable in CMake and\nGetApplicationHomeDirectory and GetApplicationShareDirectory methods\nin vtkMRMLLogic can be used to determine resource file paths.","distinct":true,"url":"https://api.github.com/repos/jcfr/Slicer/commits/b66b61b99174d6b154f84640d517d34abe30d70a"},{"sha":"c70d9713dfd731d27caa83ca899236eb947405e8","author":{"email":"bf5e972943f0e90adb0d9bfa939dcc72ce410bec@queensu.ca","name":"Andras Lasso"},"message":"ENH: Refactored view ruler and orientation marker\n\nRuler and orientation marker:\n-----------------------------\n\n- available in both 2D and 3D viewers\n\n- easier to discover (available in viewer controller widgets and\n  application settings)\n\n- more customizable (size, visibility, custom ruler scales, orientation\n  marker models)\n\n- implemented with cleaner design (using displayable managers for\n  rendering and regular node attributes for data storage).\n\nNew features:\n-------------\n\n- Ruler and orientation marker is configurable per viewer in the slice/3D\n  view controller widgets (same way as all view options)\n\n- Ruler and orientation marker can be shown in 3D view\n\n- Default ruler orientation marker settings (and additional 3D view settings,\n  such as orthographic projection, show 3D cube, axis labels, depth peeling)\n  can be configured in the application settings (saved in .ini file)\n\n- Allow using any model in the scene as orientation marker (for example, set a\n  custom orientation marker in the 3D viewer:\n\n    getNode('View1').SetOrientationMarkerHumanModelNodeID(getNode('ToriaClipped03').GetID() )\n\n- All ruler and orientation marker settings (including custom orientation marker)\n  are saved in the scene\n\n- Added \"thick\" ruler mode: there is an option now to show the ruler with a\n  thicker line and larger font so that it can be seen from a larger distance\n  (e.g., interventional use)\n\nFixes bugs in the old implementation:\n-------------------------------------\n\n- ruler showed incorrect value when zoomed in or zoomed out very much (instead\n  of hiding the ruler, it was kept displayed at an incorrect scale)\n\n- Ruler was unusable in lightboxview: ruler line was clipped in half, label was\n  not visible\n\n- Some observers were not removed\n\nDesign changes compared to the old implementation:\n--------------------------------------------------\n\n- Ruler and orientation marker are rendered by displayable managers: This allows\n  much simpler and more robust resource management and rendering update (there was\n  previously an infinite loop in the orientation marker update causing Slicer crash\n  by stack overflow).\n\n- Orientation marker is loaded from a single file, color is stored in scalars:\n  This makes the implementation simpler and displaying of multi-color custom\n  models feasible.\n\nSlicer core changes:\n--------------------\n\n- Removed roll/pitch/yaw buttons from 3D view: to reduce the additional\n  complexity caused by adding 2 new buttons (for show/hide ruler and\n  orientation marker)\n\nRemarks and next steps:\n----------------------\n\n- Slice view corner annotations and scalar bar were left unchanged in the DataProbe\n  module, as they were not obvious how to clean up and generalize. Slice corner\n  annotations have to be made more generic, allowing displaying of custom text provided\n  by various modules (see for example CornerAnnotations module).\n\n- Scalar bar will need to be harmonized with the Color module's scalar bar display\n  (that is currently only available in the 3D view).","distinct":true,"url":"https://api.github.com/repos/jcfr/Slicer/commits/c70d9713dfd731d27caa83ca899236eb947405e8"}]}