diff --git a/db/demo.tar b/db/demo.tar index fde6a83ef..4edf70636 100644 Binary files a/db/demo.tar and b/db/demo.tar differ diff --git a/libraries/springy.js b/libraries/springy.js index a1e8d65f4..65ad9fecf 100644 --- a/libraries/springy.js +++ b/libraries/springy.js @@ -417,11 +417,12 @@ { var d = point1.p.subtract(point2.p); var distance = d.magnitude() + 0.1; // avoid massive forces at small distances (and divide by zero) + var direction = d.normalise(); // apply force to each end point - point1.applyForce(direction.multiply(this.repulsion).divide(distance * distance * 0.5)); - point2.applyForce(direction.multiply(this.repulsion).divide(distance * distance * -0.5)); + point1.applyForce(direction.multiply(this.repulsion).divide(distance * distance * distance * 0.5)); + point2.applyForce(direction.multiply(this.repulsion).divide(distance * distance * distance * -0.5)); } }); }); diff --git a/src/public/javascripts/services/link_map.js b/src/public/javascripts/services/link_map.js index bacf44490..04b5af043 100644 --- a/src/public/javascripts/services/link_map.js +++ b/src/public/javascripts/services/link_map.js @@ -65,8 +65,9 @@ export default class LinkMap { graph, // param explanation here: https://github.com/dhotson/springy/issues/58 400.0, // Spring stiffness - 400.0, // Node repulsion - 0.15 // Damping + 600.0, // Node repulsion + 0.15, // Damping + 0.1 // min energy threshold ); const getNoteBox = noteId => { @@ -163,9 +164,6 @@ export default class LinkMap { ); this.renderer.start(); - - // long rendering is annoying and by 3rd seconds the basic layout should be finished - setTimeout(() => this.renderer.stop(), 3000); } moveToCenterOfElement(element) { @@ -213,7 +211,7 @@ export default class LinkMap { this.$linkMapContainer.empty(); // reset zoom/pan - this.pzInstance.zoomTo(0, 0, this.options.zoom); + this.pzInstance.zoomAbs(0, 0, this.options.zoom); this.pzInstance.moveTo(0, 0); }