pts 0.10.9 → 0.10.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es2015/Canvas.js.map +1 -0
- package/dist/es2015/Color.js.map +1 -0
- package/dist/es2015/Create.js.map +1 -0
- package/dist/es2015/Dom.js.map +1 -0
- package/dist/es2015/Form.js.map +1 -0
- package/dist/es2015/Image.js +78 -12
- package/dist/es2015/Image.js.map +1 -0
- package/dist/es2015/LinearAlgebra.js +35 -0
- package/dist/es2015/LinearAlgebra.js.map +1 -0
- package/dist/es2015/Num.js.map +1 -0
- package/dist/es2015/Op.js.map +1 -0
- package/dist/es2015/Physics.js.map +1 -0
- package/dist/es2015/Play.js.map +1 -0
- package/dist/es2015/Pt.js +3 -0
- package/dist/es2015/Pt.js.map +1 -0
- package/dist/es2015/Space.js +84 -30
- package/dist/es2015/Space.js.map +1 -0
- package/dist/es2015/Svg.js.map +1 -0
- package/dist/es2015/Types.js.map +1 -0
- package/dist/es2015/Typography.js.map +1 -0
- package/dist/es2015/UI.js +5 -1
- package/dist/es2015/UI.js.map +1 -0
- package/dist/es2015/Util.js +13 -0
- package/dist/es2015/Util.js.map +1 -0
- package/dist/es2015/_lib.js.map +1 -0
- package/dist/es2015/_module.js.map +1 -0
- package/dist/es2015/uheprng.js.map +1 -0
- package/dist/es5.js +339 -42
- package/dist/es5.js.map +1 -0
- package/dist/index.js +219 -44
- package/dist/index.js.map +1 -0
- package/dist/pts.d.ts +41 -7
- package/dist/pts.js +219 -44
- package/dist/pts.js.map +1 -0
- package/dist/pts.min.js +2 -2
- package/dist/pts.min.js.map +1 -0
- package/dist/pts.module.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_module.js","sourceRoot":"","sources":["../../src/_module.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,cAAc,MAAM,CAAC;AACrB,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uheprng.js","sourceRoot":"","sources":["../../src/uheprng.ts"],"names":[],"mappings":"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"}
|
package/dist/es5.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* pts.js 0.10.
|
|
2
|
+
* pts.js 0.10.10 - Copyright © 2017-2022 William Ngan and contributors.
|
|
3
3
|
* Licensed under Apache 2.0 License.
|
|
4
4
|
* See https://github.com/williamngan/pts for details.
|
|
5
5
|
*/
|
|
@@ -2855,14 +2855,43 @@ var _createClass = function () { function defineProperties(target, props) { for
|
|
|
2855
2855
|
|
|
2856
2856
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
2857
2857
|
|
|
2858
|
+
var __awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
|
|
2859
|
+
function adopt(value) {
|
|
2860
|
+
return value instanceof P ? value : new P(function (resolve) {
|
|
2861
|
+
resolve(value);
|
|
2862
|
+
});
|
|
2863
|
+
}
|
|
2864
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
2865
|
+
function fulfilled(value) {
|
|
2866
|
+
try {
|
|
2867
|
+
step(generator.next(value));
|
|
2868
|
+
} catch (e) {
|
|
2869
|
+
reject(e);
|
|
2870
|
+
}
|
|
2871
|
+
}
|
|
2872
|
+
function rejected(value) {
|
|
2873
|
+
try {
|
|
2874
|
+
step(generator["throw"](value));
|
|
2875
|
+
} catch (e) {
|
|
2876
|
+
reject(e);
|
|
2877
|
+
}
|
|
2878
|
+
}
|
|
2879
|
+
function step(result) {
|
|
2880
|
+
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
2881
|
+
}
|
|
2882
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
2883
|
+
});
|
|
2884
|
+
};
|
|
2858
2885
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2859
2886
|
exports.Img = void 0;
|
|
2887
|
+
var Canvas_1 = __webpack_require__(/*! ./Canvas */ "./src/Canvas.ts");
|
|
2860
2888
|
var Pt_1 = __webpack_require__(/*! ./Pt */ "./src/Pt.ts");
|
|
2889
|
+
var LinearAlgebra_1 = __webpack_require__(/*! ./LinearAlgebra */ "./src/LinearAlgebra.ts");
|
|
2861
2890
|
|
|
2862
2891
|
var Img = function () {
|
|
2863
2892
|
function Img() {
|
|
2864
2893
|
var editable = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
2865
|
-
var
|
|
2894
|
+
var space = arguments[1];
|
|
2866
2895
|
var crossOrigin = arguments[2];
|
|
2867
2896
|
|
|
2868
2897
|
_classCallCheck(this, Img);
|
|
@@ -2870,7 +2899,8 @@ var Img = function () {
|
|
|
2870
2899
|
this._scale = 1;
|
|
2871
2900
|
this._loaded = false;
|
|
2872
2901
|
this._editable = editable;
|
|
2873
|
-
this.
|
|
2902
|
+
this._space = space;
|
|
2903
|
+
this._scale = this._space ? this._space.pixelScale : 1;
|
|
2874
2904
|
this._img = new Image();
|
|
2875
2905
|
if (crossOrigin) this._img.crossOrigin = "Anonymous";
|
|
2876
2906
|
}
|
|
@@ -2881,6 +2911,9 @@ var Img = function () {
|
|
|
2881
2911
|
var _this = this;
|
|
2882
2912
|
|
|
2883
2913
|
return new Promise(function (resolve, reject) {
|
|
2914
|
+
if (_this._editable && !document) {
|
|
2915
|
+
reject("Cannot create html canvas element. document not found.");
|
|
2916
|
+
}
|
|
2884
2917
|
_this._img.src = src;
|
|
2885
2918
|
_this._img.onload = function () {
|
|
2886
2919
|
if (_this._editable) {
|
|
@@ -2899,14 +2932,27 @@ var Img = function () {
|
|
|
2899
2932
|
}, {
|
|
2900
2933
|
key: "_drawToScale",
|
|
2901
2934
|
value: function _drawToScale(canvasScale, img) {
|
|
2902
|
-
var cms = typeof canvasScale === 'number' ? [canvasScale, canvasScale] : canvasScale;
|
|
2903
2935
|
var nw = img.width;
|
|
2904
2936
|
var nh = img.height;
|
|
2905
|
-
this.
|
|
2906
|
-
this._cv.height = nh * cms[1];
|
|
2907
|
-
this._ctx = this._cv.getContext('2d');
|
|
2937
|
+
this.initCanvas(nw, nh, canvasScale);
|
|
2908
2938
|
if (img) this._ctx.drawImage(img, 0, 0, nw, nh, 0, 0, this._cv.width, this._cv.height);
|
|
2909
2939
|
}
|
|
2940
|
+
}, {
|
|
2941
|
+
key: "initCanvas",
|
|
2942
|
+
value: function initCanvas(width, height) {
|
|
2943
|
+
var canvasScale = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
|
|
2944
|
+
|
|
2945
|
+
if (!this._editable) {
|
|
2946
|
+
console.error('Cannot initiate canvas because this Img is not set to be editable');
|
|
2947
|
+
return;
|
|
2948
|
+
}
|
|
2949
|
+
if (!this._cv) this._cv = document.createElement("canvas");
|
|
2950
|
+
var cms = typeof canvasScale === 'number' ? [canvasScale, canvasScale] : canvasScale;
|
|
2951
|
+
this._cv.width = width * cms[0];
|
|
2952
|
+
this._cv.height = height * cms[1];
|
|
2953
|
+
this._ctx = this._cv.getContext('2d');
|
|
2954
|
+
this._loaded = true;
|
|
2955
|
+
}
|
|
2910
2956
|
}, {
|
|
2911
2957
|
key: "bitmap",
|
|
2912
2958
|
value: function bitmap(size) {
|
|
@@ -2914,6 +2960,15 @@ var Img = function () {
|
|
|
2914
2960
|
var h = size ? size[1] : this._cv.height;
|
|
2915
2961
|
return createImageBitmap(this._cv, 0, 0, w, h);
|
|
2916
2962
|
}
|
|
2963
|
+
}, {
|
|
2964
|
+
key: "pattern",
|
|
2965
|
+
value: function pattern() {
|
|
2966
|
+
var reptition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'repeat';
|
|
2967
|
+
var dynamic = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
2968
|
+
|
|
2969
|
+
if (!this._space) throw "Cannot find CanvasSpace ctx to create image pattern";
|
|
2970
|
+
return this._space.ctx.createPattern(dynamic ? this._cv : this._img, reptition);
|
|
2971
|
+
}
|
|
2917
2972
|
}, {
|
|
2918
2973
|
key: "sync",
|
|
2919
2974
|
value: function sync() {
|
|
@@ -2984,6 +3039,14 @@ var Img = function () {
|
|
|
2984
3039
|
});
|
|
2985
3040
|
});
|
|
2986
3041
|
}
|
|
3042
|
+
}, {
|
|
3043
|
+
key: "getForm",
|
|
3044
|
+
value: function getForm() {
|
|
3045
|
+
if (!this._editable) {
|
|
3046
|
+
console.error("Cannot get a CanvasForm because this Img is not editable");
|
|
3047
|
+
}
|
|
3048
|
+
return this._ctx ? new Canvas_1.CanvasForm(this._ctx) : undefined;
|
|
3049
|
+
}
|
|
2987
3050
|
}, {
|
|
2988
3051
|
key: "current",
|
|
2989
3052
|
get: function get() {
|
|
@@ -3022,26 +3085,98 @@ var Img = function () {
|
|
|
3022
3085
|
}, {
|
|
3023
3086
|
key: "imageSize",
|
|
3024
3087
|
get: function get() {
|
|
3025
|
-
|
|
3088
|
+
if (!this._img.width || !this._img.height) {
|
|
3089
|
+
return this.canvasSize.$divide(this._scale);
|
|
3090
|
+
} else {
|
|
3091
|
+
return new Pt_1.Pt(this._img.width, this._img.height);
|
|
3092
|
+
}
|
|
3026
3093
|
}
|
|
3027
3094
|
}, {
|
|
3028
3095
|
key: "canvasSize",
|
|
3029
3096
|
get: function get() {
|
|
3030
3097
|
return new Pt_1.Pt(this._cv.width, this._cv.height);
|
|
3031
3098
|
}
|
|
3099
|
+
}, {
|
|
3100
|
+
key: "scaledMatrix",
|
|
3101
|
+
get: function get() {
|
|
3102
|
+
var s = 1 / this._scale;
|
|
3103
|
+
return new LinearAlgebra_1.Mat().scale2D([s, s]);
|
|
3104
|
+
}
|
|
3032
3105
|
}], [{
|
|
3033
3106
|
key: "load",
|
|
3034
3107
|
value: function load(src) {
|
|
3035
3108
|
var editable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
3036
|
-
var
|
|
3109
|
+
var space = arguments[2];
|
|
3037
3110
|
var ready = arguments[3];
|
|
3038
3111
|
|
|
3039
|
-
var img = new Img(editable,
|
|
3112
|
+
var img = new Img(editable, space);
|
|
3040
3113
|
img.load(src).then(function (res) {
|
|
3041
3114
|
if (ready) ready(res);
|
|
3042
3115
|
});
|
|
3043
3116
|
return img;
|
|
3044
3117
|
}
|
|
3118
|
+
}, {
|
|
3119
|
+
key: "loadAsync",
|
|
3120
|
+
value: function loadAsync(src) {
|
|
3121
|
+
var editable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
3122
|
+
var space = arguments[2];
|
|
3123
|
+
|
|
3124
|
+
return __awaiter(this, void 0, void 0, regeneratorRuntime.mark(function _callee() {
|
|
3125
|
+
var img;
|
|
3126
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
3127
|
+
while (1) {
|
|
3128
|
+
switch (_context.prev = _context.next) {
|
|
3129
|
+
case 0:
|
|
3130
|
+
_context.next = 2;
|
|
3131
|
+
return new Img(editable, space).load(src);
|
|
3132
|
+
|
|
3133
|
+
case 2:
|
|
3134
|
+
img = _context.sent;
|
|
3135
|
+
return _context.abrupt("return", img);
|
|
3136
|
+
|
|
3137
|
+
case 4:
|
|
3138
|
+
case "end":
|
|
3139
|
+
return _context.stop();
|
|
3140
|
+
}
|
|
3141
|
+
}
|
|
3142
|
+
}, _callee, this);
|
|
3143
|
+
}));
|
|
3144
|
+
}
|
|
3145
|
+
}, {
|
|
3146
|
+
key: "loadPattern",
|
|
3147
|
+
value: function loadPattern(src, space) {
|
|
3148
|
+
var repeat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'repeat';
|
|
3149
|
+
var editable = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
3150
|
+
|
|
3151
|
+
return __awaiter(this, void 0, void 0, regeneratorRuntime.mark(function _callee2() {
|
|
3152
|
+
var img;
|
|
3153
|
+
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
3154
|
+
while (1) {
|
|
3155
|
+
switch (_context2.prev = _context2.next) {
|
|
3156
|
+
case 0:
|
|
3157
|
+
_context2.next = 2;
|
|
3158
|
+
return Img.loadAsync(src, editable, space);
|
|
3159
|
+
|
|
3160
|
+
case 2:
|
|
3161
|
+
img = _context2.sent;
|
|
3162
|
+
return _context2.abrupt("return", img.pattern(repeat));
|
|
3163
|
+
|
|
3164
|
+
case 4:
|
|
3165
|
+
case "end":
|
|
3166
|
+
return _context2.stop();
|
|
3167
|
+
}
|
|
3168
|
+
}
|
|
3169
|
+
}, _callee2, this);
|
|
3170
|
+
}));
|
|
3171
|
+
}
|
|
3172
|
+
}, {
|
|
3173
|
+
key: "blank",
|
|
3174
|
+
value: function blank(size, space, scale) {
|
|
3175
|
+
var img = new Img(true, space);
|
|
3176
|
+
var s = scale ? scale : space.pixelScale;
|
|
3177
|
+
img.initCanvas(size[0], size[1], s);
|
|
3178
|
+
return img;
|
|
3179
|
+
}
|
|
3045
3180
|
}, {
|
|
3046
3181
|
key: "getPixel",
|
|
3047
3182
|
value: function getPixel(imgData, p) {
|
|
@@ -3056,15 +3191,18 @@ var Img = function () {
|
|
|
3056
3191
|
key: "fromBlob",
|
|
3057
3192
|
value: function fromBlob(blob) {
|
|
3058
3193
|
var editable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
3059
|
-
var
|
|
3194
|
+
var space = arguments[2];
|
|
3060
3195
|
|
|
3061
3196
|
var url = URL.createObjectURL(blob);
|
|
3062
|
-
return new Img(editable,
|
|
3197
|
+
return new Img(editable, space).load(url);
|
|
3063
3198
|
}
|
|
3064
3199
|
}, {
|
|
3065
3200
|
key: "imageDataToBlob",
|
|
3066
3201
|
value: function imageDataToBlob(data) {
|
|
3067
|
-
return new Promise(function (resolve) {
|
|
3202
|
+
return new Promise(function (resolve, reject) {
|
|
3203
|
+
if (!document) {
|
|
3204
|
+
reject("Cannot create html canvas element. document not found.");
|
|
3205
|
+
}
|
|
3068
3206
|
var cv = document.createElement("canvas");
|
|
3069
3207
|
cv.width = data.width;
|
|
3070
3208
|
cv.height = data.height;
|
|
@@ -3274,9 +3412,60 @@ exports.Vec = Vec;
|
|
|
3274
3412
|
var Mat = function () {
|
|
3275
3413
|
function Mat() {
|
|
3276
3414
|
_classCallCheck(this, Mat);
|
|
3415
|
+
|
|
3416
|
+
this.reset();
|
|
3277
3417
|
}
|
|
3278
3418
|
|
|
3279
|
-
_createClass(Mat,
|
|
3419
|
+
_createClass(Mat, [{
|
|
3420
|
+
key: "reset",
|
|
3421
|
+
value: function reset() {
|
|
3422
|
+
this._33 = Mat.scale2DMatrix(1, 1);
|
|
3423
|
+
}
|
|
3424
|
+
}, {
|
|
3425
|
+
key: "scale2D",
|
|
3426
|
+
value: function scale2D(val) {
|
|
3427
|
+
var at = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [0, 0];
|
|
3428
|
+
|
|
3429
|
+
var m = Mat.scaleAt2DMatrix(val[0] || 1, val[1] || 1, at);
|
|
3430
|
+
this._33 = Mat.multiply(this._33, m);
|
|
3431
|
+
return this;
|
|
3432
|
+
}
|
|
3433
|
+
}, {
|
|
3434
|
+
key: "rotate2D",
|
|
3435
|
+
value: function rotate2D(ang) {
|
|
3436
|
+
var at = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [0, 0];
|
|
3437
|
+
|
|
3438
|
+
var m = Mat.rotateAt2DMatrix(Math.cos(ang), Math.sin(ang), at);
|
|
3439
|
+
this._33 = Mat.multiply(this._33, m);
|
|
3440
|
+
return this;
|
|
3441
|
+
}
|
|
3442
|
+
}, {
|
|
3443
|
+
key: "translate2D",
|
|
3444
|
+
value: function translate2D(val) {
|
|
3445
|
+
var m = Mat.translate2DMatrix(val[0] || 0, val[1] || 0);
|
|
3446
|
+
this._33 = Mat.multiply(this._33, m);
|
|
3447
|
+
return this;
|
|
3448
|
+
}
|
|
3449
|
+
}, {
|
|
3450
|
+
key: "shear2D",
|
|
3451
|
+
value: function shear2D(val) {
|
|
3452
|
+
var at = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [0, 0];
|
|
3453
|
+
|
|
3454
|
+
var m = Mat.shearAt2DMatrix(Math.tan(val[0] || 0), Math.tan(val[1] || 1), at);
|
|
3455
|
+
this._33 = Mat.multiply(this._33, m);
|
|
3456
|
+
return this;
|
|
3457
|
+
}
|
|
3458
|
+
}, {
|
|
3459
|
+
key: "value",
|
|
3460
|
+
get: function get() {
|
|
3461
|
+
return this._33;
|
|
3462
|
+
}
|
|
3463
|
+
}, {
|
|
3464
|
+
key: "domMatrix",
|
|
3465
|
+
get: function get() {
|
|
3466
|
+
return new DOMMatrix(Mat.toDOMMatrix(this._33));
|
|
3467
|
+
}
|
|
3468
|
+
}], [{
|
|
3280
3469
|
key: "add",
|
|
3281
3470
|
value: function add(a, b) {
|
|
3282
3471
|
if (typeof b != "number") {
|
|
@@ -3357,6 +3546,11 @@ var Mat = function () {
|
|
|
3357
3546
|
|
|
3358
3547
|
return Mat.zip(g, defaultValue, useLongest);
|
|
3359
3548
|
}
|
|
3549
|
+
}, {
|
|
3550
|
+
key: "toDOMMatrix",
|
|
3551
|
+
value: function toDOMMatrix(m) {
|
|
3552
|
+
return [m[0][0], m[0][1], m[1][0], m[1][1], m[2][0], m[2][1]];
|
|
3553
|
+
}
|
|
3360
3554
|
}, {
|
|
3361
3555
|
key: "transform2D",
|
|
3362
3556
|
value: function transform2D(pt, m) {
|
|
@@ -7520,6 +7714,11 @@ var Group = function (_extendableBuiltin4) {
|
|
|
7520
7714
|
|
|
7521
7715
|
return LinearAlgebra_1.Mat.zip(this, defaultValue, useLongest);
|
|
7522
7716
|
}
|
|
7717
|
+
}, {
|
|
7718
|
+
key: "toBound",
|
|
7719
|
+
value: function toBound() {
|
|
7720
|
+
return Bound.fromGroup(this);
|
|
7721
|
+
}
|
|
7523
7722
|
}, {
|
|
7524
7723
|
key: "toString",
|
|
7525
7724
|
value: function toString() {
|
|
@@ -7839,7 +8038,7 @@ var Space = function () {
|
|
|
7839
8038
|
|
|
7840
8039
|
this.id = "space";
|
|
7841
8040
|
this.bound = new Pt_1.Bound();
|
|
7842
|
-
this._time = { prev: 0, diff: 0, end: -1 };
|
|
8041
|
+
this._time = { prev: 0, diff: 0, end: -1, min: 0 };
|
|
7843
8042
|
this.players = {};
|
|
7844
8043
|
this.playerCount = 0;
|
|
7845
8044
|
this._animID = -1;
|
|
@@ -7856,6 +8055,13 @@ var Space = function () {
|
|
|
7856
8055
|
this._refresh = b;
|
|
7857
8056
|
return this;
|
|
7858
8057
|
}
|
|
8058
|
+
}, {
|
|
8059
|
+
key: "minFrameTime",
|
|
8060
|
+
value: function minFrameTime() {
|
|
8061
|
+
var ms = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
8062
|
+
|
|
8063
|
+
this._time.min = ms;
|
|
8064
|
+
}
|
|
7859
8065
|
}, {
|
|
7860
8066
|
key: "add",
|
|
7861
8067
|
value: function add(p) {
|
|
@@ -7891,6 +8097,7 @@ var Space = function () {
|
|
|
7891
8097
|
this._animID = requestAnimationFrame(this.play.bind(this));
|
|
7892
8098
|
if (this._pause) return this;
|
|
7893
8099
|
this._time.diff = time - this._time.prev;
|
|
8100
|
+
if (this._time.diff < this._time.min) return this;
|
|
7894
8101
|
this._time.prev = time;
|
|
7895
8102
|
try {
|
|
7896
8103
|
this.playItems(time);
|
|
@@ -8023,6 +8230,7 @@ var MultiTouchSpace = function (_Space) {
|
|
|
8023
8230
|
_this._dragged = false;
|
|
8024
8231
|
_this._hasMouse = false;
|
|
8025
8232
|
_this._hasTouch = false;
|
|
8233
|
+
_this._hasKeyboard = false;
|
|
8026
8234
|
return _this;
|
|
8027
8235
|
}
|
|
8028
8236
|
|
|
@@ -8030,22 +8238,45 @@ var MultiTouchSpace = function (_Space) {
|
|
|
8030
8238
|
key: "bindCanvas",
|
|
8031
8239
|
value: function bindCanvas(evt, callback) {
|
|
8032
8240
|
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
8241
|
+
var customTarget = arguments[3];
|
|
8033
8242
|
|
|
8034
|
-
this._canvas
|
|
8243
|
+
var target = customTarget ? customTarget : this._canvas;
|
|
8244
|
+
target.addEventListener(evt, callback, options);
|
|
8035
8245
|
}
|
|
8036
8246
|
}, {
|
|
8037
8247
|
key: "unbindCanvas",
|
|
8038
8248
|
value: function unbindCanvas(evt, callback) {
|
|
8039
8249
|
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
8250
|
+
var customTarget = arguments[3];
|
|
8251
|
+
|
|
8252
|
+
var target = customTarget ? customTarget : this._canvas;
|
|
8253
|
+
target.removeEventListener(evt, callback, options);
|
|
8254
|
+
}
|
|
8255
|
+
}, {
|
|
8256
|
+
key: "bindDoc",
|
|
8257
|
+
value: function bindDoc(evt, callback) {
|
|
8258
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
8259
|
+
|
|
8260
|
+
if (document) {
|
|
8261
|
+
document.addEventListener(evt, callback, options);
|
|
8262
|
+
}
|
|
8263
|
+
}
|
|
8264
|
+
}, {
|
|
8265
|
+
key: "unbindDoc",
|
|
8266
|
+
value: function unbindDoc(evt, callback) {
|
|
8267
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
8040
8268
|
|
|
8041
|
-
|
|
8269
|
+
if (document) {
|
|
8270
|
+
document.removeEventListener(evt, callback, options);
|
|
8271
|
+
}
|
|
8042
8272
|
}
|
|
8043
8273
|
}, {
|
|
8044
8274
|
key: "bindMouse",
|
|
8045
8275
|
value: function bindMouse() {
|
|
8046
|
-
var
|
|
8276
|
+
var bind = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
8277
|
+
var customTarget = arguments[1];
|
|
8047
8278
|
|
|
8048
|
-
if (
|
|
8279
|
+
if (bind) {
|
|
8049
8280
|
this._mouseDown = this._mouseDown.bind(this);
|
|
8050
8281
|
this._mouseUp = this._mouseUp.bind(this);
|
|
8051
8282
|
this._mouseOver = this._mouseOver.bind(this);
|
|
@@ -8053,22 +8284,22 @@ var MultiTouchSpace = function (_Space) {
|
|
|
8053
8284
|
this._mouseMove = this._mouseMove.bind(this);
|
|
8054
8285
|
this._mouseClick = this._mouseClick.bind(this);
|
|
8055
8286
|
this._contextMenu = this._contextMenu.bind(this);
|
|
8056
|
-
this.bindCanvas("mousedown", this._mouseDown);
|
|
8057
|
-
this.bindCanvas("mouseup", this._mouseUp);
|
|
8058
|
-
this.bindCanvas("mouseover", this._mouseOver);
|
|
8059
|
-
this.bindCanvas("mouseout", this._mouseOut);
|
|
8060
|
-
this.bindCanvas("mousemove", this._mouseMove);
|
|
8061
|
-
this.bindCanvas("click", this._mouseClick);
|
|
8062
|
-
this.bindCanvas("contextmenu", this._contextMenu);
|
|
8287
|
+
this.bindCanvas("mousedown", this._mouseDown, {}, customTarget);
|
|
8288
|
+
this.bindCanvas("mouseup", this._mouseUp, {}, customTarget);
|
|
8289
|
+
this.bindCanvas("mouseover", this._mouseOver, {}, customTarget);
|
|
8290
|
+
this.bindCanvas("mouseout", this._mouseOut, {}, customTarget);
|
|
8291
|
+
this.bindCanvas("mousemove", this._mouseMove, {}, customTarget);
|
|
8292
|
+
this.bindCanvas("click", this._mouseClick, {}, customTarget);
|
|
8293
|
+
this.bindCanvas("contextmenu", this._contextMenu, {}, customTarget);
|
|
8063
8294
|
this._hasMouse = true;
|
|
8064
8295
|
} else {
|
|
8065
|
-
this.unbindCanvas("mousedown", this._mouseDown);
|
|
8066
|
-
this.unbindCanvas("mouseup", this._mouseUp);
|
|
8067
|
-
this.unbindCanvas("mouseover", this._mouseOver);
|
|
8068
|
-
this.unbindCanvas("mouseout", this._mouseOut);
|
|
8069
|
-
this.unbindCanvas("mousemove", this._mouseMove);
|
|
8070
|
-
this.unbindCanvas("click", this._mouseClick);
|
|
8071
|
-
this.unbindCanvas("contextmenu", this._contextMenu);
|
|
8296
|
+
this.unbindCanvas("mousedown", this._mouseDown, {}, customTarget);
|
|
8297
|
+
this.unbindCanvas("mouseup", this._mouseUp, {}, customTarget);
|
|
8298
|
+
this.unbindCanvas("mouseover", this._mouseOver, {}, customTarget);
|
|
8299
|
+
this.unbindCanvas("mouseout", this._mouseOut, {}, customTarget);
|
|
8300
|
+
this.unbindCanvas("mousemove", this._mouseMove, {}, customTarget);
|
|
8301
|
+
this.unbindCanvas("click", this._mouseClick, {}, customTarget);
|
|
8302
|
+
this.unbindCanvas("contextmenu", this._contextMenu, {}, customTarget);
|
|
8072
8303
|
this._hasMouse = false;
|
|
8073
8304
|
}
|
|
8074
8305
|
return this;
|
|
@@ -8078,22 +8309,41 @@ var MultiTouchSpace = function (_Space) {
|
|
|
8078
8309
|
value: function bindTouch() {
|
|
8079
8310
|
var bind = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
8080
8311
|
var passive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
8312
|
+
var customTarget = arguments[2];
|
|
8081
8313
|
|
|
8082
8314
|
if (bind) {
|
|
8083
|
-
this.bindCanvas("touchstart", this._touchStart.bind(this), { passive: passive });
|
|
8084
|
-
this.bindCanvas("touchend", this._mouseUp.bind(this));
|
|
8085
|
-
this.bindCanvas("touchmove", this._touchMove.bind(this), { passive: passive });
|
|
8086
|
-
this.bindCanvas("touchcancel", this._mouseOut.bind(this));
|
|
8315
|
+
this.bindCanvas("touchstart", this._touchStart.bind(this), { passive: passive }, customTarget);
|
|
8316
|
+
this.bindCanvas("touchend", this._mouseUp.bind(this), {}, customTarget);
|
|
8317
|
+
this.bindCanvas("touchmove", this._touchMove.bind(this), { passive: passive }, customTarget);
|
|
8318
|
+
this.bindCanvas("touchcancel", this._mouseOut.bind(this), {}, customTarget);
|
|
8087
8319
|
this._hasTouch = true;
|
|
8088
8320
|
} else {
|
|
8089
|
-
this.unbindCanvas("touchstart", this._touchStart.bind(this), { passive: passive });
|
|
8090
|
-
this.unbindCanvas("touchend", this._mouseUp.bind(this));
|
|
8091
|
-
this.unbindCanvas("touchmove", this._touchMove.bind(this), { passive: passive });
|
|
8092
|
-
this.unbindCanvas("touchcancel", this._mouseOut.bind(this));
|
|
8321
|
+
this.unbindCanvas("touchstart", this._touchStart.bind(this), { passive: passive }, customTarget);
|
|
8322
|
+
this.unbindCanvas("touchend", this._mouseUp.bind(this), {}, customTarget);
|
|
8323
|
+
this.unbindCanvas("touchmove", this._touchMove.bind(this), { passive: passive }, customTarget);
|
|
8324
|
+
this.unbindCanvas("touchcancel", this._mouseOut.bind(this), {}, customTarget);
|
|
8093
8325
|
this._hasTouch = false;
|
|
8094
8326
|
}
|
|
8095
8327
|
return this;
|
|
8096
8328
|
}
|
|
8329
|
+
}, {
|
|
8330
|
+
key: "bindKeyboard",
|
|
8331
|
+
value: function bindKeyboard() {
|
|
8332
|
+
var bind = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
8333
|
+
|
|
8334
|
+
if (bind) {
|
|
8335
|
+
this._keyDownBind = this._keyDown.bind(this);
|
|
8336
|
+
this._keyUpBind = this._keyUp.bind(this);
|
|
8337
|
+
this.bindDoc("keydown", this._keyDownBind, {});
|
|
8338
|
+
this.bindDoc("keyup", this._keyUpBind, {});
|
|
8339
|
+
this._hasKeyboard = true;
|
|
8340
|
+
} else {
|
|
8341
|
+
this.unbindDoc("keydown", this._keyDownBind, {});
|
|
8342
|
+
this.unbindDoc("keyup", this._keyUpBind, {});
|
|
8343
|
+
this._hasKeyboard = false;
|
|
8344
|
+
}
|
|
8345
|
+
return this;
|
|
8346
|
+
}
|
|
8097
8347
|
}, {
|
|
8098
8348
|
key: "touchesToPoints",
|
|
8099
8349
|
value: function touchesToPoints(evt) {
|
|
@@ -8110,6 +8360,7 @@ var MultiTouchSpace = function (_Space) {
|
|
|
8110
8360
|
}, {
|
|
8111
8361
|
key: "_mouseAction",
|
|
8112
8362
|
value: function _mouseAction(type, evt) {
|
|
8363
|
+
if (!this.isPlaying) return;
|
|
8113
8364
|
var px = 0,
|
|
8114
8365
|
py = 0;
|
|
8115
8366
|
if (evt instanceof MouseEvent) {
|
|
@@ -8209,6 +8460,29 @@ var MultiTouchSpace = function (_Space) {
|
|
|
8209
8460
|
evt.preventDefault();
|
|
8210
8461
|
return false;
|
|
8211
8462
|
}
|
|
8463
|
+
}, {
|
|
8464
|
+
key: "_keyDown",
|
|
8465
|
+
value: function _keyDown(evt) {
|
|
8466
|
+
this._keyboardAction(UI_1.UIPointerActions.keydown, evt);
|
|
8467
|
+
return false;
|
|
8468
|
+
}
|
|
8469
|
+
}, {
|
|
8470
|
+
key: "_keyUp",
|
|
8471
|
+
value: function _keyUp(evt) {
|
|
8472
|
+
this._keyboardAction(UI_1.UIPointerActions.keyup, evt);
|
|
8473
|
+
return false;
|
|
8474
|
+
}
|
|
8475
|
+
}, {
|
|
8476
|
+
key: "_keyboardAction",
|
|
8477
|
+
value: function _keyboardAction(type, evt) {
|
|
8478
|
+
if (!this.isPlaying) return;
|
|
8479
|
+
for (var k in this.players) {
|
|
8480
|
+
if (this.players.hasOwnProperty(k)) {
|
|
8481
|
+
var v = this.players[k];
|
|
8482
|
+
if (v.action) v.action(type, evt.shiftKey ? 1 : 0, evt.altKey ? 1 : 0, evt);
|
|
8483
|
+
}
|
|
8484
|
+
}
|
|
8485
|
+
}
|
|
8212
8486
|
}, {
|
|
8213
8487
|
key: "pointer",
|
|
8214
8488
|
get: function get() {
|
|
@@ -8847,7 +9121,11 @@ exports.UIShape = {
|
|
|
8847
9121
|
rectangle: "rectangle", circle: "circle", polygon: "polygon", polyline: "polyline", line: "line"
|
|
8848
9122
|
};
|
|
8849
9123
|
exports.UIPointerActions = {
|
|
8850
|
-
up: "up", down: "down", move: "move",
|
|
9124
|
+
up: "up", down: "down", move: "move",
|
|
9125
|
+
drag: "drag", uidrag: "uidrag", drop: "drop", uidrop: "uidrop",
|
|
9126
|
+
over: "over", out: "out", enter: "enter", leave: "leave", click: "click",
|
|
9127
|
+
keydown: 'keydown', keyup: 'keyup',
|
|
9128
|
+
contextmenu: "contextmenu", all: "all"
|
|
8851
9129
|
};
|
|
8852
9130
|
|
|
8853
9131
|
var UI = function () {
|
|
@@ -9418,6 +9696,25 @@ var Util = function () {
|
|
|
9418
9696
|
};
|
|
9419
9697
|
request.send();
|
|
9420
9698
|
}
|
|
9699
|
+
}, {
|
|
9700
|
+
key: "download",
|
|
9701
|
+
value: function download(space) {
|
|
9702
|
+
var filename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'pts_canvas_image';
|
|
9703
|
+
var filetype = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "png";
|
|
9704
|
+
var quality = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
|
|
9705
|
+
|
|
9706
|
+
var ftype = filetype === 'jpg' ? 'jpeg' : filetype;
|
|
9707
|
+
space.element.toBlob(function (blob) {
|
|
9708
|
+
var link = document.createElement('a');
|
|
9709
|
+
var url = URL.createObjectURL(blob);
|
|
9710
|
+
link.href = url;
|
|
9711
|
+
link.download = filename + "." + filetype;
|
|
9712
|
+
document.body.appendChild(link);
|
|
9713
|
+
link.click();
|
|
9714
|
+
document.body.removeChild(link);
|
|
9715
|
+
URL.revokeObjectURL(url);
|
|
9716
|
+
}, "image/" + ftype, quality);
|
|
9717
|
+
}
|
|
9421
9718
|
}, {
|
|
9422
9719
|
key: "performance",
|
|
9423
9720
|
value: function performance() {
|