improving nodes connection detection

This commit is contained in:
Pablo Luna 2011-03-13 14:34:36 +00:00
parent 94db33e2ac
commit 09d57bfc03

View File

@ -278,7 +278,7 @@ mindplot.NodeModel.prototype.canBeConnected = function(sourceModel, sourcePositi
var targetTopicSize = targetModel.getSize(); var targetTopicSize = targetModel.getSize();
var yDistance = Math.abs(sourcePosition.y - targetPosition.y); var yDistance = Math.abs(sourcePosition.y - targetPosition.y);
if (yDistance <= targetTopicHeight / 2) if (yDistance <= 5 + targetTopicHeight / 2)
{ {
// Circular connection ? // Circular connection ?
if (!sourceModel._isChildNode(this)) if (!sourceModel._isChildNode(this))
@ -290,14 +290,14 @@ mindplot.NodeModel.prototype.canBeConnected = function(sourceModel, sourcePositi
if (isTargetAtRightFromCentral) if (isTargetAtRightFromCentral)
{ {
if (xDistance >= 0 && xDistance <= mindplot.NodeModel.MAIN_TOPIC_TO_MAIN_TOPIC_DISTANCE + (targetTopicSize.width / 2)) if (xDistance >= -targetTopicSize.width/2 && xDistance <= mindplot.NodeModel.MAIN_TOPIC_TO_MAIN_TOPIC_DISTANCE /2 + (targetTopicSize.width / 2))
{ {
result = true; result = true;
} }
} else } else
{ {
if (xDistance <= 0 && Math.abs(xDistance) <= mindplot.NodeModel.MAIN_TOPIC_TO_MAIN_TOPIC_DISTANCE + (targetTopicSize.width / 2)) if (xDistance <= targetTopicSize.width/2 && Math.abs(xDistance) <= mindplot.NodeModel.MAIN_TOPIC_TO_MAIN_TOPIC_DISTANCE /2 + (targetTopicSize.width / 2))
{ {
result = true; result = true;
} }