not really known
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

117 lines
4.5 KiB

//* comment *//
Copyright (C) 2015 Sam Parkinson
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
//* arg-globals *//
var block = logo.blocks.blockList[blk];
var conns = block.connections;
//* block-globals *//
var simpleOneArgBlock = function (name, label) {
if (label === undefined) { var label = name; }
var block = new ProtoBlock(name);
block.palette = palettes.dict['maths'];
blocks.protoBlockDict[name] = block;
block.staticLabels.push(label);
block.adjustWidthToLabel();
block.oneArgMathBlock();
block.defaults.push(1);
};
var staticBlock = function (name, label) {
var block = new ProtoBlock(name);
block.palette = palettes.dict['maths'];
blocks.protoBlockDict[name] = block;
block.staticLabels.push(label);
block.adjustWidthToLabel();
block.parameterBlock();
};
//* block:power *//
var block = new ProtoBlock('power');
block.palette = palettes.dict['maths'];
blocks.protoBlockDict['power'] = block;
block.staticLabels.push(_('power'), _('base'), _('exp'));
block.twoArgMathBlock();
block.defaults.push(10, 2);
//* arg:power *//
var base = logo.parseArg(logo, turtle, conns[1]);
var exp = logo.parseArg(logo, turtle, conns[2]);
block.value = Math.pow(base, exp);
//* block:sin *// simpleOneArgBlock('sin');
//* arg:sin *// block.value = Math.sin(logo.parseArg(logo, turtle, conns[1]));
//* block:cos *// simpleOneArgBlock('cos');
//* arg:cos *// block.value = Math.cos(logo.parseArg(logo, turtle, conns[1]));
//* block:tan *// simpleOneArgBlock('tan');
//* arg:sin *// block.value = Math.tan(logo.parseArg(logo, turtle, conns[1]));
//* block:asin *// simpleOneArgBlock('asin');
//* arg:asin *// block.value = Math.asin(logo.parseArg(logo, turtle, conns[1]));
//* block:acos *// simpleOneArgBlock('acos');
//* arg:acos *// block.value = Math.acos(logo.parseArg(logo, turtle, conns[1]));
//* block:atan *// simpleOneArgBlock('atan');
//* arg:atan *// block.value = Math.atan(logo.parseArg(logo, turtle, conns[1]));
//* block:floor *// simpleOneArgBlock(_('floor'));
//* arg:floor *// block.value = Math.floor(logo.parseArg(logo, turtle, conns[1]));
//* block:ceiling *// simpleOneArgBlock(_('ceiling'));
//* arg:ceiling *// block.value = Math.ceil(logo.parseArg(logo, turtle, conns[1]));
//* block:degrees *// simpleOneArgBlock(_('degrees'), _('to degrees'));
//* arg:degrees *// block.value = logo.parseArg(logo, turtle, conns[1]) * (180/Math.PI);
//* block:radians *// simpleOneArgBlock(_('radians'), _('to radians'));
//* arg:radians *// block.value = logo.parseArg(logo, turtle, conns[1]) * (Math.PI/180);
//* block:pi *// staticBlock('pi', 'π');
//* arg:pi *// block.value = Math.PI;
//* block:e *// staticBlock('e', 'e');
//* arg:e *// block.value = Math.E;
//* palette-icon:maths *//
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
version="1.1"
width="55"
height="55"
viewBox="0 0 55 55"
id="svg2"
xml:space="preserve"><metadata
id="metadata13"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs11" /><g
id="toolbar-trigonometry"
style="fill:#000000;display:block"><path
d="m 11.852704,38.123539 31.294591,0 -31.294591,-26.247077 z"
id="path5"
style="fill:none;stroke:#ffffff;stroke-width:3.53326035" /><path
d="m 11.852704,30.047514 8.076024,0 0,8.076025"
id="path7"
style="fill:none;stroke:#ffffff;stroke-width:1.51425433" /></g></svg>
//* palette-fill:maths *// #ff0066
//* palette-stroke:maths *// #ef003e
//* palette-highlight:maths *// #ffb1b3
//* palette-stroke-highlight:maths *// #000000