Skip to content

Commit 21f4ec4

Browse files
Final Update
1 parent 0c59c83 commit 21f4ec4

10 files changed

Lines changed: 57 additions & 85 deletions

src/geom/intersects/GetCircleToCircle.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/

src/geom/intersects/GetCircleToRectangle.js

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
@@ -31,19 +32,10 @@ var GetCircleToRectangle = function (circle, rect, out)
3132
var lineC = rect.getLineC();
3233
var lineD = rect.getLineD();
3334

34-
var output = [ [], [], [], [] ];
35-
36-
var result = [
37-
GetLineToCircle(lineA, circle, output[0]),
38-
GetLineToCircle(lineB, circle, output[1]),
39-
GetLineToCircle(lineC, circle, output[2]),
40-
GetLineToCircle(lineD, circle, output[3])
41-
];
42-
43-
for (var i = 0; i < 4; i++)
44-
{
45-
if (result[i] && output !== []) { out.concat(output[i]); }
46-
}
35+
GetLineToCircle(lineA, circle, out);
36+
GetLineToCircle(lineB, circle, out);
37+
GetLineToCircle(lineC, circle, out);
38+
GetLineToCircle(lineD, circle, out);
4739
}
4840

4941
return out;

src/geom/intersects/GetLineToCircle.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
67

78
var Point = require('../point/Point');
8-
9-
var tmp = new Point();
9+
var LineToCircle = require('./LineToCircle');
1010

1111
/**
1212
* Checks for intersection between the line segment and circle,

src/geom/intersects/GetLineToRectangle.js

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
67

78
var Point = require('../point/Point');
8-
var GetLineToLine = require('./GetLineToLine');
9+
var LineToLine = require('./LineToLine');
910
var LineToRectangle = require('./LineToRectangle');
1011

1112
/**
@@ -35,10 +36,10 @@ var GetLineToRectangle = function (line, rect, out)
3536
var output = [ new Point(), new Point(), new Point(), new Point() ];
3637

3738
var result = [
38-
GetLineToLine(lineA, line, output[0]),
39-
GetLineToLine(lineB, line, output[1]),
40-
GetLineToLine(lineC, line, output[2]),
41-
GetLineToLine(lineD, line, output[3])
39+
LineToLine(lineA, line, output[0]),
40+
LineToLine(lineB, line, output[1]),
41+
LineToLine(lineC, line, output[2]),
42+
LineToLine(lineD, line, output[3])
4243
];
4344

4445
for (var i = 0; i < 4; i++)

src/geom/intersects/GetRectangleToRectangle.js

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
@@ -32,19 +33,10 @@ var GetRectangleToRectangle = function (rectA, rectB, out)
3233
var lineC = rectA.getLineC();
3334
var lineD = rectA.getLineD();
3435

35-
var output = [ [], [], [], [] ];
36-
37-
var result = [
38-
GetLineToRectangle(lineA, rectB, output[0]),
39-
GetLineToRectangle(lineB, rectB, output[1]),
40-
GetLineToRectangle(lineC, rectB, output[2]),
41-
GetLineToRectangle(lineD, rectB, output[3])
42-
];
43-
44-
for (var i = 0; i < 4; i++)
45-
{
46-
if (result[i] && output !== []) { out.concat(output[i]); }
47-
}
36+
GetLineToRectangle(lineA, rectB, out);
37+
GetLineToRectangle(lineB, rectB, out);
38+
GetLineToRectangle(lineC, rectB, out);
39+
GetLineToRectangle(lineD, rectB, out);
4840
}
4941

5042
return out;

src/geom/intersects/GetRectangleToTriangle.js

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
@@ -30,18 +31,9 @@ var GetRectangleToTriangle = function (rect, triangle, out)
3031
var lineB = triangle.getLineB();
3132
var lineC = triangle.getLineC();
3233

33-
var output = [ [], [], [] ];
34-
35-
var result = [
36-
GetLineToRectangle(lineA, rect, output[0]),
37-
GetLineToRectangle(lineB, rect, output[1]),
38-
GetLineToRectangle(lineC, rect, output[2])
39-
];
40-
41-
for (var i = 0; i < 3; i++)
42-
{
43-
if (result[i] && output[i] !== []) { out.concat(output[i]); }
44-
}
34+
GetLineToRectangle(lineA, rect, out);
35+
GetLineToRectangle(lineB, rect, out);
36+
GetLineToRectangle(lineC, rect, out);
4537
}
4638

4739
return out;

src/geom/intersects/GetTriangleToCircle.js

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
@@ -31,18 +32,9 @@ var GetTriangleToCircle = function (triangle, circle, out)
3132
var lineB = triangle.getLineB();
3233
var lineC = triangle.getLineC();
3334

34-
var output = [ [], [], [] ];
35-
36-
var result = [
37-
GetLineToCircle(lineA, circle, output[0]),
38-
GetLineToCircle(lineB, circle, output[1]),
39-
GetLineToCircle(lineC, circle, output[2])
40-
];
41-
42-
for (var i = 0; i < 3; i++)
43-
{
44-
if (result[i] && output !== []) { out.concat(output[i]); }
45-
}
35+
GetLineToCircle(lineA, circle, out);
36+
GetLineToCircle(lineB, circle, out);
37+
GetLineToCircle(lineC, circle, out);
4638
}
4739

4840
return out;

src/geom/intersects/GetTriangleToLine.js

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
67

78
var Point = require('../point/Point');
89
var TriangleToLine = require('./TriangleToLine');
9-
var GetLineToLine = require('./GetLineToLine');
10+
var LineToLine = require('./LineToLine');
1011

1112
/**
1213
* Checks if a Triangle and a Line intersect, and returns the intersection points as a Point object array.
@@ -35,14 +36,14 @@ var GetTriangleToLine = function (triangle, line, out)
3536
var output = [ new Point(), new Point(), new Point() ];
3637

3738
var result = [
38-
GetLineToLine(lineA, line, output[0]),
39-
GetLineToLine(lineB, line, output[1]),
40-
GetLineToLine(lineC, line, output[2])
39+
LineToLine(lineA, line, output[0]),
40+
LineToLine(lineB, line, output[1]),
41+
LineToLine(lineC, line, output[2])
4142
];
4243

4344
for (var i = 0; i < 3; i++)
4445
{
45-
if (result[i] && output !== []) { out.push(output[i]); }
46+
if (result[i]) { out.push(output[i]); }
4647
}
4748
}
4849

src/geom/intersects/GetTriangleToTriangle.js

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
/**
2-
* @author Richard Davey <rich@photonstorm.com>
2+
* @author Florian Vazelle
3+
* @author Geoffrey Glaive
34
* @copyright 2019 Photon Storm Ltd.
45
* @license {@link https://github.com/photonstorm/phaser/blob/master/license.txt|MIT License}
56
*/
67

