From 2e32c1c93bbe40a2ddd57099a9f914418f96f926 Mon Sep 17 00:00:00 2001 From: Code WvS Date: Wed, 25 Mar 2015 10:36:30 +0100 Subject: move shape size calculation to core --- objects.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'objects.js') diff --git a/objects.js b/objects.js index 771318e..d4f5cb0 100644 --- a/objects.js +++ b/objects.js @@ -598,6 +598,12 @@ SpriteMorph.prototype.initBlocks = function () { spec: 'set pen size to %n', defaults: [1] }, + shapeSize: { + only: SpriteMorph, + type: 'reporter', + category: 'pen', + spec: 'size of drawn shapes in m²' + }, doStamp: { only: SpriteMorph, type: 'command', @@ -1970,6 +1976,8 @@ SpriteMorph.prototype.blockTemplates = function (category) { blocks.push('-'); blocks.push(block('changeSize')); blocks.push(block('setSize')); + blocks.push('-'); + blocks.push(block('shapeSize')); //blocks.push('-'); //blocks.push(block('doStamp')); @@ -3111,6 +3119,14 @@ SpriteMorph.prototype.changeSize = function (delta) { this.setSize(this.size + (+delta || 0)); }; +SpriteMorph.prototype.shapeSize = function () { + var size = 0; + this.penShapes.eachLayer(function (layer) { + size += LGeo.area(layer); + }); + return size; +}; + // SpriteMorph scale SpriteMorph.prototype.getScale = function () { -- cgit v1.3.1