@wcardinal/wcardinal-ui 0.150.1 → 0.150.2
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/types/wcardinal/ui/shape/e-shape-connector-bodies.d.ts +1 -1
- package/dist/wcardinal/ui/shape/e-shape-connector-bodies.js +24 -3
- package/dist/wcardinal/ui/shape/e-shape-connector-bodies.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js +3 -2
- package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +1 -1
- package/dist/wcardinal-ui-theme-dark.min.js +1 -1
- package/dist/wcardinal-ui-theme-white.js +1 -1
- package/dist/wcardinal-ui-theme-white.min.js +1 -1
- package/dist/wcardinal-ui.cjs.js +28 -6
- package/dist/wcardinal-ui.js +28 -6
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,14 +5,35 @@
|
|
|
5
5
|
var EShapeConnectorBodies = /** @class */ (function () {
|
|
6
6
|
function EShapeConnectorBodies() {
|
|
7
7
|
}
|
|
8
|
-
EShapeConnectorBodies.from = function (values) {
|
|
8
|
+
EShapeConnectorBodies.from = function (values, tailMargin, headMargin) {
|
|
9
9
|
var result = [];
|
|
10
10
|
var length = values.length;
|
|
11
11
|
if (4 < length) {
|
|
12
|
+
var threshold = 0.000001;
|
|
12
13
|
var x0 = values[0];
|
|
13
14
|
var y0 = values[1];
|
|
15
|
+
if (tailMargin !== 0) {
|
|
16
|
+
var ex = x0 - values[2];
|
|
17
|
+
var ey = y0 - values[3];
|
|
18
|
+
var n = ex * ex + ey * ey;
|
|
19
|
+
if (threshold < n) {
|
|
20
|
+
var f = tailMargin / Math.sqrt(n);
|
|
21
|
+
x0 += ex * f;
|
|
22
|
+
y0 += ey * f;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
14
25
|
var x1 = values[length - 2];
|
|
15
26
|
var y1 = values[length - 1];
|
|
27
|
+
if (headMargin !== 0) {
|
|
28
|
+
var ex = x1 - values[length - 4];
|
|
29
|
+
var ey = y1 - values[length - 3];
|
|
30
|
+
var n = ex * ex + ey * ey;
|
|
31
|
+
if (threshold < n) {
|
|
32
|
+
var f = headMargin / Math.sqrt(n);
|
|
33
|
+
x1 += ex * f;
|
|
34
|
+
y1 += ey * f;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
16
37
|
var cx = (x1 + x0) * 0.5;
|
|
17
38
|
var cy = (y1 + y0) * 0.5;
|
|
18
39
|
var dx = x1 - x0;
|
|
@@ -21,11 +42,11 @@ var EShapeConnectorBodies = /** @class */ (function () {
|
|
|
21
42
|
var c = Math.cos(a);
|
|
22
43
|
var s = Math.sin(a);
|
|
23
44
|
var l = dx * dx + dy * dy;
|
|
24
|
-
var m =
|
|
45
|
+
var m = threshold < l ? 1 / Math.sqrt(l) : 1;
|
|
25
46
|
for (var i = 2, imax = length - 2; i < imax; i += 2) {
|
|
26
47
|
var x = values[i + 0] - cx;
|
|
27
48
|
var y = values[i + 1] - cy;
|
|
28
|
-
result.push((c * x
|
|
49
|
+
result.push((c * x + s * y) * m, (c * y - s * x) * m);
|
|
29
50
|
}
|
|
30
51
|
}
|
|
31
52
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-connector-bodies.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-connector-bodies.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;IAAA;
|
|
1
|
+
{"version":3,"file":"e-shape-connector-bodies.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-connector-bodies.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport class EShapeConnectorBodies {\n\tstatic from(values: number[], tailMargin: number, headMargin: number): number[] {\n\t\tconst result: number[] = [];\n\t\tconst length = values.length;\n\t\tif (4 < length) {\n\t\t\tconst threshold = 0.000001;\n\n\t\t\tlet x0 = values[0];\n\t\t\tlet y0 = values[1];\n\t\t\tif (tailMargin !== 0) {\n\t\t\t\tconst ex = x0 - values[2];\n\t\t\t\tconst ey = y0 - values[3];\n\t\t\t\tconst n = ex * ex + ey * ey;\n\t\t\t\tif (threshold < n) {\n\t\t\t\t\tconst f = tailMargin / Math.sqrt(n);\n\t\t\t\t\tx0 += ex * f;\n\t\t\t\t\ty0 += ey * f;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet x1 = values[length - 2];\n\t\t\tlet y1 = values[length - 1];\n\t\t\tif (headMargin !== 0) {\n\t\t\t\tconst ex = x1 - values[length - 4];\n\t\t\t\tconst ey = y1 - values[length - 3];\n\t\t\t\tconst n = ex * ex + ey * ey;\n\t\t\t\tif (threshold < n) {\n\t\t\t\t\tconst f = headMargin / Math.sqrt(n);\n\t\t\t\t\tx1 += ex * f;\n\t\t\t\t\ty1 += ey * f;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst cx = (x1 + x0) * 0.5;\n\t\t\tconst cy = (y1 + y0) * 0.5;\n\t\t\tconst dx = x1 - x0;\n\t\t\tconst dy = y1 - y0;\n\t\t\tconst a = Math.atan2(dy, dx);\n\t\t\tconst c = Math.cos(a);\n\t\t\tconst s = Math.sin(a);\n\t\t\tconst l = dx * dx + dy * dy;\n\t\t\tconst m = threshold < l ? 1 / Math.sqrt(l) : 1;\n\t\t\tfor (let i = 2, imax = length - 2; i < imax; i += 2) {\n\t\t\t\tconst x = values[i + 0] - cx;\n\t\t\t\tconst y = values[i + 1] - cy;\n\t\t\t\tresult.push((c * x + s * y) * m, (c * y - s * x) * m);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
|
|
@@ -24,7 +24,8 @@ export var onConnectorLineDeserialized = function (item, shape, mapping, manager
|
|
|
24
24
|
var points = shape.points;
|
|
25
25
|
points.deserialize(parsed[1], manager);
|
|
26
26
|
// Edge
|
|
27
|
-
shape.edge
|
|
27
|
+
var edge = shape.edge;
|
|
28
|
+
edge.deserialize(parsed[0], mapping, manager);
|
|
28
29
|
// Body
|
|
29
30
|
var body = shape.body;
|
|
30
31
|
var bodyId = parsed[2];
|
|
@@ -33,7 +34,7 @@ export var onConnectorLineDeserialized = function (item, shape, mapping, manager
|
|
|
33
34
|
}
|
|
34
35
|
else {
|
|
35
36
|
// The following is for backward compatibility.
|
|
36
|
-
body.set(EShapeConnectorBodies.from(points.values));
|
|
37
|
+
body.set(EShapeConnectorBodies.from(points.values, edge.tail.margin, edge.head.margin));
|
|
37
38
|
}
|
|
38
39
|
// Unlock
|
|
39
40
|
shape.unlock();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserialize-connector-line.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/deserialize-connector-line.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,CAAC,IAAM,wBAAwB,GAAG,UACvC,IAA4B,EAC5B,OAA6C;IAE7C,OAAO,kBAAkB,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;AACjF,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,2BAA2B,GAAG,UAC1C,IAA4B,EAC5B,KAAa,EACb,OAA0B,EAC1B,OAA6C;IAE7C,IAAI,KAAK,YAAY,mBAAmB,EAAE;QACzC,IAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,UAAU,IAAI,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE;YACrD,IAAI,MAAM,GAAG,OAAO,CAAC,YAAY,CAA4B,UAAU,CAAC,CAAC;YACzE,IAAI,MAAM,IAAI,IAAI,EAAE;gBACnB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAA8B,CAAC;gBACxE,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"deserialize-connector-line.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/deserialize-connector-line.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,CAAC,IAAM,wBAAwB,GAAG,UACvC,IAA4B,EAC5B,OAA6C;IAE7C,OAAO,kBAAkB,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;AACjF,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,2BAA2B,GAAG,UAC1C,IAA4B,EAC5B,KAAa,EACb,OAA0B,EAC1B,OAA6C;IAE7C,IAAI,KAAK,YAAY,mBAAmB,EAAE;QACzC,IAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,UAAU,IAAI,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE;YACrD,IAAI,MAAM,GAAG,OAAO,CAAC,YAAY,CAA4B,UAAU,CAAC,CAAC;YACzE,IAAI,MAAM,IAAI,IAAI,EAAE;gBACnB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAA8B,CAAC;gBACxE,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aACzC;YAED,OAAO;YACP,KAAK,CAAC,IAAI,EAAE,CAAC;YAEb,SAAS;YACT,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAEvC,OAAO;YACP,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACxB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAE9C,OAAO;YACP,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACxB,IAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,MAAM,IAAI,IAAI,EAAE;gBACnB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;aAC3C;iBAAM;gBACN,+CAA+C;gBAC/C,IAAI,CAAC,GAAG,CACP,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAC7E,CAAC;aACF;YAED,SAAS;YACT,KAAK,CAAC,MAAM,EAAE,CAAC;SACf;KACD;AACF,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeConnectorBodies } from \"../e-shape-connector-bodies\";\nimport { EShapeDeserializer } from \"../e-shape-deserializer\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapeUuidMapping } from \"../e-shape-uuid-mapping\";\nimport { EShapeConnectorLine } from \"./e-shape-connector-line\";\n\nexport const deserializeConnectorLine = (\n\titem: DDiagramSerializedItem,\n\tmanager: EShapeResourceManagerDeserialization\n): Promise<EShapeConnectorLine> | EShapeConnectorLine | null => {\n\treturn EShapeDeserializer.deserialize(item, manager, new EShapeConnectorLine());\n};\n\nexport const onConnectorLineDeserialized = (\n\titem: DDiagramSerializedItem,\n\tshape: EShape,\n\tmapping: EShapeUuidMapping,\n\tmanager: EShapeResourceManagerDeserialization\n): void => {\n\tif (shape instanceof EShapeConnectorLine) {\n\t\tconst resources = manager.resources;\n\t\tconst resourceId = item[15];\n\t\tif (0 <= resourceId && resourceId < resources.length) {\n\t\t\tlet parsed = manager.getExtension<[number, number, number?]>(resourceId);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[resourceId]) as [number, number, number?];\n\t\t\t\tmanager.setExtension(resourceId, parsed);\n\t\t\t}\n\n\t\t\t// Lock\n\t\t\tshape.lock();\n\n\t\t\t// Points\n\t\t\tconst points = shape.points;\n\t\t\tpoints.deserialize(parsed[1], manager);\n\n\t\t\t// Edge\n\t\t\tconst edge = shape.edge;\n\t\t\tedge.deserialize(parsed[0], mapping, manager);\n\n\t\t\t// Body\n\t\t\tconst body = shape.body;\n\t\t\tconst bodyId = parsed[2];\n\t\t\tif (bodyId != null) {\n\t\t\t\tbody.deserialize(bodyId, mapping, manager);\n\t\t\t} else {\n\t\t\t\t// The following is for backward compatibility.\n\t\t\t\tbody.set(\n\t\t\t\t\tEShapeConnectorBodies.from(points.values, edge.tail.margin, edge.head.margin)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Unlock\n\t\t\tshape.unlock();\n\t\t}\n\t}\n};\n"]}
|
package/dist/wcardinal-ui.cjs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
Winter Cardinal UI v0.150.
|
|
2
|
+
Winter Cardinal UI v0.150.2
|
|
3
3
|
Copyright (C) 2019 Toshiba Corporation
|
|
4
4
|
SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
|
|
@@ -30918,14 +30918,35 @@ var createLineUploaded = function (buffer, shape, voffset, ioffset, antialiasWei
|
|
|
30918
30918
|
var EShapeConnectorBodies = /** @class */ (function () {
|
|
30919
30919
|
function EShapeConnectorBodies() {
|
|
30920
30920
|
}
|
|
30921
|
-
EShapeConnectorBodies.from = function (values) {
|
|
30921
|
+
EShapeConnectorBodies.from = function (values, tailMargin, headMargin) {
|
|
30922
30922
|
var result = [];
|
|
30923
30923
|
var length = values.length;
|
|
30924
30924
|
if (4 < length) {
|
|
30925
|
+
var threshold = 0.000001;
|
|
30925
30926
|
var x0 = values[0];
|
|
30926
30927
|
var y0 = values[1];
|
|
30928
|
+
if (tailMargin !== 0) {
|
|
30929
|
+
var ex = x0 - values[2];
|
|
30930
|
+
var ey = y0 - values[3];
|
|
30931
|
+
var n = ex * ex + ey * ey;
|
|
30932
|
+
if (threshold < n) {
|
|
30933
|
+
var f = tailMargin / Math.sqrt(n);
|
|
30934
|
+
x0 += ex * f;
|
|
30935
|
+
y0 += ey * f;
|
|
30936
|
+
}
|
|
30937
|
+
}
|
|
30927
30938
|
var x1 = values[length - 2];
|
|
30928
30939
|
var y1 = values[length - 1];
|
|
30940
|
+
if (headMargin !== 0) {
|
|
30941
|
+
var ex = x1 - values[length - 4];
|
|
30942
|
+
var ey = y1 - values[length - 3];
|
|
30943
|
+
var n = ex * ex + ey * ey;
|
|
30944
|
+
if (threshold < n) {
|
|
30945
|
+
var f = headMargin / Math.sqrt(n);
|
|
30946
|
+
x1 += ex * f;
|
|
30947
|
+
y1 += ey * f;
|
|
30948
|
+
}
|
|
30949
|
+
}
|
|
30929
30950
|
var cx = (x1 + x0) * 0.5;
|
|
30930
30951
|
var cy = (y1 + y0) * 0.5;
|
|
30931
30952
|
var dx = x1 - x0;
|
|
@@ -30934,11 +30955,11 @@ var EShapeConnectorBodies = /** @class */ (function () {
|
|
|
30934
30955
|
var c = Math.cos(a);
|
|
30935
30956
|
var s = Math.sin(a);
|
|
30936
30957
|
var l = dx * dx + dy * dy;
|
|
30937
|
-
var m =
|
|
30958
|
+
var m = threshold < l ? 1 / Math.sqrt(l) : 1;
|
|
30938
30959
|
for (var i = 2, imax = length - 2; i < imax; i += 2) {
|
|
30939
30960
|
var x = values[i + 0] - cx;
|
|
30940
30961
|
var y = values[i + 1] - cy;
|
|
30941
|
-
result.push((c * x
|
|
30962
|
+
result.push((c * x + s * y) * m, (c * y - s * x) * m);
|
|
30942
30963
|
}
|
|
30943
30964
|
}
|
|
30944
30965
|
return result;
|
|
@@ -31738,7 +31759,8 @@ var onConnectorLineDeserialized = function (item, shape, mapping, manager) {
|
|
|
31738
31759
|
var points = shape.points;
|
|
31739
31760
|
points.deserialize(parsed[1], manager);
|
|
31740
31761
|
// Edge
|
|
31741
|
-
shape.edge
|
|
31762
|
+
var edge = shape.edge;
|
|
31763
|
+
edge.deserialize(parsed[0], mapping, manager);
|
|
31742
31764
|
// Body
|
|
31743
31765
|
var body = shape.body;
|
|
31744
31766
|
var bodyId = parsed[2];
|
|
@@ -31747,7 +31769,7 @@ var onConnectorLineDeserialized = function (item, shape, mapping, manager) {
|
|
|
31747
31769
|
}
|
|
31748
31770
|
else {
|
|
31749
31771
|
// The following is for backward compatibility.
|
|
31750
|
-
body.set(EShapeConnectorBodies.from(points.values));
|
|
31772
|
+
body.set(EShapeConnectorBodies.from(points.values, edge.tail.margin, edge.head.margin));
|
|
31751
31773
|
}
|
|
31752
31774
|
// Unlock
|
|
31753
31775
|
shape.unlock();
|
package/dist/wcardinal-ui.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
Winter Cardinal UI v0.150.
|
|
2
|
+
Winter Cardinal UI v0.150.2
|
|
3
3
|
Copyright (C) 2019 Toshiba Corporation
|
|
4
4
|
SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
|
|
@@ -30915,14 +30915,35 @@
|
|
|
30915
30915
|
var EShapeConnectorBodies = /** @class */ (function () {
|
|
30916
30916
|
function EShapeConnectorBodies() {
|
|
30917
30917
|
}
|
|
30918
|
-
EShapeConnectorBodies.from = function (values) {
|
|
30918
|
+
EShapeConnectorBodies.from = function (values, tailMargin, headMargin) {
|
|
30919
30919
|
var result = [];
|
|
30920
30920
|
var length = values.length;
|
|
30921
30921
|
if (4 < length) {
|
|
30922
|
+
var threshold = 0.000001;
|
|
30922
30923
|
var x0 = values[0];
|
|
30923
30924
|
var y0 = values[1];
|
|
30925
|
+
if (tailMargin !== 0) {
|
|
30926
|
+
var ex = x0 - values[2];
|
|
30927
|
+
var ey = y0 - values[3];
|
|
30928
|
+
var n = ex * ex + ey * ey;
|
|
30929
|
+
if (threshold < n) {
|
|
30930
|
+
var f = tailMargin / Math.sqrt(n);
|
|
30931
|
+
x0 += ex * f;
|
|
30932
|
+
y0 += ey * f;
|
|
30933
|
+
}
|
|
30934
|
+
}
|
|
30924
30935
|
var x1 = values[length - 2];
|
|
30925
30936
|
var y1 = values[length - 1];
|
|
30937
|
+
if (headMargin !== 0) {
|
|
30938
|
+
var ex = x1 - values[length - 4];
|
|
30939
|
+
var ey = y1 - values[length - 3];
|
|
30940
|
+
var n = ex * ex + ey * ey;
|
|
30941
|
+
if (threshold < n) {
|
|
30942
|
+
var f = headMargin / Math.sqrt(n);
|
|
30943
|
+
x1 += ex * f;
|
|
30944
|
+
y1 += ey * f;
|
|
30945
|
+
}
|
|
30946
|
+
}
|
|
30926
30947
|
var cx = (x1 + x0) * 0.5;
|
|
30927
30948
|
var cy = (y1 + y0) * 0.5;
|
|
30928
30949
|
var dx = x1 - x0;
|
|
@@ -30931,11 +30952,11 @@
|
|
|
30931
30952
|
var c = Math.cos(a);
|
|
30932
30953
|
var s = Math.sin(a);
|
|
30933
30954
|
var l = dx * dx + dy * dy;
|
|
30934
|
-
var m =
|
|
30955
|
+
var m = threshold < l ? 1 / Math.sqrt(l) : 1;
|
|
30935
30956
|
for (var i = 2, imax = length - 2; i < imax; i += 2) {
|
|
30936
30957
|
var x = values[i + 0] - cx;
|
|
30937
30958
|
var y = values[i + 1] - cy;
|
|
30938
|
-
result.push((c * x
|
|
30959
|
+
result.push((c * x + s * y) * m, (c * y - s * x) * m);
|
|
30939
30960
|
}
|
|
30940
30961
|
}
|
|
30941
30962
|
return result;
|
|
@@ -31735,7 +31756,8 @@
|
|
|
31735
31756
|
var points = shape.points;
|
|
31736
31757
|
points.deserialize(parsed[1], manager);
|
|
31737
31758
|
// Edge
|
|
31738
|
-
shape.edge
|
|
31759
|
+
var edge = shape.edge;
|
|
31760
|
+
edge.deserialize(parsed[0], mapping, manager);
|
|
31739
31761
|
// Body
|
|
31740
31762
|
var body = shape.body;
|
|
31741
31763
|
var bodyId = parsed[2];
|
|
@@ -31744,7 +31766,7 @@
|
|
|
31744
31766
|
}
|
|
31745
31767
|
else {
|
|
31746
31768
|
// The following is for backward compatibility.
|
|
31747
|
-
body.set(EShapeConnectorBodies.from(points.values));
|
|
31769
|
+
body.set(EShapeConnectorBodies.from(points.values, edge.tail.margin, edge.head.margin));
|
|
31748
31770
|
}
|
|
31749
31771
|
// Unlock
|
|
31750
31772
|
shape.unlock();
|