7-
var Equals = require('../TriangleToTriangle');
8-
var TriangleToLine = require('./GetTriangleToLine');
8+
var TriangleToTriangle = require('./TriangleToTriangle');
9+
var GetTriangleToLine = require('./GetTriangleToLine');
910

1011
/**
1112
* Checks if two Triangles intersect, and returns the intersection points as a Point object array.
@@ -31,18 +32,9 @@ var GetTriangleToTriangle = function (triangleA, triangleB, out)
3132
var lineB = triangleB.getLineB();
3233
var lineC = triangleB.getLineC();
3334

34-
var output = [ [], [], [] ];
35-
36-
var result = [
37-
GetTriangleToLine(triangleA, lineA, output[0]),
38-
GetTriangleToLine(triangleA, lineB, output[1]),
39-
GetTriangleToLine(triangleA, lineC, output[2])
40-
];
41-
42-
for (var i = 0; i < 3; i++)
43-
{
44-
if (result[i] && output[i] !== []) { out.concat(output[i]); }
45-
}
35+
GetTriangleToLine(triangleA, lineA, out);
36+
GetTriangleToLine(triangleA, lineB, out);
37+
GetTriangleToLine(triangleA, lineC, out);
4638
}
4739

4840
return out;

src/geom/intersects/index.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,16 @@ module.exports = {
1212

1313
CircleToCircle: require('./CircleToCircle'),
1414
CircleToRectangle: require('./CircleToRectangle'),
15+
GetCircleToCircle: require('./GetCircleToCircle'),
16+
GetCircleToRectangle: require('./GetCircleToRectangle'),
17+
GetLineToCircle: require('./GetLineToCircle'),
18+
GetLineToRectangle: require('./GetLineToRectangle'),
1519
GetRectangleIntersection: require('./GetRectangleIntersection'),
20+
GetRectangleToRectangle: require('./GetRectangleToRectangle'),
21+
GetRectangleToTriangle: require('./GetRectangleToTriangle'),
22+
GetTriangleToCircle: require('./GetTriangleToCircle'),
23+
GetTriangleToLine: require('./GetTriangleToLine'),
24+
GetTriangleToTriangle: require('./GetTriangleToTriangle'),
1625
LineToCircle: require('./LineToCircle'),
1726
LineToLine: require('./LineToLine'),
1827
LineToRectangle: require('./LineToRectangle'),

0 commit comments

Comments
 (0)