mirror of
https://github.com/Hopiu/fabric.js.git
synced 2026-05-12 15:53:10 +00:00
Create group of circles in CircleBrush for better performance. Closes #530
This commit is contained in:
parent
44265e3c97
commit
f5f29a3925
5 changed files with 25 additions and 10 deletions
9
dist/all.js
vendored
9
dist/all.js
vendored
|
|
@ -8098,6 +8098,8 @@ fabric.CircleBrush = fabric.util.createClass(fabric.BaseBrush, /** @lends fabric
|
|||
var originalRenderOnAddRemove = this.canvas.renderOnAddRemove;
|
||||
this.canvas.renderOnAddRemove = false;
|
||||
|
||||
var circles = [ ];
|
||||
|
||||
for (var i = 0, len = this.points.length; i < len; i++) {
|
||||
var point = this.points[i];
|
||||
var circle = new fabric.Circle({
|
||||
|
|
@ -8109,9 +8111,12 @@ fabric.CircleBrush = fabric.util.createClass(fabric.BaseBrush, /** @lends fabric
|
|||
|
||||
this.shadow && circle.setShadow(this.shadow);
|
||||
|
||||
this.canvas.add(circle);
|
||||
this.canvas.fire('path:created', { path: circle });
|
||||
circles.push(circle);
|
||||
}
|
||||
var group = new fabric.Group(circles);
|
||||
|
||||
this.canvas.add(group);
|
||||
this.canvas.fire('path:created', { path: group });
|
||||
|
||||
this.canvas.clearContext(this.canvas.contextTop);
|
||||
this._resetShadow();
|
||||
|
|
|
|||
8
dist/all.min.js
vendored
8
dist/all.min.js
vendored
File diff suppressed because one or more lines are too long
BIN
dist/all.min.js.gz
vendored
BIN
dist/all.min.js.gz
vendored
Binary file not shown.
9
dist/all.require.js
vendored
9
dist/all.require.js
vendored
|
|
@ -8098,6 +8098,8 @@ fabric.CircleBrush = fabric.util.createClass(fabric.BaseBrush, /** @lends fabric
|
|||
var originalRenderOnAddRemove = this.canvas.renderOnAddRemove;
|
||||
this.canvas.renderOnAddRemove = false;
|
||||
|
||||
var circles = [ ];
|
||||
|
||||
for (var i = 0, len = this.points.length; i < len; i++) {
|
||||
var point = this.points[i];
|
||||
var circle = new fabric.Circle({
|
||||
|
|
@ -8109,9 +8111,12 @@ fabric.CircleBrush = fabric.util.createClass(fabric.BaseBrush, /** @lends fabric
|
|||
|
||||
this.shadow && circle.setShadow(this.shadow);
|
||||
|
||||
this.canvas.add(circle);
|
||||
this.canvas.fire('path:created', { path: circle });
|
||||
circles.push(circle);
|
||||
}
|
||||
var group = new fabric.Group(circles);
|
||||
|
||||
this.canvas.add(group);
|
||||
this.canvas.fire('path:created', { path: group });
|
||||
|
||||
this.canvas.clearContext(this.canvas.contextTop);
|
||||
this._resetShadow();
|
||||
|
|
|
|||
|
|
@ -60,6 +60,8 @@ fabric.CircleBrush = fabric.util.createClass(fabric.BaseBrush, /** @lends fabric
|
|||
var originalRenderOnAddRemove = this.canvas.renderOnAddRemove;
|
||||
this.canvas.renderOnAddRemove = false;
|
||||
|
||||
var circles = [ ];
|
||||
|
||||
for (var i = 0, len = this.points.length; i < len; i++) {
|
||||
var point = this.points[i];
|
||||
var circle = new fabric.Circle({
|
||||
|
|
@ -71,9 +73,12 @@ fabric.CircleBrush = fabric.util.createClass(fabric.BaseBrush, /** @lends fabric
|
|||
|
||||
this.shadow && circle.setShadow(this.shadow);
|
||||
|
||||
this.canvas.add(circle);
|
||||
this.canvas.fire('path:created', { path: circle });
|
||||
circles.push(circle);
|
||||
}
|
||||
var group = new fabric.Group(circles);
|
||||
|
||||
this.canvas.add(group);
|
||||
this.canvas.fire('path:created', { path: group });
|
||||
|
||||
this.canvas.clearContext(this.canvas.contextTop);
|
||||
this._resetShadow();
|
||||
|
|
|
|||
Loading…
Reference in a new issue