Add field gesture and field images for the different gestures (#803)

This commit is contained in:
Sam El-Husseini 2018-05-24 17:09:08 -07:00 committed by GitHub
parent af766cedbc
commit c20efd5942
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
29 changed files with 185 additions and 3 deletions

View File

@ -1,10 +1,15 @@
/// <reference path="../node_modules/pxt-core/built/pxteditor.d.ts"/> /// <reference path="../node_modules/pxt-core/built/pxteditor.d.ts"/>
/// <reference path="../node_modules/pxt-core/built/pxtsim.d.ts"/> /// <reference path="../node_modules/pxt-core/built/pxtsim.d.ts"/>
import { FieldGestures } from "./field_gestures";
pxt.editor.initFieldExtensionsAsync = function (opts: pxt.editor.FieldExtensionOptions): Promise<pxt.editor.FieldExtensionResult> { pxt.editor.initFieldExtensionsAsync = function (opts: pxt.editor.FieldExtensionOptions): Promise<pxt.editor.FieldExtensionResult> {
pxt.debug('loading pxt-microbit field editors...') pxt.debug('loading pxt-microbit field editors...')
const res: pxt.editor.FieldExtensionResult = { const res: pxt.editor.FieldExtensionResult = {
fieldEditors: [] fieldEditors: [{
selector: "gestures",
editor: FieldGestures
}]
}; };
return Promise.resolve<pxt.editor.FieldExtensionResult>(res); return Promise.resolve<pxt.editor.FieldExtensionResult>(res);
} }

View File

@ -0,0 +1,33 @@
/// <reference path="../node_modules/pxt-core/localtypings/blockly.d.ts"/>
/// <reference path="../node_modules/pxt-core/built/pxtblocks.d.ts"/>
/// <reference path="../node_modules/pxt-core/built/pxtsim.d.ts"/>
export interface FieldGesturesOptions extends pxtblockly.FieldImagesOptions {
columns?: string;
width?: string;
}
export class FieldGestures extends pxtblockly.FieldImages implements Blockly.FieldCustom {
public isFieldCustom_ = true;
constructor(text: string, options: FieldGesturesOptions, validator?: Function) {
super(text, options, validator);
this.columns_ = parseInt(options.columns) || 4;
this.width_ = parseInt(options.width) || 350;
this.addLabel_ = true;
this.setText = Blockly.FieldDropdown.prototype.setText;
this.updateWidth = (Blockly.Field as any).prototype.updateWidth;
this.updateTextNode_ = Blockly.Field.prototype.updateTextNode_;
}
trimOptions_() {
}
protected buttonClick_ = function (e: any) {
let value = e.target.getAttribute('data-value');
this.setValue(value);
Blockly.DropDownDiv.hide();
};
}

11
libs/core/enums.d.ts vendored
View File

@ -69,56 +69,67 @@ declare namespace basic {
* Raised when shaken * Raised when shaken
*/ */
//% block=shake //% block=shake
//% jres=gestures.shake
Shake = 11, // MICROBIT_ACCELEROMETER_EVT_SHAKE Shake = 11, // MICROBIT_ACCELEROMETER_EVT_SHAKE
/** /**
* Raised when the logo is upward and the screen is vertical * Raised when the logo is upward and the screen is vertical
*/ */
//% block="logo up" //% block="logo up"
//% jres=gestures.tiltforward
LogoUp = 1, // MICROBIT_ACCELEROMETER_EVT_TILT_UP LogoUp = 1, // MICROBIT_ACCELEROMETER_EVT_TILT_UP
/** /**
* Raised when the logo is downward and the screen is vertical * Raised when the logo is downward and the screen is vertical
*/ */
//% block="logo down" //% block="logo down"
//% jres=gestures.tiltbackwards
LogoDown = 2, // MICROBIT_ACCELEROMETER_EVT_TILT_DOWN LogoDown = 2, // MICROBIT_ACCELEROMETER_EVT_TILT_DOWN
/** /**
* Raised when the screen is pointing down and the board is horizontal * Raised when the screen is pointing down and the board is horizontal
*/ */
//% block="screen up" //% block="screen up"
//% jres=gestures.frontsideup
ScreenUp = 5, // MICROBIT_ACCELEROMETER_EVT_FACE_UP ScreenUp = 5, // MICROBIT_ACCELEROMETER_EVT_FACE_UP
/** /**
* Raised when the screen is pointing up and the board is horizontal * Raised when the screen is pointing up and the board is horizontal
*/ */
//% block="screen down" //% block="screen down"
//% jres=gestures.backsideup
ScreenDown = 6, // MICROBIT_ACCELEROMETER_EVT_FACE_DOWN ScreenDown = 6, // MICROBIT_ACCELEROMETER_EVT_FACE_DOWN
/** /**
* Raised when the screen is pointing left * Raised when the screen is pointing left
*/ */
//% block="tilt left" //% block="tilt left"
//% jres=gestures.tiltleft
TiltLeft = 3, // MICROBIT_ACCELEROMETER_EVT_TILT_LEFT TiltLeft = 3, // MICROBIT_ACCELEROMETER_EVT_TILT_LEFT
/** /**
* Raised when the screen is pointing right * Raised when the screen is pointing right
*/ */
//% block="tilt right" //% block="tilt right"
//% jres=gestures.tiltright
TiltRight = 4, // MICROBIT_ACCELEROMETER_EVT_TILT_RIGHT TiltRight = 4, // MICROBIT_ACCELEROMETER_EVT_TILT_RIGHT
/** /**
* Raised when the board is falling! * Raised when the board is falling!
*/ */
//% block="free fall" //% block="free fall"
//% jres=gestures.freefall
FreeFall = 7, // MICROBIT_ACCELEROMETER_EVT_FREEFALL FreeFall = 7, // MICROBIT_ACCELEROMETER_EVT_FREEFALL
/** /**
* Raised when a 3G shock is detected * Raised when a 3G shock is detected
*/ */
//% block="3g" //% block="3g"
//% jres=gestures.impact3g
ThreeG = 8, // MICROBIT_ACCELEROMETER_EVT_3G ThreeG = 8, // MICROBIT_ACCELEROMETER_EVT_3G
/** /**
* Raised when a 6G shock is detected * Raised when a 6G shock is detected
*/ */
//% block="6g" //% block="6g"
//% jres=gestures.impact6g
SixG = 9, // MICROBIT_ACCELEROMETER_EVT_6G SixG = 9, // MICROBIT_ACCELEROMETER_EVT_6G
/** /**
* Raised when a 8G shock is detected * Raised when a 8G shock is detected
*/ */
//% block="8g" //% block="8g"
//% jres=gestures.impact8g
EightG = 10, // MICROBIT_ACCELEROMETER_EVT_8G EightG = 10, // MICROBIT_ACCELEROMETER_EVT_8G
} }

39
libs/core/gestures.jres Normal file
View File

