Skip to content

Commit 9eb723c

Browse files
committed
Added PlaceOnEllipse action and added to Group
1 parent 5f04a65 commit 9eb723c

4 files changed

Lines changed: 32 additions & 1 deletion

File tree

v3/src/actions/PlaceOnEllipse.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
var PlaceOnEllipse = function (items, ellipse, startAngle, endAngle)
2+
{
3+
if (startAngle === undefined) { startAngle = 0; }
4+
if (endAngle === undefined) { endAngle = 6.28; }
5+
6+
var angle = startAngle;
7+
var angleStep = (endAngle - startAngle) / items.length;
8+
9+
var a = ellipse.width / 2;
10+
var b = ellipse.height / 2;
11+
12+
for (var i = 0; i < items.length; i++)
13+
{
14+
items[i].x = ellipse.x + a * Math.cos(angle);
15+
items[i].y = ellipse.y + b * Math.sin(angle);
16+
17+
angle += angleStep;
18+
}
19+
20+
return items;
21+
};
22+
23+
module.exports = PlaceOnEllipse;

v3/src/actions/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ module.exports = {
1111
IncXY: require('./IncXY'),
1212
IncY: require('./IncY'),
1313
PlaceOnCircle: require('./PlaceOnCircle'),
14+
PlaceOnEllipse: require('./PlaceOnEllipse'),
1415
PlaceOnLine: require('./PlaceOnLine'),
1516
PlaceOnRectangle: require('./PlaceOnRectangle'),
1617
PlaceOnTriangle: require('./PlaceOnTriangle'),

v3/src/checksum.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
var CHECKSUM = {
2-
build: '5d97e130-7716-11e7-8b1c-25a8a89333fb'
2+
build: '9aad2b50-7718-11e7-a802-eddafadf9983'
33
};
44
module.exports = CHECKSUM;

v3/src/gameobjects/group/Group.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,13 @@ var Group = new Class({
284284
return this;
285285
},
286286

287+
placeOnEllipse: function (ellipse, startAngle, endAngle)
288+
{
289+
Actions.PlaceOnEllipse(this.children.entries, ellipse, startAngle, endAngle);
290+
291+
return this;
292+
},
293+
287294
placeOnLine: function (line)
288295
{
289296
Actions.PlaceOnLine(this.children.entries, line);

0 commit comments

Comments
 (0)