diff --git a/src/Container.js b/src/Container.js
index 33fb483d..cc1d0c18 100644
--- a/src/Container.js
+++ b/src/Container.js
@@ -155,12 +155,12 @@
return node;
},
/**
- * get shapes that intersect a point
+ * get all shapes that intersect a point
* @method
* @memberof Kinetic.Container.prototype
- * @param {Object} point
+ * @param {Object} pos
*/
- getIntersections: function() {
+ getAllIntersections: function() {
var pos = Kinetic.Util._getXY(Array.prototype.slice.call(arguments));
var arr = [];
var shapes = this.get('Shape');
diff --git a/src/Global.js b/src/Global.js
index 64ab9501..755b24eb 100644
--- a/src/Global.js
+++ b/src/Global.js
@@ -74,7 +74,7 @@ var Kinetic = {};
* context.quadraticCurveTo(300, 100, 260, 170);
* context.closePath();
* canvas.fillStroke(this);
- * }
+ * }
*});
*/
Kinetic.Shape = function(config) {
diff --git a/src/Layer.js b/src/Layer.js
index acd12ab1..0f97a7d6 100644
--- a/src/Layer.js
+++ b/src/Layer.js
@@ -11,9 +11,11 @@
this.hitCanvas = new Kinetic.HitCanvas();
},
/**
- * get intersection object that contains shape and pixel data
+ * get visible intersection object that contains shape and pixel data. This is the preferred
+ * method for determining if a point intersects a shape or not
* @method
- * @memberof Kinetic.Node.prototype
+ * @memberof Kinetic.Layer.prototype
+ * @param {Object} pos point object
*/
getIntersection: function() {
var pos = Kinetic.Util._getXY(Array.prototype.slice.call(arguments)),
diff --git a/src/Shape.js b/src/Shape.js
index cf2a5aac..169ed64b 100644
--- a/src/Shape.js
+++ b/src/Shape.js
@@ -76,7 +76,7 @@
/**
* determines if point is in the shape, regardless if other shapes are on top of it. Note: because
* this method clears a temp hit canvas, and redraws the shape, it performs very poorly if executed many times
- * consecutively. If possible, it's better to use the stage.getIntersections() method instead
+ * consecutively. If possible, it's better to use the stage.getIntersection() method instead
* @method
* @memberof Kinetic.Shape.prototype
* @param {Object} point point can be an object containing
diff --git a/src/Stage.js b/src/Stage.js
index 4283346a..05d3b6b3 100644
--- a/src/Stage.js
+++ b/src/Stage.js
@@ -252,7 +252,8 @@
this.toDataURL(config);
},
/**
- * get intersection object that contains shape and pixel data
+ * get visible intersection object that contains shape and pixel data. This is the preferred
+ * method for determining if a point intersects a shape or not
* @method
* @memberof Kinetic.Stage.prototype
* @param {Object} pos point object
diff --git a/tests/js/unit/stageTests.js b/tests/js/unit/stageTests.js
index 24e4d984..0e85ee48 100644
--- a/tests/js/unit/stageTests.js
+++ b/tests/js/unit/stageTests.js
@@ -77,7 +77,7 @@ Test.Modules.STAGE = {
test(stage.getContent().className === 'kineticjs-content', 'stage DOM class name is wrong');
},
- 'stage getIntersections()': function(containerId) {
+ 'stage getAllIntersections()': function(containerId) {
var stage = new Kinetic.Stage({
container: containerId,
width: 578,
@@ -116,7 +116,7 @@ Test.Modules.STAGE = {
},
- 'test getIntersections': function(containerId) {
+ 'test getAllIntersections': function(containerId) {
var stage = new Kinetic.Stage({
container: containerId,
width: 578,
@@ -150,50 +150,50 @@ Test.Modules.STAGE = {
stage.add(layer);
// test individual shapes
- test(stage.getIntersections(266, 114).length === 1, '17) getIntersections should return one shape');
- test(stage.getIntersections(266, 114)[0].getId() === 'greenCircle', '19) first intersection should be greenCircle');
+ test(stage.getAllIntersections(266, 114).length === 1, '17) getAllIntersections should return one shape');
+ test(stage.getAllIntersections(266, 114)[0].getId() === 'greenCircle', '19) first intersection should be greenCircle');
- test(stage.getIntersections(414, 115).length === 1, '18) getIntersections should return one shape');
- test(stage.getIntersections(414, 115)[0].getId() === 'redCircle', '20) first intersection should be redCircle');
+ test(stage.getAllIntersections(414, 115).length === 1, '18) getAllIntersections should return one shape');
+ test(stage.getAllIntersections(414, 115)[0].getId() === 'redCircle', '20) first intersection should be redCircle');
- test(stage.getIntersections(350, 118).length === 2, '1) getIntersections should return two shapes');
- test(stage.getIntersections(350, 118)[0].getId() === 'redCircle', '2) first intersection should be redCircle');
- test(stage.getIntersections(350, 118)[1].getId() === 'greenCircle', '3) second intersection should be greenCircle');
+ test(stage.getAllIntersections(350, 118).length === 2, '1) getAllIntersections should return two shapes');
+ test(stage.getAllIntersections(350, 118)[0].getId() === 'redCircle', '2) first intersection should be redCircle');
+ test(stage.getAllIntersections(350, 118)[1].getId() === 'greenCircle', '3) second intersection should be greenCircle');
// hide green circle. make sure only red circle is in result set
greenCircle.hide();
layer.draw();
- test(stage.getIntersections(350, 118).length === 1, '4) getIntersections should return one shape');
- test(stage.getIntersections(350, 118)[0].getId() === 'redCircle', '5) first intersection should be redCircle');
+ test(stage.getAllIntersections(350, 118).length === 1, '4) getAllIntersections should return one shape');
+ test(stage.getAllIntersections(350, 118)[0].getId() === 'redCircle', '5) first intersection should be redCircle');
// show green circle again. make sure both circles are in result set
greenCircle.show();
layer.draw();
- test(stage.getIntersections(350, 118).length === 2, '6) getIntersections should return two shapes');
- test(stage.getIntersections(350, 118)[0].getId() === 'redCircle', '7) first intersection should be redCircle');
- test(stage.getIntersections(350, 118)[1].getId() === 'greenCircle', '8) second intersection should be greenCircle');
+ test(stage.getAllIntersections(350, 118).length === 2, '6) getAllIntersections should return two shapes');
+ test(stage.getAllIntersections(350, 118)[0].getId() === 'redCircle', '7) first intersection should be redCircle');
+ test(stage.getAllIntersections(350, 118)[1].getId() === 'greenCircle', '8) second intersection should be greenCircle');
// hide red circle. make sure only green circle is in result set
redCircle.hide();
layer.draw();
- test(stage.getIntersections(350, 118).length === 1, '9) getIntersections should return one shape');
- test(stage.getIntersections(350, 118)[0].getId() === 'greenCircle', '10) first intersection should be greenCircle');
+ test(stage.getAllIntersections(350, 118).length === 1, '9) getAllIntersections should return one shape');
+ test(stage.getAllIntersections(350, 118)[0].getId() === 'greenCircle', '10) first intersection should be greenCircle');
// show red circle again. make sure both circles are in result set
redCircle.show();
layer.draw();
- test(stage.getIntersections(350, 118).length === 2, '11) getIntersections should return two shapes');
- test(stage.getIntersections(350, 118)[0].getId() === 'redCircle', '12) first intersection should be redCircle');
- test(stage.getIntersections(350, 118)[1].getId() === 'greenCircle', '13) second intersection should be greenCircle');
+ test(stage.getAllIntersections(350, 118).length === 2, '11) getAllIntersections should return two shapes');
+ test(stage.getAllIntersections(350, 118)[0].getId() === 'redCircle', '12) first intersection should be redCircle');
+ test(stage.getAllIntersections(350, 118)[1].getId() === 'greenCircle', '13) second intersection should be greenCircle');
// test from layer
- test(layer.getIntersections(350, 118).length === 2, '14) getIntersections should return two shapes');
- test(layer.getIntersections(350, 118)[0].getId() === 'redCircle', '15) first intersection should be redCircle');
- test(layer.getIntersections(350, 118)[1].getId() === 'greenCircle', '16) second intersection should be greenCircle');
+ test(layer.getAllIntersections(350, 118).length === 2, '14) getAllIntersections should return two shapes');
+ test(layer.getAllIntersections(350, 118)[0].getId() === 'redCircle', '15) first intersection should be redCircle');
+ test(layer.getAllIntersections(350, 118)[1].getId() === 'greenCircle', '16) second intersection should be greenCircle');
},
'scale stage after add layer': function(containerId) {