@ -0,0 +1,39 @@
{
"*": {
"namespace": "gestures",
"dataEncoding": "base64"
},
"shake": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAEe0lEQVR4nO2a0XHjNhCGP2bybnZgpgLzKjBTwTkVRKkgSgXhVRC5Assd+CoIXUHkCkJXELmCzQMWIQSREgjSB4/CfwYDAlgSi5/A7gJkJiL8n/FdagVSYyEgtQKpsRCQWoHUWAhIrUBqLASkViA1FgJSKzA3MigzKELlL4qADFZAAzyF3nNRBCiugJsM6hDh7NJ2gxlsgZ+1+INAe1J+JgIqTMfXWn7BdLzTZK/fHRnk2t8V8ChmWQzLz0BAgRncFfCqnd8OyD5re4tZq/Z6VmSwBv7Q4sEsyKA4mBUiMjWtxWDr1RciUolIrW2tDKNRmVrvKabqhcheC1stV4jsENl7cpMJ2OoghpTOReRJB+kSs48gJh9BwEYLey0XjkA1JwE7HURfW+UMsHYIsPeslIgx2CsxGzGzr5cYREp/wIi0Wq5lJgJyVeqpp23jKV5FDjgUjXhE+ANGZKtlOxsnxwGl5juvbgf86snWwAPGWL4HbjkOgBrNK81bzQsrMJUA+2Db0Rr4C7jpkbWe4QXjDV4n9t0H3/u0mheaN5pbd833Ezu0M6DVhw+5P4CvGIJar77CKFjodUn8LHnzyg3wO86AfUwloNJObRwwhEe6gKTEBCtWwaZHPseQtT7zXB99z3LRAl/ciimBUAH8HSD3qrI5Zo36s8QGTw3HUWOJWVKh+IKzB9Bd4QpAhvYGZ6z8qXQXaJ1XKl87dad8v20veu47h//8e2iaYgSrQLnWk78HNmfuuXZktiN0Gr3fmGIDyvMivfDdo4tHzFJ4AD5rXRv43BdgP1aZKTPglMV3YYk699YB7hw56yaLwH6idpuxBPhv/yvwG+Yt+KjpDOCPmLfcJwfG4lurb4moAnWK226PNRqa7A5QxMT1tr4cME476d8slWKMaS3dhqmRznDmct5gWpQxY4m1Ae4MaJzrnH7cYFzmI90hiZv6zvByffZgEOMhagbExgE7DsPdXzAGaEO4wtAFUb7/v8P479Ag6JnwpXKAGAJy4J+YzmbCC8d7jXtM1DgaMUYw1v1NxRvwSfv/yWtrYh8aQ0AV29lE2KUCxzYj+sB1kIAMGk3+G081A0q6mKB26t+YcrBq3QEijaZSDo+KVp7reK8TnVDsvHLfaVTUXuBWk33Dz5oXjkzB+53ohMI3gJO+N7gE9A3YL/ttHwHNlJv7bIB7WAHp1nwoZpsBjeaV9+Cb7JCUoTg+BaJ2gC5cAvwBN07bnXNdYQKPZ47P4L41pn9vlM4L5L7lR+TJP0fvSbmYk5i1mG8BjXw7T7EOsfSn0kEonJkAYw9sBHb6w8GDNp/91OyhoDvptdehZwih+MTEWXB2L5AZQoI+NQeiYB5i3hjefYbj3BRBpHYqRh86jkiFHH5N9gMeH/Uc/QbtBjMz9a8xx1SlTLS8I2FD4JLOJW8Z8R/QKYQSUAF/avFeIreeHxFBu0ExLvEes+5mYf6jYNSByNHvJReAi/tLbCwu8T/BUVgISK1AaiwEpFYgNRYCUiuQGgsBqRVIjYWA1Aqkxr8PLUpMvtN12gAAAABJRU5ErkJggg=="
},
"freefall": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAADqElEQVR4nO2b4XWbMBSFP3r6P2wQOkGcCUonqDtB0wnqbuBO0GSCJhvYG5AJiiconaD2BK8/JGpZAVtIYJGEew7HRAi9x0W670kiiYjwmvEmtgOxMREQ24HYmAiI7YCJBMoEVme1OaYokIAACCTnsjmqHtCEBIoEloO1P/YeMHSvGH0PGBoTAbEMJyAJlLHs//cjlga4jvdJAwbGREBsB2JjIiC2A7ExERDR9hr441DvDngcyonRzwWGxqsfAm9jO2DhOzA7p8G+hkAO3AOX+u8NUKFy/dI4Hx36ICBDPdwFStQq4H1L3Ud9vQIK4zwa+iBgAfwAHoAbozzTR278XtKMaMT0QcA98Bl4R7PTqa6TsicjQy1+ruhGTAlsQx0+gIiEHqWIVC3Xcn1NRGSpyzLjnhsR2Uo3bEWkEJFbEVloG6mv/6EPn2qnVg3Xbi3Hc88HdkUhHkSEEpBr40ujbCbqDTc5ODSKBh+PHqGJUK5/C/27AH4BVw1168iwQY1tlzS4K9qiTytCE6E6aalQJBxzYI0iqLLKcw4jxgwVUn2w63pDaBQwFfmY02aInKEiAux7jo0URdbiRLs21sC8Q/0gDcgcx2UdIVJp1oFKly9FZC5KQ0w96QJTiwYXwbmjUze6/tJ66GOoRBFs33cK+RF/exfB3LFeZdW/A25P3HNp1Lnv4FPn+UaICPrO2r4eufaA0oWfwEddVjm2u8EjSwzpAa4hpybq1FsHJWB1vTpMZo52vGabvgTYb38NfEO9BRtLlKqvgA+ot9xUD5Ti16pfE5E7+uQ33e4qGvpYGMJTGuVtql0aooZVf66FbiUqGhSyF85UTgtmDTN6OB++GmD2gMI4T2nGFfAb9fbLhqPps5hUt902U7Th1QN8E6GSw3T3C0qAbnF3GFTm1rRqNEclTq5J0CPuQ+UAPgSkwF8fYz1hw9O5xh0qa+wMHxE866KlgR1wre1/sq4Vvo36EJD7GgtEPVTgqWZ4L7g+px4wY58TLI3yHQHrhz5RIPc1FogLVCSxNaAIabRrD8jwn6v3BVsAg/YbfAgYG4qQm1/C3uBZe0BBex4fA14zQBO+YbDes++8BtczgvcbfaLAlsOsK0WFqDpM1efnEMtgAob8QCLjcG8ww2PZ+gSuCSQhxhciGf0Qs6N99umMGB9IVOz3EUxkHBIzo3mDpYbLCtNJjOoboRbY2gJqobSXf615DgQMipeQCAVhIiC2A7ExERDbgdh49QT8A9YP5MUcc2wYAAAAAElFTkSuQmCC"
},
"frontsideup": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAADSUlEQVR4nO2a63XaQBCFP+Xkv9WB1QG4AquD0EFwBy6BElwC7oBUEFxBoAKLDnAFkx+jjVZCbyQNOeieswehx+7cuzOzDykQEe4Z36wNsMYsgLUB1pgFsDbAGqYCBLAJYGNqg9UwGMAS+JP+fRI4WNhh6QHbiuNJYSJA6vYL79TCKhQmD4EAIuCz4vLkoWDhAduaa29TGeEwqQABvALPNbc8p/dMBrNRACAAARAIrGy4+4nQd8vGLXve4e49wHoqLC4PWOHuPWDOAdYGWGPOAZaN3wLmHGBtgDXmHGDZ+C3g7nPAWAKE6Lp+DTym577Q3R5XEmA/UvutMcZ+wBIl9gC8k5GMgDj9ffTuP5GJkZAJNAmGFsCRByVbR+QV3QjdoaIsUdEcjuQFcV4zKIYUoIl8mJ5fpeUBeCHbI1yhIXNOy5q8IA4fqBAJmdckfY0eSoAq8hFKLAZ+FJ75hfb+qnDtRD5E2sDPL4l3fG56cAgBiuRDMtKL0iemgxNm75UcrhXAT3hHtMfL3LZo1I7MfR2itD5Xmurpg4th9xoBfPJt8IUmvi35EQHyrusQkokRoV7VNTSK7YcXZ0WkT1mKyFna4yAiYVq2Le7dichGRFYiEnntvnZo08dZ1OYLLlOQT0SJIyJ77/y68L8OK6/9Q4e2RWrISw8Bysg3ibHxnm+LveR729URtmivaFsleekoQJH8oVB5Vc/svHtW6f+kheEOiWRh0BQ+xTpqyUsHAcp6PvauN8XmTvJu7EosGgpvor1eJL4R7fVI2oeLSEvyItJqFKjL9h90H7JOXE5vq6bMS3Tk+Nmh/i+ap+H/0CRA16HuGhzJz9z6zAU6kYd6AaYk3xZuZgflr9mf6LiSrNoPCNHZ2i2Rf0cXSA5n8va90GMZXbYlFqI9f82sawy4r0eWXHaOv6rshLIQiIHffSozQm/yUO4BBzS7/w+4ijw0jwIxuhCJ0uOxVml9cDV56LcaLK7Sxly+VmEQ8jDsllhEfpkbUf9FWF8MRh6m+UosIr/REdF/p2hQ8mD7mZwfQjGX2+U+TugcYD+0EabfCVYgJgsh0DF/tPcEtyjApLj7l6OzANYGWGMWwNoAa8wCWBtgjVkAawOs8ReItTjrXj7vnAAAAABJRU5ErkJggg=="
},
"backsideup": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAACbUlEQVR4nO2a75GbMBDFf2TyPXRwdHCkgqOEdJCkg5TgElyCS0gJTgVxKojdwV0Fmw9CA7H5Zwx6HOjNMCNAg/Y97a6EpMTM2DI+qA1QIwqgNkCNKIDaADWkAiSwS2AntUE1DCaQA7/L288GJ4UdSg84tJSDQiJA6fbPtUfPqlAIHgIJZMDfltfBQ0HhAYeOd/tQRngEFSCBH8BLR5WXsk4wyEYBgAQMwCBR2bD5idBHZePKnvfYvAeop8Lm84AKm/eAmAPUBqgRc4Cy8SUg5gC1AWrEHKBsfAnYfA6YS4AU91//DXgqn73hVnv8dQaOM7U/GHOsB+Q4Yp8G1r9QiXGmEigIphbgXvJd+MP/gvjypJhSgCnJX+MN+MJtyKTldR774alGgbnJFzSTP+JWmA34OerrZvbolZvZq82HfUObqZmdanVeSzua7EvNbGdmRdP7R0Ngzp6v40KVCzJcOPg2vYc05QfvJX4T5nbY7eldZc8PQVfPY2aHq7o3dcbmgFA934c97SPDAfhalr2X3GBMCCyFvEd9gnXGhUhB5fZdIXK3AEsj34dO8nDfMLg68jBcgFWSh2ECrJY89AuwavLQLcDqyUO7ACluHH0v5MGtP9z9t9gkwPX08T3gOyMPWjUJkLMR8tAswAn4NfaDgfEQeeifCRa4qWVWlnOWkxceJg/j/gVSnBA5ThhfDinMJORh2iWxjMpTfLnrRNhYTEYewpwSy6i8xHvN2CQ7KXnQHpOrh1BRlp9a6l5wewzHqY2QnhNsQUEVQuAWO2fbJ1iiAEGx+c3RKIDaADWiAGoD1IgCqA1QIwqgNkCNf+aBYPgHiIEjAAAAAElFTkSuQmCC"
},
"impact3g": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAEWklEQVR4nO2a/5XiNhDHP87L/0sqWKeCdQdxB6GDkArCVXCkA0rwdcBWcN4Kju3A2wFUMPljpEMI/5AtEXMc3/f8hKVhNJoZjWYEmYjwM+OXuQWYGw8FzC3A3HgoYG4B5sZDAXMLMDceCphbgGsig0UGVR/Nr/+TLHOhAhZ9BHfrARksgT+H6O5SARnkDLi+xV0qAF38Uwjh3SkggzXwRyj9XSkggwLYjPnOXSmAEa5vcdMKyGCZwSqQdgO8tAzlvV8UkZt9ECnMS41I0UNX9jHqmyO79SuxDFwB/wW2AgdnfAHsgecuHgJZ5wRzWznAC2qvs0GkdMa3Q0z6hm86BhjsTXs07TPwNYOdyfb+8ehfR3Gf28IBHrA0L4Wxft8XGkQWd+kBom0BvHfQHYGlGx9CkEoBOVCjAetgPm/RrKxkoCLrg0CDcX+zuJJ2N1/L5XYJmCCNq+7V06QRkVpEDnKJgxnbishanEAWsA12LX2V07H1xs4CZx/vFPcBBZqAvKJByWJhxuxTmtbP0z9QK9emtZ9dVP6kAqtMaUtRT5uGBNZfGQt3WXRprL8077mIVKJWrVs8xcJ608bMMcZj/KOzL4mKVsDWCLzw+hfOmJiFL8zCxYy1bZUhuIpZGr7+ovzc4IBuu6soYG8et68wglocRC3o9qXEylvUpkPYHZ6hUihARF3avm9aBJxi6TFofLnQ+qBqEfiAs51ia4ES+Ap8AnbmaavIQI+mCj2qcs6D5KgStgOt+X6mMu68OY5o8NzHngKFaXN0YV0LeUXL2q4kxT8xlj282vDhd5giaQ18Nl1HjJFEW6WL9IAdwzev76gVQGt2q7SGy+PPIqffm3x8wbk3MFavHBl3cnm0Ki63yKgnJKjZ468OoLXR3Z4iobHje4RHZG1Ogc6jz31iFr8IFM6nLQMWZpWwHaBzeU5aR0wtUI6gdWuBivb9/YZeeLi8dy10bahHyHKGGAUUwyTf6Rp0gdB9c2ODn4uQIuptmKQbqTzgiFqvrVTdmHaJBquucvaJU9CrTLsKkGM/TNKNmFPgwMmVfzPvBfCthfYsShsUaLS3R5+1dmWeLl4+/ibwZ7A2TFWAK9yRk/B9Qn+ge7pBrVYP8K8JywV+5/wIHYWpiZC7/584ZYGbnu88c3l/55bCNkkqgL8C5TgSsXiY7gFbLhdzbbyhnvbi9ZUxTKcGwahJJ+ALpwsVN+rXsYynKiA0RU0FNx9w64k6lvGUGFDGTjoBG04Xom7tEXUEwjQFhCZAKfGClt0uPhh5Bd6GKVugjJ00EeoUTKYoYPIdf2JEuz9MU0CdYuIESKKAmDxgRZqrrKno/sl7DJOIWgA0l8/RuGA/B/9BKQLRCZBF7J1gQ/svOTnXVUwS94fr/VW2oVsx7uVnzrSkKpkCbuUvMn5pnNOtmHcS5iK3ooAuuIoBTXwqEiRAFreugKvjR/iHyFXxUMDcAsyNhwLmFmBuPBQwtwBz4z9jSdC1TZEC4AAAAABJRU5ErkJggg=="
},
"impact6g": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAEjElEQVR4nO2a0ZGkNhCGP1x+XxzBkcGNI7AcgdcR3GRgQsAReJwBm8FkYDYDLgKzEdxMBO0HtQotIwZGaI6hvH8VBUhNq/UjtboRmYjwf8YPaxuwNj4IWNuAtfFBwNoGrI3NEZBBmVLf5ggAygx2qZRtigDt+CfApNK5KQKAvZ5NKoXZliLBDE7AE3AWyFPo3MwIyOAZ23mAp1R+YDMEYAnwYVIo3TIBw/sobIKAzDq/p0HxLyl0b4IARt52lmAaPDwBmfX2v41Um6X6VyMggyKbt5Rdm+tmqR1rjoAc+JZBPTGU91fqZvuBDEwwjxCR1Q5EGq+gQ2SPSO7VF4OHuoAiE9BrECkRqRFpvcpDQHZVAkyg4qSG77QTft1e6/2yWssPg86G9OYBG9YjQA3otBPHCeFO5afkxo4qVPwIq0AF5GKd3a/A24hcrecmoo03se1cYu0RoG+18a5zRKqx4YudGrc28nyl7SSdyEWklh6N3ldindTF3BsYUTGQwTpA5yQPg7qhHzjp1Cix/sCva661nSodroEvwBlogQL74cKHq2uBzrs+uXhAbLr7DpoFtmKfcWUH7DON1rVenbPF4We//kJ/IgIEO3d39J3I9d4dLqAZxvSjxNxqRGaJ/9crepHrcUSSKWB02Jcj9TsRaaX3wrleu2kyhpPKHERkL4H1PjCVDiG/MfHMYgJKNThkYOV1yNUf9L4Wu7Tdik6JqZSYndcZP1D6bgS4t+iXFWqkDyN2JNwDpXZmx3sH2UzZn4IA90bc/V7s8B0iVJYS/jLpk3AR/vrHj7c6mgFyrLc/6nXNeOoK8IL13IXeG8IrRgx2QCPQqjNsgM/AH5ldKergU9fYmXEYZb+eeMOt2GkxpasU+8ZiRstwaOf0ucEJz1cM5BYRUM0w7CS9M6rETpdGRI56/yyXxg0Dqym0I53L6XOHjjskQ80M4yqVPUwJSr9cOkPnOs1QmltgI0x/ZTgG5BYRMGeomoHs84yO1dI71DnYex3KsSHxUQnYY9Pu4JK4pPPFTOMcAQ7diFw36PAtbQTn95xjSTpsZsoVen7R85jH/0Qftp71POeboQulo7CEAH9r6gz8DXwNyJXe+U/g9YpO942v1vOczY/ozgOLpoDvAN0wz0eGeC2Xc7DQ5yqxzqmRPsR1uub4GCcfdSzJBv0Hf6LP3sYUnrEBU8t0xleo7OcZdvyuslGIJcAA/3j3r9hhWzLPaIdhKnxS3f5O8BR88m9GLAEl8Fdso5H4iu2ovxfwRu9koxDrBJP9ozMTr9qmoV9NYKkDJJ4As7ThG9F4191IeRRiskGXAX5PlPTfGv3trcUjIMYHGN47wDWRLVUQMwXM0kYTIRR03YxH2BmKRZNCSQwBXYqGE2Dx/Ic4AmpsTH+ekLs3khCwdGPE3/wovOu5UVwsziT6UfJef4o6YgyWmIJEf3UpXknkjJd+FR7DCeukmkF5oYdhGTFDvdF4lH+FC+YTc9b66ATIx6MQMIaCnhiHA4k6D49PwN2x5UAoCT4IWNuAtfFBwNoGrI0PAtY2YG38B6VuuBeejFXUAAAAAElFTkSuQmCC"
},
"impact8g": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAFVUlEQVR4nO2a7XHjNhCGH2Tuv5kKzFQgXgXHVHDq4HQVxCUoHSgVRK4gcgWhK4hUwUkVhK5g8wOABYMACRHUUTfxO4ORjY8F8AJY7C6hRIT/CxSUAkc376eZxhKFgkJBcwW5W2Dl598cAUANfFKwnEKYIXQPfAF2fvmtEgCwVVDkCFJQobf8AjiJJuINbpmAO/S2HQWlt/s/Rg7EjpWI3ExCpAgU1CPkbAMFy0jd+SfuDGYZKDgiUiS2LxHZhwpjbW7tCNSBvHtgPdRQ6bZ79Hn38RRtOPeqeysYXD2Tqp52DwPCVz1t55+4s337Ku0DbQrC591P5Y9wBOqB8oVyjoKCEq3Zvwy0O/jWn4sfiQCABwXlwHn30TF+XCiR2/AFlF6l+4Sqp8R6Fh9DBtBrv7dAgNnO37zsF85GzFicRMuO4kNmB70wE+sdgEEVyFsBGy5bbR+92x+uTAB68n+PaHcS2Blf4M+M/pvBGt/heku5pvz04LQ/juy8TRzf1QkoEGlNxhKRNSLNQMPCaV/3TbJH1i5lfFe/BgVazvd3IbAWqAUU8BH4CvwBHEydR9PGtm+A54DoA2HdYTF4/nUHV94BzkruEWkS6pWBvMqruLW7JGUXzXoEAlu5M8HE9laXrBKOR8dsnp0AZxKbkW1LPIcIrU9CDVrTVzAGMCcBxSWrkyBvSJkK+hbZENl5390SNKGqVlKVVL+sSwd/QBtXO6top7oFSrS2FrTgxnT0gHZcXoObkhHnc6H6b4AYFmjD6l8bdZ5qB1jP7IR2aiq6dvyLqbc3dfZMEP83nqFNnxKbPcmEBFTo6OsTb2P5hSmzqTZ5PjGWtMb82r9HwaxsbVLIXT6g7RBta0ygjFaiUUfKl6LNUquRSxHZirbUGonjaMrXpo+Y/JiC3AQK9nj2wRQEbMyAfcOjcMrETLwwExdT1vYQkELMUsKGU8g+aEM3wRQE7KV7tVVmoBat6BV086bEyplQQdeBaokEVacgQERvafv/OjDAMSt9CY5ynlBo60cjyrnxgNr87tFX4S6ieO7Qt8DWqesqydzIjxs0WXllh76QWC4B9i4u0Z3EJvJkBtZGyv0bY9kjK4ST83eJvkXsQiyU9kDXwZaxrZGYrELrw1608rNKsTFpK/q41NJVTqVplwr3CL6a3CnHIJeAFKVmr78moW4jmhREE5aqO14jSBInIfiNMWfyReLg/Lp1wsQsCZuBeq7M4Dh5G5LrRIlyfIH6grruQ4ct4fP9DPzuyU51mJqesh1aAQN8Vp6SzCEg1RmxrzRsWCsW5rbKz0XKC5FOuEzBUukXJi3wF2fCn/0+ptoBL+jVOwTqrc3vEniM1AE9SKu5t+Z3lTCO1ytOQa20F1qZ/CXwq4AyqRaPgBxnqOXM7M/mf+sY+XikO5kKfWXZq8+u9takmCwfX8l5SjOSAHdwL5wH3zfoE/o8Hhl2hStTnmIL/ELP198hjDWE3PN/h57Yjv6XHPfAb16e6wpbI6li+JO3xQsZk4fxO2BDdzLXxjN6py28vDpH6FglmNXpCDyaPiveav0mV/BYAlIeJkwJ1x5w/YkmV/AYHVDndjoCa/TEa+Czkx/18lIxhoAx0dhcLOh+Zj8R9y6TMeYI1LmdToRmCiFjCMh6wDwhsrc/jCOgmaLjCTAJATl2wIr8UFYO1CRCMnwBOD+Cqp2/U7/O5CDbALLIjQkeCX/JKbkuMZNsf7jeK7EjcWLc4GfJOKNqMgJu4qEkXde4JE7M0Nugi3ArBMTgEgPa8NkygQFkcesEXB239Fp8FrwTMPcA5sY7AXMPYG68EzD3AObGf4L8LJx8Ylq2AAAAAElFTkSuQmCC"
},
"tiltleft": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAD5ElEQVR4nO1b7XWbMBS99PR/2CBM0HiDsEG9QckG3qDqBu4EpRt4g+AN6AZ4AzLB7Q89HTA1BiEJuYnvORwsIYn3rt6HJJKEJD4yPsUWIDbuBMQWIDbuBIQcPAFUAlQJsJFyKeVtyPdagaS3C2QOsgK5lXIrDwspc1BuQB5AbnzKYXN99sxnCeARQAPgIOVUygDwQ+7GKh7lKgHUCbAhUHuW6To8zPoO5EF+FyBrYwET/VJpb/pu5aFa0wJcOxe9ikmlJ8aqpFCDTP8XAlIRuHIVWsYqIfEAEidukgCQKuRMCREEuQ9NgHUalOD1HcATAOU7Jg2wCTz+YgvYBbaAdC0XSMj5u8EEyAGAQBVoPlaHrQsoAK8JsA8gSxTMJiDRCxrjk1UQaSLAygUA7QbvyQVmL4UToIBe0jaBZIkCmxhQAHiV+5pIoYNvkJQ46gLi84de1bPcT+isYM/zNj6RA9gB+NqrO0JvpVtvb5mx4htrUAfKzTnJiuOo6XH7PKdBPfLQ9x6+INlcUbyPlo6bLxsC8gsPlCelU0vFh3CWY26jfa+igfsSOBXh24WK93GggzxzG6WiOKF9dKniGfUOz4fifSyOCzYNcyzfnmYkywklKjcOlsUFFzOec+XUJjomsKImp9+n4HULqaTf2Li7WyAgZzejQ0EbUfILtVU0Ul/3yNjPVG6MqJIz44Lv7wIF9CJJoVss5XI/AXiBXsjkAP7Ib7OQesL09wIzZgZ9kvww0u4b9H4lm5TYw2ynMjNmJgvqgGRmpxKL6FuFQdvr14oFpFdm1hYtJ4K2q+JKXlKK4qQ235pdULqk+BAVNWmZ9PWNgp4J2LFTPOP5jFN+b9j58phSB3YzZMYMhYsZYqny7Ame8l8FjcmTWqlhIDTEGStqGB6KnghoeW5SQ+XNJqkY1LfUFpHJZdxnLVx0gyXfBh8kAkPuT4Pnbe9ZKlfbKyuJ0mviJzqZz3GJlYmLcldX2B7625bTK0Hf6MeoUX2szwQBEDqf/5poZw5Onifa+cYb9Kn1HjMOTpYScIs4QStdwuLEyPffB8TACTqulEs62xKQXqg7yn1tUz9Cz7jTmaQtAcOT2Rd0zK/lGkfoGa98DObiAr/RKa+cJZn3PgXP3yVcCDDn9QXC5fU3aBNXCPRBxjYL5NAfR0LDKpW54NaywKJU5oJbIcAplbkgNgFeUpkLbAnIPb3XaypzwdoWECSVuWANAoKnMheEJGC1VOaCEASsnspc4JOAaKnMBbYENBfqoqcyF9gSUELvAbbQf9d/wA2kMhcsORF6V7j/01RsAWLjTkBsAWLjTkBsAWLjwxPwF0Pxx3Dj8Xp5AAAAAElFTkSuQmCC"
},
"tiltright": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAEIElEQVR4nO2a77WbRhDFf+Tk+6MD4wqsDowriFKBeRVE7oB0oFRg3IHSAelAr4KQDpQKbj7M7gHLgFj+CEnRPYejB+wuM5fZubPLiyTxf8ZPaxuwNp4ErG3A2ngSsLYBHhEUEZQRZO58765lSz53NQIiyCOoIti5Swnw0f0CbIDP/twRso/q+/NA0lUPpMT9lu5i6c4zpBwpbZwfkFKkuDFIPrM913Mc6YhUOYdSpAJpM6BvjLRv9PVjXex7SwRsGxeyiWP56DnhIupmCUDaUIf1bqrzbpzUOT/HWIs6H2NhK6TtQs/I3DOSMf2XVoENELu/Tws9Yw+8Aw6jel9hCsRLvf1GBJSMTIiR9DirwQgyQRHS5+eFbLk6IptiLxEQQsLNlMIz4Oh+NyGdHmYK+BJZUIX0e5gIcI4nEWQh64WHIcChAL4C26EdliBgiyUkuaNkwSVtYxldUtccO38tgrx3gJl1OZd00veavJWt+CrNULq21AFpT4OLa4W5DImdk0d1PzBtEJG7PnORsO+4ubtGIbTBytB3wBv9JW+JJagUC9e9OyaVyZGNdXQ2eLxpiCROZD9zIR8CP0USSYU7L3oiZ+xUGFQaT3G+CHS8SUCpesrojIjRmxzYDpII2DUaMwUSLOQ/BPb7F5MpH+4JphgvLW3/wrJ3GfIANxUOsik2DIEsp/ox5DN3L5F06HnrPultZMlp6/pkssTYhlILKMdZ1AxunHcYmZ61a8sJhWqS2u6lztGy4xnVUkQMaRSr+802nch72lUtBOSqc4Cc86lquewaJ9e8EtrbYHNm5BT4KMgutDu6Nht1E3HSTET03cwULnGXcHBGp7qsIpWMhEuEFZogoV030jC/gtB8e4naichlBPia4RIJcuMER0TXjXyUa2E4SdrLSEhUryPOkTubuqZDE0cFEtC1GgzS35F4AX4D/sY0v8Bqg9+Bfxrt/E7PEJs+EFID0L0cLoFXrHi5Bj5jRBTU64XIHX67O2irayguVYIx9vV2R3vFthTeMMdLZ0MG/DKw7yshO8MD50qs/ortluBzxqQccI4T9Rx95fs5etcYsyVWYER8whYtd40pe4IllnE/AX/OYUwAvgC/MsMLmGNTtMSWte+BbzOMNwRHLEmmWMIcjTl3hSssW78H/mBZCT1Q7/3vetpdxBLb4hVmVIIVNUsQ8YLVDSVjP4s7LPlh5IRVeAnLKcdHJtYn1/gydNMSeu1PYwU3JqFrfRssqSX0WsrRirU/jpbUyrEKEWsT4FFREzFVOZKQxrdCgEdFrRxjiUhCGt8aAR5eQmMWVo5bJaCJglpCJ5W9bbgHAjwKbFdoVgm9JwI8SvolNKg0foT/EkswBUmwVeI+pPMjEDAJ9zgFZsWTgLUNWBtPAtY2YG08CVjbgLXxH2loFxEWi9ZNAAAAAElFTkSuQmCC"
},
"tiltbackwards": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAACyUlEQVR4nO2Z7W3bMBCGXxX9H21gbVBngmgEb1BlgqIb2BtkgzobpBNUmaDyBHE2kCe4/iAJEQo/JRKX2nwAQbJM8o6vT8czVRERbpkv3A5wUwTgdoCbIgC3A9wUAbgd4KYIwO0AN0UAbge4KQJwO8BNEYDbAW6+BrZr5PFZGACMKQYKEaAD8CuFsYRcALQQQqyi8uwINQDe1hrJxDsSRKUvB6w2kJFNikFuPglerQAVQBXg3fG9WgFCCV0G/zsIqELa3XwEXK0AJQcEskSAVwCn1I54OMXaJKAKyQOxAjxClKBbAL8j+y7lWdrbyuukxApw1K5X1+ELbB4tbT4QmgNil8FOOlED2HnanhD2j62Bu6ztAPTadVqIyHW09JGeiM6G+4oXImo845rsDI4xB8v3MTaMh+/fYAvgT4SePwE8yesa4rn10WvtewDfIuwFFTtOFkSAjV7r9xTRbySiTvar5edQrL6rC1cbIkpaB6hffgfgR0S/O4gNlwYiZ7wk9MlLSgHO8txp93zL1qt2rZJqn8KZXHWAi3F2fgewl2cT6vs59RLjFdCopc9xNPN+KQVo5fkozxuI7TTbErfBlGAvmELflziNVSGJCDw4+h1oilKtY54kuI/oNxLRjsKS4CDb9PKzKfkNhokMpraUYRk8YArr1MvgSfozynYPMDzjlbD5d3b7nmyVq00Zio8ARa5CqNbaWyNARsFeu7F32U4dATpLSuELxLI4H6edjdXDEgGKSj7v5NnZzrklFlPRAdPLDj18TZMPpQtp9Fn2BE1vetZMHhRYT3DuCKnlbMnkG3kOSbJOfAIkeQFpQE3wjLjJbyHqhQ2EcNnfDQKisPm+1lAGHhGxQWIjRABAJJQdFpapiTlDTLxPMVioAFdL2RbndoCbIgC3A9wUAbgd4KYIwO0AN0UAbge4KQJwO8BNEYDbAW5uXoB/c4v7pl/dd2gAAAAASUVORK5CYII="
},
"tiltforward": {
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsSAAALEgHS3X78AAAC2klEQVR4nO2Y3ZHaMBRGjzN5hw5CB0sqiNMBqSCUQDogHZAKQjqgg7AVLFtB2ApiKrh5kDxoja0fY+9liM6MByMk67ufpCuZQkT4n3mnLUCbbIC2AG2yAdoCtMkGaAvQJhugLUCbbIC2AG2yAdoCtMkGaAvQJmTAFNgDckPXEZhfFbVDEfhDZA98svePnnpz4NBRNgcmPfV1cQJmQHX1k0TEd9XMPXWWto5bthWRvfPbGJQB7VFXjAF7z+9ugG7wIiLVsPFeMIgB1yTBJfCzUbYFvtr7oaf9KPQ1YIk/eHUKKAsoQ/Xe93j2ksvg4Rz8I7DjMim2McOIHMO4rdNHN4E1IvI6B/iSWiUii55rcS7pOaMzByCydgrWvr5D26BgRrSke+RrvmBGHlt3gTlH+NhhRqrCbJd74nPHZ1v/FYV5zlOj+KN0zcjIGRDaztxZsg3UbXIQkaltu0lo1zoDEDm0BHJoqyuR22DM1FzZ+gunbB9o4xpVty8j+qq5MKAx9ZtX61KIMSBFzLpRduyofxSRmfN7PYOmPfqsA5lHJJuLA12fXaCNev266+y3p/4H4I/zvW7X+4xv13iR2m6ot8GF/dwBz4ltT8DG3pcD6aEAKUwS99eT8C4QS52Vp8CKuGCOwNp+zjCjeNUuUFMHL6FZEVg2KVTNdZlwzcRk6hT69tU7B5ww+zuYvbs5UhPMuv+FWQqxr6oL+9yukf+GmRkb4CFWbDQBh1zcU95C3oaN02dzh/DOACcAb4wpSbDquB+T0ftMMWCDSXBTzll7bFact8ZtSkOBIpgASXsbfAD+pogYgAmX5/pBudt/hWPPAXdrQCxDHYVvjpj1D3kG3K8BOQdEknPA2EJunZABP95ERTrPeF6FUwgZsAK+Ay9DdDYAL5i3zXKoB4b+ELl7cg7QFqBNNkBbgDbZAG0B2mQDtAVokw3QFqBNNkBbgDbZAG0B2mQDtAVo8w/leGQvtJ6OAwAAAABJRU5ErkJggg=="
}
}

