From 894a4982eeecb265dc91a531d0d9df0079357838 Mon Sep 17 00:00:00 2001 From: Sven Slootweg Date: Mon, 13 Mar 2017 02:44:51 +0100 Subject: [PATCH] Get rid of offset tracking in core, and let individual shapes track it themselves --- src/create-composite-object.js | 11 ++++++----- src/create-object.js | 2 -- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/create-composite-object.js b/src/create-composite-object.js index 217514c..0b28c06 100644 --- a/src/create-composite-object.js +++ b/src/create-composite-object.js @@ -49,8 +49,8 @@ module.exports = function createCompositeObject(options) { let position = getPosition(object); object.render(context, { - x: object.x - this.renderOffsetX, - y: object.y - this.renderOffsetY + x: object.x - this.offsetX, + y: object.y - this.offsetY }); }); }, @@ -72,11 +72,12 @@ module.exports = function createCompositeObject(options) { let x2 = max(objectMetrics.map(object => object.x2)); let y2 = max(objectMetrics.map(object => object.y2)); + this.offsetX = x1; + this.offsetY = y1; + return { width: x2 - x1, - height: y2 - y1, - offsetX: x1, - offsetY: y1 + height: y2 - y1 } } }, initialPropertySet._)); diff --git a/src/create-object.js b/src/create-object.js index 235112f..e263108 100644 --- a/src/create-object.js +++ b/src/create-object.js @@ -74,8 +74,6 @@ module.exports = function createObject(options) { this.renderWidth = newSize.width * this.scaleX; this.renderHeight = newSize.height * this.scaleY; - this.renderOffsetX = defaultValue(newSize.offsetX, 0) * this.scaleX; - this.renderOffsetY = defaultValue(newSize.offsetY, 0) * this.scaleY; this.renderUnderdrawX = defaultValue(newSize.underdrawX, 0) * this.scaleX; this.renderUnderdrawY = defaultValue(newSize.underdrawY, 0) * this.scaleY; this.renderOverdrawX = defaultValue(newSize.overdrawX, 0) * this.scaleX;