View File

@ -59,56 +59,67 @@ enum class Gesture {
* Raised when shaken * Raised when shaken
*/ */
//% block=shake //% block=shake
//% jres=gestures.shake
Shake = MICROBIT_ACCELEROMETER_EVT_SHAKE, Shake = MICROBIT_ACCELEROMETER_EVT_SHAKE,
/** /**
* Raised when the logo is upward and the screen is vertical * Raised when the logo is upward and the screen is vertical
*/ */
//% block="logo up" //% block="logo up"
//% jres=gestures.tiltforward
LogoUp = MICROBIT_ACCELEROMETER_EVT_TILT_UP, LogoUp = MICROBIT_ACCELEROMETER_EVT_TILT_UP,
/** /**
* Raised when the logo is downward and the screen is vertical * Raised when the logo is downward and the screen is vertical
*/ */
//% block="logo down" //% block="logo down"
//% jres=gestures.tiltbackwards
LogoDown = MICROBIT_ACCELEROMETER_EVT_TILT_DOWN, LogoDown = MICROBIT_ACCELEROMETER_EVT_TILT_DOWN,
/** /**
* Raised when the screen is pointing down and the board is horizontal * Raised when the screen is pointing down and the board is horizontal
*/ */
//% block="screen up" //% block="screen up"
//% jres=gestures.frontsideup
ScreenUp = MICROBIT_ACCELEROMETER_EVT_FACE_UP, ScreenUp = MICROBIT_ACCELEROMETER_EVT_FACE_UP,
/** /**
* Raised when the screen is pointing up and the board is horizontal * Raised when the screen is pointing up and the board is horizontal
*/ */
//% block="screen down" //% block="screen down"
//% jres=gestures.backsideup
ScreenDown = MICROBIT_ACCELEROMETER_EVT_FACE_DOWN, ScreenDown = MICROBIT_ACCELEROMETER_EVT_FACE_DOWN,
/** /**
* Raised when the screen is pointing left * Raised when the screen is pointing left
*/ */
//% block="tilt left" //% block="tilt left"
//% jres=gestures.tiltleft
TiltLeft = MICROBIT_ACCELEROMETER_EVT_TILT_LEFT, TiltLeft = MICROBIT_ACCELEROMETER_EVT_TILT_LEFT,
/** /**
* Raised when the screen is pointing right * Raised when the screen is pointing right
*/ */
//% block="tilt right" //% block="tilt right"
//% jres=gestures.tiltright
TiltRight = MICROBIT_ACCELEROMETER_EVT_TILT_RIGHT, TiltRight = MICROBIT_ACCELEROMETER_EVT_TILT_RIGHT,
/** /**
* Raised when the board is falling! * Raised when the board is falling!
*/ */
//% block="free fall" //% block="free fall"
//% jres=gestures.freefall
FreeFall = MICROBIT_ACCELEROMETER_EVT_FREEFALL, FreeFall = MICROBIT_ACCELEROMETER_EVT_FREEFALL,
/** /**
* Raised when a 3G shock is detected * Raised when a 3G shock is detected
*/ */
//% block="3g" //% block="3g"
//% jres=gestures.impact3g
ThreeG = MICROBIT_ACCELEROMETER_EVT_3G, ThreeG = MICROBIT_ACCELEROMETER_EVT_3G,
/** /**
* Raised when a 6G shock is detected * Raised when a 6G shock is detected
*/ */
//% block="6g" //% block="6g"
//% jres=gestures.impact6g
SixG = MICROBIT_ACCELEROMETER_EVT_6G, SixG = MICROBIT_ACCELEROMETER_EVT_6G,
/** /**
* Raised when a 8G shock is detected * Raised when a 8G shock is detected
*/ */
//% block="8g" //% block="8g"
//% jres=gestures.impact8g
EightG = MICROBIT_ACCELEROMETER_EVT_8G EightG = MICROBIT_ACCELEROMETER_EVT_8G
}; };
@ -169,7 +180,7 @@ namespace input {
//% help=input/on-gesture weight=84 blockGap=8 //% help=input/on-gesture weight=84 blockGap=8
//% blockId=device_gesture_event block="on |%NAME" //% blockId=device_gesture_event block="on |%NAME"
//% parts="accelerometer" //% parts="accelerometer"
//% NAME.fieldEditor="gridpicker" NAME.fieldOptions.columns=4 //% NAME.fieldEditor="gestures" NAME.fieldOptions.columns=4
void onGesture(Gesture gesture, Action body) { void onGesture(Gesture gesture, Action body) {
int gi = (int)gesture; int gi = (int)gesture;
if (gi == MICROBIT_ACCELEROMETER_EVT_3G && uBit.accelerometer.getRange() < 3) if (gi == MICROBIT_ACCELEROMETER_EVT_3G && uBit.accelerometer.getRange() < 3)

Binary file not shown.

After

Width:  |  Height:  |  Size: 699 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1014 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 919 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 791 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 808 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -21,6 +21,7 @@
"icons.jres", "icons.jres",
"input.cpp", "input.cpp",
"input.ts", "input.ts",
"gestures.jres",
"control.ts", "control.ts",
"control.cpp", "control.cpp",
"game.ts", "game.ts",

View File

@ -233,7 +233,7 @@ declare namespace input {
//% help=input/on-gesture weight=84 blockGap=8 //% help=input/on-gesture weight=84 blockGap=8
//% blockId=device_gesture_event block="on |%NAME" //% blockId=device_gesture_event block="on |%NAME"
//% parts="accelerometer" //% parts="accelerometer"
//% NAME.fieldEditor="gridpicker" NAME.fieldOptions.columns=4 shim=input::onGesture //% NAME.fieldEditor="gestures" NAME.fieldOptions.columns=4 shim=input::onGesture
function onGesture(gesture: Gesture, body: () => void): void; function onGesture(gesture: Gesture, body: () => void): void;
/** /**

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>BackSideUp</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M58.382,36.052,42.736,51.832A6.19,6.19,0,0,1,37.85,53.3l-31.5-5.436c-1.618-.28-2.055-1.389-.975-2.478L21.02,29.6a6.2,6.2,0,0,1,4.886-1.467l16.632,2.871-.149-.026-2.2,2.219c-.405.408-.241.825.366.929l3.3.569a2.321,2.321,0,0,0,1.833-.55l2.2-2.219,2.93.506-3.667,3.7c-.405.409-.241.825.366.93l4.4.758a2.318,2.318,0,0,0,1.832-.55l3.667-3.7C59.026,33.853,59.462,34.963,58.382,36.052Z" fill="#fff"/><path d="M31,21h2v2H31Zm0,6h2V25H31Zm0-8h2V17H31ZM32.018,6.037,27.438,13H31v2h2V13h3.562Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 650 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>FreeFall</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M49.65,28.084l-29.547-5a3,3,0,0,0-3.358,2.378l-4.876,22.75a2.7,2.7,0,0,0,2.139,3.309l29.547,5a3,3,0,0,0,3.358-2.378l4.876-22.75A2.7,2.7,0,0,0,49.65,28.084ZM17.967,26.408a2.253,2.253,0,0,1,2.519-1.784l6.262,1.059,4.2.711,2.1.355-2.564,1.8.463-2.159-5.132,3.635.932-4.346L16.6,32.806ZM20.11,39.663l-.3,1.422a1.126,1.126,0,0,1-1.259.892l-1.375-.233a1.014,1.014,0,0,1-.8-1.241l.3-1.421a1.125,1.125,0,0,1,1.259-.892l1.374.232A1.013,1.013,0,0,1,20.11,39.663Zm20.321-.448a5.177,5.177,0,0,1-5.369,2.609l-7.074-1.2a4.648,4.648,0,0,1-3.916-4.179,5.309,5.309,0,0,1,5.978-5.786l7.216,1.221C40.414,32.415,42.19,35.976,40.431,39.215Zm5.791,4.865-.3,1.422a1.126,1.126,0,0,1-1.259.892l-1.375-.233a1.013,1.013,0,0,1-.8-1.24l.3-1.422a1.126,1.126,0,0,1,1.259-.892l1.374.232A1.015,1.015,0,0,1,46.222,44.08Z" fill="#fff"/><path d="M36.493,33.962l-6.584-1.114a3.093,3.093,0,0,0-3.435,2.094,2.724,2.724,0,0,0,2.072,3.569l6.872,1.163a3.016,3.016,0,0,0,3.4-2.643A2.776,2.776,0,0,0,36.493,33.962Zm-6.44,1.581a1.047,1.047,0,0,1-1.168.829.942.942,0,0,1-.744-1.153,1.045,1.045,0,0,1,1.169-.826A.94.94,0,0,1,30.053,35.543Zm7.021,1.188a1.044,1.044,0,0,1-1.168.828.941.941,0,0,1-.743-1.152,1.044,1.044,0,0,1,1.167-.827A.939.939,0,0,1,37.074,36.731Z" fill="#fff"/><path d="M30,11.072l2,.338v8.423l-2-.394Zm5,11.134,2,.394V5.548L35,5.21ZM40,7.341V19.313l2,.394V7.68Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>FrontSideUp</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M39.788,36.886l-7.019-1.212a6.535,6.535,0,0,0-4.847,1.26C26.607,38.076,27,39.3,28.7,39.592l7.327,1.265a6.067,6.067,0,0,0,5.053-1.651C41.972,38.148,41.331,37.152,39.788,36.886Zm-8.048.7a2.157,2.157,0,0,1-1.7.511c-.563-.1-.715-.484-.339-.863a2.15,2.15,0,0,1,1.7-.509C31.962,36.825,32.115,37.211,31.74,37.59Zm7.485,1.291a2.152,2.152,0,0,1-1.7.511c-.562-.1-.712-.483-.337-.862a2.149,2.149,0,0,1,1.7-.51C39.451,38.117,39.6,38.5,39.225,38.881Z" fill="#fff"/><path d="M57.407,33.574l-31.5-5.437A6.2,6.2,0,0,0,21.02,29.6L5.374,45.384c-1.08,1.089-.643,2.2.975,2.478L37.85,53.3a6.19,6.19,0,0,0,4.886-1.466l15.646-15.78C59.462,34.963,59.026,33.853,57.407,33.574ZM22,30.35a4.641,4.641,0,0,1,3.664-1.1L32.337,30.4l4.479.773,2.239.386-3.724,1.112,1.485-1.5-7.468,2.242L32.337,30.4,17.6,34.788Zm-3.429,9.514-.978.987a2.326,2.326,0,0,1-1.832.55l-1.465-.253c-.607-.105-.771-.521-.366-.929l.978-.987a2.328,2.328,0,0,1,1.833-.55l1.465.253C18.81,39.04,18.973,39.456,18.568,39.864Zm16.1,2.491-7.542-1.3c-2.224-.384-3.372-1.664-2.616-3.208,1.252-2.556,6.029-4.288,9.386-3.708l7.692,1.327c3.357.58,3.805,3.213.363,5.391A11.2,11.2,0,0,1,34.672,42.355Zm11.734,2.314-.978.986a2.318,2.318,0,0,1-1.832.55l-1.465-.253c-.607-.1-.77-.52-.365-.929l.977-.986a2.321,2.321,0,0,1,1.833-.55l1.465.253C46.648,43.844,46.811,44.26,46.406,44.669Z" fill="#fff"/><path d="M31,25h2v2H31Zm0-2h2V21H31Zm0-4h2V17H31ZM32.018,6.037,27.438,13H31v2h2V13h3.562Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>Impact3G</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M35.5,34.348l-6.163-1.042a2.894,2.894,0,0,0-3.215,1.959,2.552,2.552,0,0,0,1.939,3.342L34.494,39.7a2.823,2.823,0,0,0,3.185-2.474A2.6,2.6,0,0,0,35.5,34.348Zm-6.028,1.48a.979.979,0,0,1-1.092.776.883.883,0,0,1-.7-1.079.979.979,0,0,1,1.1-.773A.879.879,0,0,1,29.472,35.828Zm6.572,1.112a.977.977,0,0,1-1.093.775.881.881,0,0,1-.7-1.078.977.977,0,0,1,1.093-.774A.879.879,0,0,1,36.044,36.94Z" fill="#fff"/><path d="M47.815,28.847,20.159,24.168a2.811,2.811,0,0,0-3.143,2.226l-4.564,21.3a2.532,2.532,0,0,0,2,3.1L42.11,55.464a2.811,2.811,0,0,0,3.144-2.226l4.564-21.294A2.531,2.531,0,0,0,47.815,28.847ZM18.16,27.277a2.108,2.108,0,0,1,2.357-1.669l5.862.991,3.931.665,1.966.333-2.4,1.689.433-2.022-4.8,3.4.872-4.068-9.5,6.667Zm2.006,12.407-.285,1.331a1.054,1.054,0,0,1-1.179.835l-1.286-.217a.95.95,0,0,1-.751-1.162l.285-1.331a1.055,1.055,0,0,1,1.179-.835l1.286.218A.949.949,0,0,1,20.166,39.684Zm19.021-.418a4.849,4.849,0,0,1-5.026,2.441l-6.622-1.12a4.351,4.351,0,0,1-3.665-3.912,4.969,4.969,0,0,1,5.6-5.415L36.223,32.4A4.543,4.543,0,0,1,39.187,39.266Zm5.419,4.553-.285,1.331a1.055,1.055,0,0,1-1.179.835l-1.286-.218a.949.949,0,0,1-.751-1.161l.286-1.331a1.054,1.054,0,0,1,1.178-.835l1.287.218A.948.948,0,0,1,44.606,43.819Z" fill="#fff"/><path d="M62.293,31.531S53.615,34.369,52.2,34.74c1.215-.811,4.881-3,5.472-3.343-.233-.088-4.064-1.682-4.064-1.682s-.461-6.295-.6-8.9c-1.187,1.572-4.778,6.085-4.778,6.085s-5.667-4.974-6.241-5.5c-.011.495-.149,3.961-.256,5.2-.324-1.2-2.024-9.274-2.024-9.274s7.1,4.384,7.808,4.851c1.8-2.8,9.02-13.046,9.02-13.046s.4,14.322.367,18.549C57.378,28,62.293,31.531,62.293,31.531Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>Impact6G</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M35.66,34.348,29.5,33.306a2.894,2.894,0,0,0-3.215,1.959,2.552,2.552,0,0,0,1.939,3.342L34.654,39.7a2.824,2.824,0,0,0,3.185-2.474A2.6,2.6,0,0,0,35.66,34.348Zm-6.028,1.48a.979.979,0,0,1-1.092.776.883.883,0,0,1-.7-1.079.978.978,0,0,1,1.094-.773A.879.879,0,0,1,29.632,35.828ZM36.2,36.94a.978.978,0,0,1-1.094.775.881.881,0,0,1-.7-1.078.977.977,0,0,1,1.093-.774A.879.879,0,0,1,36.2,36.94Z" fill="#fff"/><path d="M47.975,28.847,20.319,24.168a2.81,2.81,0,0,0-3.143,2.226l-4.564,21.3a2.531,2.531,0,0,0,2,3.1L42.27,55.464a2.812,2.812,0,0,0,3.144-2.226l4.564-21.294A2.531,2.531,0,0,0,47.975,28.847ZM18.32,27.277a2.108,2.108,0,0,1,2.357-1.669l5.862.991,3.931.665,1.966.333-2.4,1.689.433-2.022-4.8,3.4.872-4.068-9.5,6.667Zm2.006,12.407-.285,1.331a1.054,1.054,0,0,1-1.179.835l-1.286-.217a.95.95,0,0,1-.751-1.162l.285-1.331a1.055,1.055,0,0,1,1.179-.835l1.286.218A.949.949,0,0,1,20.326,39.684Zm19.021-.418a4.85,4.85,0,0,1-5.027,2.441L27.7,40.587a4.351,4.351,0,0,1-3.665-3.912,4.969,4.969,0,0,1,5.6-5.415L36.383,32.4A4.543,4.543,0,0,1,39.347,39.266Zm5.419,4.553-.285,1.331a1.055,1.055,0,0,1-1.179.835l-1.286-.218a.949.949,0,0,1-.751-1.161l.285-1.331a1.055,1.055,0,0,1,1.179-.835l1.287.218A.949.949,0,0,1,44.766,43.819Z" fill="#fff"/><path d="M59.718,34.767s-5.938.872-6.913.978c.9-.385,3.76-1.517,4.283-1.719-.759-.666-5.948-5.419-5.948-5.419L53.294,23.8c-1.953.508-7.768,1.933-7.768,1.933s-1.274-5.155-1.651-6.774c-.713,1.649-2.9,6.444-2.9,6.444s-6.97-4.182-7.8-4.707c.31,1.472.6,2.95.859,4.44-.945-1.909-3.361-7.373-3.361-7.373s7.848,3.215,8.748,3.605c.432-1.316,5.307-15.056,5.307-15.056S47.762,18.1,48.448,20.99c2.534-.558,11.419-2.34,11.419-2.34s-4.19,7.43-5.393,9.494Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>Impact8G</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M35.5,34.348l-6.163-1.042a2.894,2.894,0,0,0-3.215,1.959,2.552,2.552,0,0,0,1.939,3.342L34.494,39.7a2.823,2.823,0,0,0,3.185-2.474A2.6,2.6,0,0,0,35.5,34.348Zm-6.028,1.48a.979.979,0,0,1-1.092.776.883.883,0,0,1-.7-1.079.979.979,0,0,1,1.1-.773A.879.879,0,0,1,29.472,35.828Zm6.572,1.112a.977.977,0,0,1-1.093.775.881.881,0,0,1-.7-1.078.977.977,0,0,1,1.093-.774A.879.879,0,0,1,36.044,36.94Z" fill="#fff"/><path d="M47.815,28.847,20.159,24.168a2.811,2.811,0,0,0-3.143,2.226l-4.564,21.3a2.532,2.532,0,0,0,2,3.1L42.11,55.464a2.811,2.811,0,0,0,3.144-2.226l4.564-21.294A2.531,2.531,0,0,0,47.815,28.847ZM18.16,27.277a2.108,2.108,0,0,1,2.357-1.669l5.862.991,3.931.665,1.966.333-2.4,1.689.433-2.022-4.8,3.4.872-4.068-9.5,6.667Zm2.006,12.407-.285,1.331a1.054,1.054,0,0,1-1.179.835l-1.286-.217a.95.95,0,0,1-.751-1.162l.285-1.331a1.055,1.055,0,0,1,1.179-.835l1.286.218A.949.949,0,0,1,20.166,39.684Zm19.021-.418a4.849,4.849,0,0,1-5.026,2.441l-6.622-1.12a4.351,4.351,0,0,1-3.665-3.912,4.969,4.969,0,0,1,5.6-5.415L36.223,32.4A4.543,4.543,0,0,1,39.187,39.266Zm5.419,4.553-.285,1.331a1.055,1.055,0,0,1-1.179.835l-1.286-.218a.949.949,0,0,1-.751-1.161l.286-1.331a1.054,1.054,0,0,1,1.178-.835l1.287.218A.948.948,0,0,1,44.606,43.819Z" fill="#fff"/><path d="M60.889,37.511s-8.041,1-9.389,1.066l6.1-2.111c-.6-.547-5.537-5.113-5.537-5.113s2.293-3.471,3.027-4.568c-1.937-.478-8.214-2.113-8.214-2.113s1.519-6.123,1.973-7.86c-1.043.811-5.833,4.512-5.833,4.512s-3.5-6.347-4.436-8.088c-.553,1.417-2.326,5.791-2.326,5.791s-8.554-1.812-9.682-2.069c1.022,2.56,2.035,5.125,2.988,7.719-1.8-2.825-5.992-9.841-5.992-9.841s8.978.139,10.1.179c.685-2.871,3.567-13.93,3.567-13.93S43.232,10.4,44.63,12.654C45.469,11.962,59.557.8,59.557.8S53.888,19.631,53.4,21.14c1.971.7,9.006,3.329,9.006,3.329s-4.7,5.265-6.062,6.742C56.8,31.837,60.889,37.511,60.889,37.511Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

72
resources/gestures/Shake.svg Executable file
View File

@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
viewBox="0 0 64 64"
id="svg2"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="Shake.svg"
inkscape:export-filename="/Users/sam/pxt-microbit/libs/core/jres/gestures/shake-icon.png"
inkscape:export-xdpi="99.84375"
inkscape:export-ydpi="99.84375">
<metadata
id="metadata18">
<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>Shake</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs16" />
<sodipodi:namedview
pagecolor="#db3838"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1570"
inkscape:window-height="925"
id="namedview14"
showgrid="false"
inkscape:zoom="7.375"
inkscape:cx="32"
inkscape:cy="32"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="svg2" />
<title
id="title4">Shake</title>
<path
d="M64,64H0V0H64Z"
fill="#f6f6f6"
opacity="0"
id="path6" />
<path
d="M49.65,20.084l-29.547-5a3,3,0,0,0-3.358,2.378l-4.876,22.75a2.7,2.7,0,0,0,2.139,3.309l29.547,5a3,3,0,0,0,3.358-2.378l4.876-22.75A2.7,2.7,0,0,0,49.65,20.084ZM17.967,18.408a2.253,2.253,0,0,1,2.519-1.784l6.262,1.059,4.2.711,2.1.355-2.564,1.8.463-2.159-5.132,3.635.932-4.346L16.6,24.806ZM20.11,31.663l-.3,1.422a1.126,1.126,0,0,1-1.259.892l-1.375-.233a1.014,1.014,0,0,1-.8-1.241l.3-1.421a1.125,1.125,0,0,1,1.259-.892l1.374.232A1.013,1.013,0,0,1,20.11,31.663Zm20.321-.448a5.177,5.177,0,0,1-5.369,2.609l-7.074-1.2a4.648,4.648,0,0,1-3.916-4.179,5.309,5.309,0,0,1,5.978-5.786l7.216,1.221C40.414,24.415,42.19,27.976,40.431,31.215Zm5.791,4.865-.3,1.422a1.126,1.126,0,0,1-1.259.892l-1.375-.233a1.013,1.013,0,0,1-.8-1.24l.3-1.422a1.126,1.126,0,0,1,1.259-.892l1.374.232A1.015,1.015,0,0,1,46.222,36.08Z"
fill="#fff"
id="path8"
style="fill:#ffffff;fill-opacity:1" />
<path
d="M36.493,25.962l-6.584-1.114a3.093,3.093,0,0,0-3.435,2.094,2.724,2.724,0,0,0,2.072,3.569l6.872,1.163a3.016,3.016,0,0,0,3.4-2.643A2.776,2.776,0,0,0,36.493,25.962Zm-6.44,1.581a1.047,1.047,0,0,1-1.168.829.942.942,0,0,1-.744-1.153,1.045,1.045,0,0,1,1.169-.826A.94.94,0,0,1,30.053,27.543Zm7.021,1.188a1.044,1.044,0,0,1-1.168.828.941.941,0,0,1-.743-1.152,1.044,1.044,0,0,1,1.167-.827A.939.939,0,0,1,37.074,28.731Z"
fill="#fff"
id="path10" />
<path
d="M8.2,37.3a19.8,19.8,0,0,0,4.5,12.559l-1.544,1.271A21.8,21.8,0,0,1,6.2,37.3Zm-6,1a21.673,21.673,0,0,0,1.341,7.537l1.876-.693A19.676,19.676,0,0,1,4.2,38.3ZM51.426,12.931a19.8,19.8,0,0,1,4.5,12.559h2A21.8,21.8,0,0,0,52.97,11.66Zm9.161,4.023-1.876.692a19.706,19.706,0,0,1,1.216,6.844h2A21.675,21.675,0,0,0,60.587,16.954Z"
fill="aqua"
id="path12" />
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>TiltBackward</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M34.3,36.284a3.081,3.081,0,0,0-3.064-3.361H23.538a3.08,3.08,0,0,0-3.064,3.36A3.186,3.186,0,0,0,23.7,39.077H31.07A3.186,3.186,0,0,0,34.3,36.284ZM23.5,37.359a1.071,1.071,0,1,1,1.07-1.07A1.069,1.069,0,0,1,23.5,37.359Zm7.859,0a1.071,1.071,0,1,1,1.072-1.069A1.07,1.07,0,0,1,31.359,37.358Z" fill="#fff"/><path d="M43.923,16.769H10.846a3.077,3.077,0,0,0-3.077,3.077V44.462a3.077,3.077,0,0,0,3.077,3.076H43.923A3.077,3.077,0,0,0,47,44.462V19.846A3.077,3.077,0,0,0,43.923,16.769ZM40.077,28.692a1.154,1.154,0,0,1,1.154-1.154h1.538a1.154,1.154,0,0,1,1.154,1.154v1.539a1.154,1.154,0,0,1-1.154,1.154H41.231a1.154,1.154,0,0,1-1.154-1.154ZM14.692,30.231a1.154,1.154,0,0,1-1.154,1.154H12a1.154,1.154,0,0,1-1.154-1.154V28.692A1.154,1.154,0,0,1,12,27.538h1.538a1.154,1.154,0,0,1,1.154,1.154Zm3.536,4.056a5.4,5.4,0,0,1,5.2-3.672h7.919a5.385,5.385,0,1,1,.079,10.77H23.346A5.4,5.4,0,0,1,18.228,34.287Zm27.234,9.405A2.308,2.308,0,0,1,43.154,46H29.09l2.351-2.336V46l4.7-4.7V46l9.318-9.231Z" fill="#fff"/><path d="M56,23H54V21h2Zm0,2H54v2h2Zm0,4H54v2h2Zm0,4H54v2h2Zm-5.25,3L55,42.536,59.25,36Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>TiltForward</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M30.3,24.462H22.93A3.186,3.186,0,0,0,19.7,27.254a3.081,3.081,0,0,0,3.064,3.361h7.693a3.08,3.08,0,0,0,3.064-3.36A3.186,3.186,0,0,0,30.3,24.462Zm-7.66,3.859A1.07,1.07,0,1,1,23.71,27.25,1.072,1.072,0,0,1,22.641,28.321Zm7.859,0a1.071,1.071,0,1,1,1.07-1.071A1.071,1.071,0,0,1,30.5,28.321Z" fill="#fff"/><path d="M43.154,16H10.077A3.077,3.077,0,0,0,7,19.077V43.692a3.077,3.077,0,0,0,3.077,3.077H43.154a3.077,3.077,0,0,0,3.077-3.077V19.077A3.077,3.077,0,0,0,43.154,16ZM8.538,26.769V19.846a2.309,2.309,0,0,1,2.308-2.308H24.91l-2.351,2.337V17.538l-4.7,4.7v-4.7Zm5.385,8.077A1.154,1.154,0,0,1,12.769,36H11.231a1.154,1.154,0,0,1-1.154-1.154V33.308a1.154,1.154,0,0,1,1.154-1.154h1.538a1.154,1.154,0,0,1,1.154,1.154Zm21.849-5.595a5.4,5.4,0,0,1-5.2,3.672H22.656a5.385,5.385,0,1,1-.079-10.769h8.077A5.4,5.4,0,0,1,35.772,29.251Zm7.382,5.595A1.154,1.154,0,0,1,42,36H40.462a1.154,1.154,0,0,1-1.154-1.154V33.308a1.153,1.153,0,0,1,1.154-1.154H42a1.154,1.154,0,0,1,1.154,1.154Z" fill="#fff"/><path d="M54,29h2v2H54Zm0,10h2V37H54Zm0,4h2V41H54Zm0-8h2V33H54Zm1-13.536L50.75,28h8.5Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>TiltLeft</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M31.355,28.667,25.088,31.59c-1.377.642-2.457,1.841-2.354,2.785.122,1.122,1.7,1.433,3.369.655l7.172-3.345c1.668-.777,2.461-2.193,1.7-3.018C34.334,27.974,32.733,28.025,31.355,28.667Zm-5.822,5.085c-.532.248-1.047.178-1.149-.15s.241-.774.756-1.014,1.024-.185,1.14.13S26.064,33.5,25.533,33.752Zm7.072-3.3c-.531.248-1.1.2-1.259-.1s.129-.723.644-.963,1.074-.207,1.25.08S33.139,30.205,32.6,30.454Z" fill="#fff"/><path d="M57.552,31.829,43.194,20.247c-.653-.527-2.207-.45-3.5.151L14.605,32.1c-1.289.6-2.357,1.747-2.387,2.592l-.65,18.581c-.07,1.97,1.59,2.869,3.71,1.88L56.549,35.907C58.669,34.919,59.074,33.057,57.552,31.829ZM17.131,43.313l-1.566.731c-.649.3-1.187.128-1.2-.381l-.035-1.183a1.762,1.762,0,0,1,1.078-1.363l1.469-.685c.609-.284,1.144-.152,1.2.3l.132,1.138A1.7,1.7,0,0,1,17.131,43.313Zm-4.285-4.631.014-3.9c0-.64.8-1.517,1.789-1.977l5.424-2.529,3.639-1.7,1.819-.849-1.483,1.85-.336-1-3.177,3.888-.462-2.191Zm21.3-5.733-7.659,3.572c-2.259,1.053-4.565,1.071-5.5-.034-1.421-1.674.528-4.525,3.429-5.878l6.649-3.1c2.9-1.353,6.306-1,6.637,1.183C37.916,30.133,36.4,31.9,34.145,32.949Zm12.743-3.511-1.566.73a1.662,1.662,0,0,1-1.778-.112l-.768-.841c-.307-.336-.058-.834.551-1.118l1.469-.685a1.722,1.722,0,0,1,1.723.057l.865.8C47.755,28.607,47.536,29.135,46.888,29.438Z" fill="#fff"/><path d="M21,6.246l.676,1.881a14.252,14.252,0,0,0-1.712.746l-.916-1.779A16.353,16.353,0,0,1,21,6.246Zm-8.2,6.5,1.676,1.091a14.287,14.287,0,0,1,1.118-1.5l-1.522-1.3A16.364,16.364,0,0,0,12.8,12.742Zm2.754-3.23L16.9,11a14.236,14.236,0,0,1,1.462-1.161L17.225,8.189A16.4,16.4,0,0,0,15.556,9.512Zm-3.147,9.5-1.967-.365A16.652,16.652,0,0,0,10.23,20.3H6.917l4.25,6.536,4.25-6.536h-3.18C12.278,19.864,12.33,19.432,12.409,19.007Zm1.154-3.543-1.8-.865a15.829,15.829,0,0,0-.793,1.979l1.9.62A14.274,14.274,0,0,1,13.563,15.464Zm25-4.9L37.1,11.917a14.782,14.782,0,0,1,1.177,1.455l1.631-1.157A16.541,16.541,0,0,0,38.567,10.562Zm-15.523-4.9.426,1.954a14.305,14.305,0,0,1,1.845-.277l-.166-1.993A16.221,16.221,0,0,0,23.044,5.659Zm7.812,2.289a14.545,14.545,0,0,1,1.741.677l.845-1.812a16.032,16.032,0,0,0-1.984-.772Zm3.379,1.576a14.532,14.532,0,0,1,1.508,1.1l1.283-1.533A16.453,16.453,0,0,0,35.31,7.837ZM27.186,7.3a14.547,14.547,0,0,1,1.857.2l.348-1.969A16.478,16.478,0,0,0,27.275,5.3Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><title>TiltRight</title><path d="M64,64H0V0H64Z" fill="#f6f6f6" opacity="0"/><path d="M38.153,31.148l-6.268-2.922c-1.377-.643-2.989-.7-3.646-.014-.782.815,0,2.225,1.664,3l7.172,3.344c1.668.778,3.262.475,3.4-.638C40.6,32.985,39.53,31.79,38.153,31.148Zm-6.366-1.284c-.169.3-.741.34-1.271.092s-.811-.687-.624-.976.748-.313,1.262-.073S31.954,29.573,31.787,29.864Zm6.961,3.246c-.108.325-.627.393-1.16.144s-.86-.71-.735-1.028.637-.365,1.152-.125S38.854,32.791,38.748,33.11Z" fill="#fff"/><path d="M52.213,34.8c-.016-.839-1.074-1.979-2.363-2.58l-25.093-11.7c-1.289-.6-2.853-.683-3.52-.163L6.585,31.805c-1.554,1.214-1.176,3.063.945,4.052L48.8,55.1c2.12.989,3.806.1,3.768-1.853Zm-30.632-13.9a2.892,2.892,0,0,1,2.665.1l5.424,2.529,3.639,1.7,1.819.848-2.37.053.551-.9-5.021.065,1.382-1.762-11.087-.131Zm-1.211,7.82-.788.832a1.7,1.7,0,0,1-1.792.105l-1.566-.73c-.649-.3-.861-.828-.481-1.165l.884-.787a1.757,1.757,0,0,1,1.736-.051l1.47.685C20.442,27.9,20.685,28.4,20.37,28.729Zm21.84,7.293c-.963,1.094-3.286,1.068-5.545.015l-7.659-3.571c-2.258-1.053-3.754-2.808-3.511-4.238.368-2.164,3.805-2.5,6.707-1.151l6.648,3.1C41.752,31.531,43.669,34.366,42.21,36.022Zm6.554,7.146c-.024.505-.569.676-1.217.374l-1.566-.73a1.66,1.66,0,0,1-1.057-1.434l.15-1.129c.06-.451.6-.58,1.21-.3l1.47.685a1.719,1.719,0,0,1,1.063,1.356Z" fill="#fff"/><path d="M28.285,7.837l1.074,1.686a14.489,14.489,0,0,0-1.507,1.1L26.568,9.094A16.465,16.465,0,0,1,28.285,7.837Zm1.866-1.024L31,8.625a14.6,14.6,0,0,1,1.74-.677l-.6-1.907A16.107,16.107,0,0,0,30.151,6.813Zm4.055-1.279.346,1.97a14.446,14.446,0,0,1,1.857-.2l-.09-2A16.65,16.65,0,0,0,34.206,5.534ZM23.689,12.215l1.633,1.156A14.678,14.678,0,0,1,26.5,11.917l-1.471-1.355A17.009,17.009,0,0,0,23.689,12.215ZM50.725,17.2l1.9-.62a16.3,16.3,0,0,0-.793-1.979l-1.8.865A14.214,14.214,0,0,1,50.725,17.2ZM38.279,7.336a14.319,14.319,0,0,1,1.846.276l.426-1.954a16.434,16.434,0,0,0-2.106-.315Zm12.513,5.407a16.483,16.483,0,0,0-1.272-1.7L48,12.336a14.67,14.67,0,0,1,1.118,1.5ZM41.919,8.127a14.286,14.286,0,0,1,1.713.746l.916-1.779A16.771,16.771,0,0,0,42.6,6.245Zm4.451.062L45.233,9.834A14.129,14.129,0,0,1,46.7,11l1.344-1.483A16.4,16.4,0,0,0,46.37,8.189Zm7,12.107a16.654,16.654,0,0,0-.213-1.654l-1.966.365c.078.425.131.857.171,1.289h-3.18l4.25,6.536,4.25-6.536Z" fill="aqua"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB