easyeda-mcp-pro 1.3.0 → 1.5.0

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.
Files changed (84) hide show
  1. package/README.md +18 -16
  2. package/dist/bridge/manager.js +32 -7
  3. package/dist/bridge/manager.js.map +1 -1
  4. package/dist/bridge/types.d.ts +1 -0
  5. package/dist/bridge/types.js +1 -0
  6. package/dist/bridge/types.js.map +1 -1
  7. package/dist/cli/auto-setup.js +4 -11
  8. package/dist/cli/auto-setup.js.map +1 -1
  9. package/dist/cli/client-definitions.d.ts +1 -0
  10. package/dist/cli/client-definitions.js +1 -1
  11. package/dist/cli/client-definitions.js.map +1 -1
  12. package/dist/config/profiles.js +3 -3
  13. package/dist/config/version.d.ts +1 -1
  14. package/dist/config/version.js +1 -1
  15. package/dist/layout/index.d.ts +0 -5
  16. package/dist/layout/index.js +0 -5
  17. package/dist/layout/index.js.map +1 -1
  18. package/dist/package-build-manifest.json +136 -211
  19. package/dist/remote/gateway.d.ts +5 -1
  20. package/dist/remote/gateway.js +79 -3
  21. package/dist/remote/gateway.js.map +1 -1
  22. package/dist/schematic-engine/index.d.ts +0 -1
  23. package/dist/schematic-engine/index.js +0 -1
  24. package/dist/schematic-engine/index.js.map +1 -1
  25. package/dist/schematic-model/normalization-plan.d.ts +5 -0
  26. package/dist/schematic-model/normalization-plan.js +12 -11
  27. package/dist/schematic-model/normalization-plan.js.map +1 -1
  28. package/dist/server/transports/http.js +1 -1
  29. package/dist/server/transports/http.js.map +1 -1
  30. package/dist/storage/database.d.ts +7 -33
  31. package/dist/storage/database.js +7 -155
  32. package/dist/storage/database.js.map +1 -1
  33. package/dist/storage/index.d.ts +1 -1
  34. package/dist/storage/types.d.ts +0 -17
  35. package/dist/tools/L1_catalog.js +1 -2
  36. package/dist/tools/L1_catalog.js.map +1 -1
  37. package/dist/tools/L1_pcb_read.js +109 -12
  38. package/dist/tools/L1_pcb_read.js.map +1 -1
  39. package/dist/tools/L1_pcb_write.js +105 -18
  40. package/dist/tools/L1_pcb_write.js.map +1 -1
  41. package/dist/tools/L1_schematic_read.js +2 -14
  42. package/dist/tools/L1_schematic_read.js.map +1 -1
  43. package/dist/tools/L2_workflows.js +45 -74
  44. package/dist/tools/L2_workflows.js.map +1 -1
  45. package/dist/tools/pcb-zone-preview.d.ts +40 -0
  46. package/dist/tools/pcb-zone-preview.js +76 -0
  47. package/dist/tools/pcb-zone-preview.js.map +1 -0
  48. package/dist/tools/types.d.ts +1 -1
  49. package/dist/vendors/base-http-client.d.ts +0 -10
  50. package/dist/vendors/base-http-client.js +2 -12
  51. package/dist/vendors/base-http-client.js.map +1 -1
  52. package/dist/workflows/schematic-layout-qa-geometry-rules.js +1 -8
  53. package/dist/workflows/schematic-layout-qa-geometry-rules.js.map +1 -1
  54. package/dist/workflows/schematic-layout-qa-issue.d.ts +2 -0
  55. package/dist/workflows/schematic-layout-qa-issue.js +9 -0
  56. package/dist/workflows/schematic-layout-qa-issue.js.map +1 -0
  57. package/dist/workflows/schematic-layout-qa-topology-rules.js +1 -8
  58. package/dist/workflows/schematic-layout-qa-topology-rules.js.map +1 -1
  59. package/dist/workflows/schematic-layout-qa.js +1 -8
  60. package/dist/workflows/schematic-layout-qa.js.map +1 -1
  61. package/easyeda-bridge-extension.checksums.json +8 -8
  62. package/easyeda-bridge-extension.eext +0 -0
  63. package/package.json +4 -4
  64. package/dist/layout/block-detector.d.ts +0 -3
  65. package/dist/layout/block-detector.js +0 -252
  66. package/dist/layout/block-detector.js.map +0 -1
  67. package/dist/layout/geometry.d.ts +0 -20
  68. package/dist/layout/geometry.js +0 -150
  69. package/dist/layout/geometry.js.map +0 -1
  70. package/dist/layout/graph.d.ts +0 -5
  71. package/dist/layout/graph.js +0 -185
  72. package/dist/layout/graph.js.map +0 -1
  73. package/dist/layout/operations.d.ts +0 -7
  74. package/dist/layout/operations.js +0 -170
  75. package/dist/layout/operations.js.map +0 -1
  76. package/dist/layout/types.d.ts +0 -281
  77. package/dist/layout/types.js +0 -2
  78. package/dist/layout/types.js.map +0 -1
  79. package/dist/schematic-engine/errors.d.ts +0 -22
  80. package/dist/schematic-engine/errors.js +0 -83
  81. package/dist/schematic-engine/errors.js.map +0 -1
  82. package/dist/schematic-model/model-validator.d.ts +0 -8
  83. package/dist/schematic-model/model-validator.js +0 -180
  84. package/dist/schematic-model/model-validator.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"schematic-layout-qa-topology-rules.js","sourceRoot":"","sources":["../../src/workflows/schematic-layout-qa-topology-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schematic-layout-qa-topology-rules.js","sourceRoot":"","sources":["../../src/workflows/schematic-layout-qa-topology-rules.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { issue } from './schematic-layout-qa-issue.js';
1
2
  import { collectSchematicLayoutGeometryIssues } from './schematic-layout-qa-geometry-rules.js';
2
3
  import { collectSchematicLayoutTopologyIssues } from './schematic-layout-qa-topology-rules.js';
3
4
  const DEFAULT_THRESHOLDS = {
@@ -13,14 +14,6 @@ const SEVERITY_PENALTY = {
13
14
  warning: 7,
14
15
  info: 2,
15
16
  };
16
- function issue(value) {
17
- return {
18
- ...value,
19
- affectedPrimitiveIds: value.affectedPrimitiveIds ?? [],
20
- affectedNets: value.affectedNets ?? [],
21
- affectedPins: value.affectedPins ?? [],
22
- };
23
- }
24
17
  function blockingSeverity(severity) {
25
18
  return severity === 'critical' || severity === 'error';
26
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schematic-layout-qa.js","sourceRoot":"","sources":["../../src/workflows/schematic-layout-qa.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schematic-layout-qa.js","sourceRoot":"","sources":["../../src/workflows/schematic-layout-qa.ts"],"names":[],"mappings":"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"}
@@ -2,28 +2,28 @@
2
2
  "schemaVersion": 1,
3
3
  "generatedAt": "1980-01-01T00:00:00.000Z",
4
4
  "package": "easyeda-bridge-extension.eext",
5
- "packageSize": 194983,
6
- "packageSha256": "ae4eee61b3edf588628b6f0a0acfb0c28deeb41e394fb6b44549765bde1d79db",
5
+ "packageSize": 203256,
6
+ "packageSha256": "f6d15d2f01d9d759b52611fa6aeae494ed9231eb09bfc0a8038c7c52d86ff6bd",
7
7
  "files": [
8
8
  {
9
9
  "path": "dist/dispatcher.js",
10
- "size": 222674,
11
- "sha256": "2276fbc8c8f186243e6c18a007e14ea1c37b1a5de5e84c64ab5d9ced0ee88c53"
10
+ "size": 240786,
11
+ "sha256": "fe74186464206dcf19c945fd87cc4767ed3730f1778fbd6e9a104324a596e5f0"
12
12
  },
13
13
  {
14
14
  "path": "dist/dispatcher.meta.json",
15
15
  "size": 180,
16
- "sha256": "476ccb19f4413f24c895a01b5ecef6196508df44fd31105eadd541946ec44880"
16
+ "sha256": "9f760442aaefde4ba460f9f792b2107360ab57af3a941e58e7a56afb00f23f00"
17
17
  },
18
18
  {
19
19
  "path": "dist/index.js",
20
- "size": 299606,
21
- "sha256": "cb43d6b13b4093bfc9099ec65ce9437a1eb8b87be8b1b98377cdb9d6fd59691e"
20
+ "size": 318985,
21
+ "sha256": "b51d6631f6256976be1b121202c1d33cc9b5cc218d0ee4eb69da3b8ae069b74b"
22
22
  },
23
23
  {
24
24
  "path": "extension.json",
25
25
  "size": 2357,
26
- "sha256": "e0dfc730a101d3ca8c0c23ef063f68a532c0dac6e28178a963d62fc5024590b6"
26
+ "sha256": "9000cf428426c089cbec83edbf472b2c3bcfea4db7ffe138aff027762346fc4f"
27
27
  },
28
28
  {
29
29
  "path": "images/logo.png",
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easyeda-mcp-pro",
3
- "version": "1.3.0",
3
+ "version": "1.5.0",
4
4
  "mcpName": "io.github.oaslananka/easyeda-mcp-pro",
5
5
  "description": "MCP server for EasyEDA Pro: PCB inspection, BOM, exports, and hardware review.",
6
6
  "keywords": [
@@ -130,7 +130,7 @@
130
130
  "check:environment-metadata": "tsx scripts/generate-server-environment.mts --check",
131
131
  "lint:server": "eslint src tests vitest.config.ts --max-warnings 0",
132
132
  "lint:extension": "eslint easyeda-bridge-extension/src easyeda-bridge-extension/tests easyeda-bridge-extension/scripts --max-warnings 0",
133
- "lint:scripts": "eslint scripts eslint.config.js --max-warnings 0"
133
+ "lint:scripts": "eslint scripts skills eslint.config.js --max-warnings 0"
134
134
  },
135
135
  "dependencies": {
136
136
  "@modelcontextprotocol/node": "^2.0.0",
@@ -150,7 +150,7 @@
150
150
  "@types/express": "^5.0.6",
151
151
  "@types/node": "^24.13.2",
152
152
  "@types/ws": "^8.18.1",
153
- "@vitest/coverage-v8": "^4.1.11",
153
+ "@vitest/coverage-v8": "^4.1.12",
154
154
  "eslint": "^10.6.0",
155
155
  "fast-check": "4.9.0",
156
156
  "globals": "^17.7.0",
@@ -159,6 +159,6 @@
159
159
  "typescript": "^6.0.3",
160
160
  "typescript-eslint": "^8.62.1",
161
161
  "vitepress": "^1.6.4",
162
- "vitest": "^4.1.11"
162
+ "vitest": "^4.1.12"
163
163
  }
164
164
  }
@@ -1,3 +0,0 @@
1
- import type { DetectedFunctionalBlock, ExplicitFunctionalBlock, FunctionalBlockKind, LayoutComponentInput, SchematicLayoutGraph } from './types.js';
2
- export declare function inferFunctionalBlockKind(component: LayoutComponentInput): FunctionalBlockKind;
3
- export declare function detectFunctionalBlocks(components: readonly LayoutComponentInput[], graph: SchematicLayoutGraph, explicitBlocks?: readonly ExplicitFunctionalBlock[]): DetectedFunctionalBlock[];
@@ -1,252 +0,0 @@
1
- import { compareIds } from './geometry.js';
2
- const KIND_TITLES = {
3
- 'power-input': 'Power Input',
4
- regulation: 'Power Regulation',
5
- mcu: 'Microcontroller',
6
- memory: 'Memory',
7
- crystal: 'Crystal and Clock',
8
- usb: 'USB',
9
- 'motor-driver': 'Motor Driver',
10
- 'led-chain': 'LED Chain',
11
- connector: 'Connectors',
12
- debug: 'Debug',
13
- sensor: 'Sensors',
14
- 'analog-front-end': 'Analog Front End',
15
- other: 'Other',
16
- };
17
- const KIND_PRIORITY = [
18
- 'usb',
19
- 'debug',
20
- 'regulation',
21
- 'power-input',
22
- 'mcu',
23
- 'memory',
24
- 'crystal',
25
- 'motor-driver',
26
- 'led-chain',
27
- 'sensor',
28
- 'analog-front-end',
29
- 'connector',
30
- 'other',
31
- ];
32
- function searchableText(component) {
33
- return [
34
- component.reference,
35
- component.value,
36
- component.deviceName,
37
- component.description,
38
- component.category,
39
- ...(component.tags ?? []),
40
- ]
41
- .filter((value) => typeof value === 'string')
42
- .join(' ')
43
- .toLowerCase();
44
- }
45
- function matchesAny(text, expressions) {
46
- return expressions.some((expression) => expression.test(text));
47
- }
48
- export function inferFunctionalBlockKind(component) {
49
- const text = searchableText(component);
50
- const reference = component.reference.toUpperCase();
51
- if (matchesAny(text, [/\busb(?:-?c)?\b/, /type[\s-]*c/, /usb connector/]))
52
- return 'usb';
53
- if (matchesAny(text, [/\bjtag\b/, /\bswd\b/, /debug/, /program(?:mer|ming) header/]))
54
- return 'debug';
55
- if (matchesAny(text, [
56
- /\bldo\b/,
57
- /regulat/,
58
- /buck converter/,
59
- /boost converter/,
60
- /dc[- ]?dc/,
61
- /ams1117/,
62
- /tps62/,
63
- ])) {
64
- return 'regulation';
65
- }
66
- if (matchesAny(text, [
67
- /power input/,
68
- /barrel jack/,
69
- /dc input/,
70
- /mains input/,
71
- /power entry/,
72
- /battery input/,
73
- ])) {
74
- return 'power-input';
75
- }
76
- if (matchesAny(text, [
77
- /microcontroller/,
78
- /\bmcu\b/,
79
- /rp2040/,
80
- /stm32/,
81
- /esp32/,
82
- /atmega/,
83
- /samd2/,
84
- /nrf5/,
85
- ])) {
86
- return 'mcu';
87
- }
88
- if (matchesAny(text, [/\bflash\b/, /\beeprom\b/, /\bsram\b/, /\bmemory\b/, /w25q/, /qspi/])) {
89
- return 'memory';
90
- }
91
- if (matchesAny(text, [/\bcrystal\b/, /\bxtal\b/, /oscillator/, /resonator/]) ||
92
- /^[XY]\d+/i.test(reference)) {
93
- return 'crystal';
94
- }
95
- if (matchesAny(text, [
96
- /motor driver/,
97
- /h[- ]?bridge/,
98
- /drv8\d/,
99
- /tb66/,
100
- /stepper driver/,
101
- /gate driver/,
102
- ])) {
103
- return 'motor-driver';
104
- }
105
- if (matchesAny(text, [/ws2812/, /neopixel/, /led chain/, /addressable led/]))
106
- return 'led-chain';
107
- if (matchesAny(text, [
108
- /accelerometer/,
109
- /gyroscope/,
110
- /\bimu\b/,
111
- /temperature sensor/,
112
- /pressure sensor/,
113
- /proximity sensor/,
114
- /\bsensor\b/,
115
- ])) {
116
- return 'sensor';
117
- }
118
- if (matchesAny(text, [
119
- /analog front[- ]?end/,
120
- /\bop[- ]?amp\b/,
121
- /instrumentation amplifier/,
122
- /transimpedance/,
123
- /\badc\b/,
124
- /\bdac\b/,
125
- ])) {
126
- return 'analog-front-end';
127
- }
128
- if (matchesAny(text, [/connector/, /header/, /terminal block/, /\bjack\b/]) ||
129
- /^(J|P|CN)\d+/i.test(reference)) {
130
- return 'connector';
131
- }
132
- if (matchesAny(text, [/led/, /light emitting diode/]) || /^D\d+/i.test(reference))
133
- return 'led-chain';
134
- return 'other';
135
- }
136
- function dominantKind(components) {
137
- const counts = new Map();
138
- for (const component of components) {
139
- const kind = inferFunctionalBlockKind(component);
140
- counts.set(kind, (counts.get(kind) ?? 0) + 1);
141
- }
142
- return ([...counts.entries()].sort(([kindA, countA], [kindB, countB]) => countB - countA || KIND_PRIORITY.indexOf(kindA) - KIND_PRIORITY.indexOf(kindB))[0]?.[0] ?? 'other');
143
- }
144
- function inferredBlock(id, kind, componentIds, confidence) {
145
- return {
146
- id,
147
- kind,
148
- title: KIND_TITLES[kind],
149
- componentIds: [...componentIds].sort(compareIds),
150
- source: 'inferred',
151
- confidence,
152
- locked: false,
153
- preferredOrientation: kind === 'power-input' || kind === 'regulation' || kind === 'crystal'
154
- ? 'vertical'
155
- : 'horizontal',
156
- };
157
- }
158
- function repeatSignature(block, componentById) {
159
- if (block.source === 'explicit' || block.kind === 'other' || block.componentIds.length === 0) {
160
- return undefined;
161
- }
162
- const anchorId = block.componentIds[0];
163
- if (!anchorId)
164
- return undefined;
165
- const anchor = componentById.get(anchorId);
166
- const part = (anchor?.deviceName ?? anchor?.value ?? anchor?.category ?? '').trim().toLowerCase();
167
- return part ? `${block.kind}:${part}` : undefined;
168
- }
169
- export function detectFunctionalBlocks(components, graph, explicitBlocks = []) {
170
- const componentById = new Map(components.map((component) => [component.id, component]));
171
- const claimed = new Set();
172
- const blocks = [];
173
- for (const explicit of [...explicitBlocks].sort((a, b) => compareIds(a.id, b.id))) {
174
- const componentIds = [...new Set(explicit.componentIds)]
175
- .filter((componentId) => componentById.has(componentId) && !claimed.has(componentId))
176
- .sort(compareIds);
177
- if (componentIds.length === 0)
178
- continue;
179
- componentIds.forEach((componentId) => claimed.add(componentId));
180
- blocks.push({
181
- id: explicit.id,
182
- kind: explicit.kind,
183
- title: explicit.title ?? KIND_TITLES[explicit.kind],
184
- sectionTitle: explicit.sectionTitle,
185
- componentIds,
186
- source: 'explicit',
187
- confidence: 1,
188
- locked: explicit.locked ?? false,
189
- repeatedGroupId: explicit.repeatedGroupId,
190
- preferredOrientation: explicit.preferredOrientation ?? 'horizontal',
191
- });
192
- }
193
- const groupedByDeclaredBlock = new Map();
194
- for (const component of components) {
195
- if (claimed.has(component.id) || !component.blockId)
196
- continue;
197
- const grouped = groupedByDeclaredBlock.get(component.blockId) ?? [];
198
- grouped.push(component);
199
- groupedByDeclaredBlock.set(component.blockId, grouped);
200
- }
201
- for (const [blockId, members] of [...groupedByDeclaredBlock.entries()].sort(([a], [b]) => compareIds(a, b))) {
202
- members.forEach((component) => claimed.add(component.id));
203
- blocks.push(inferredBlock(`inferred:${blockId}`, dominantKind(members), members.map((component) => component.id), 0.9));
204
- }
205
- const anchorBlockByComponent = new Map();
206
- for (const component of [...components].sort((a, b) => compareIds(a.id, b.id))) {
207
- if (claimed.has(component.id))
208
- continue;
209
- const kind = inferFunctionalBlockKind(component);
210
- if (kind === 'other')
211
- continue;
212
- const block = inferredBlock(`inferred:${kind}:${component.id}`, kind, [component.id], 0.82);
213
- blocks.push(block);
214
- anchorBlockByComponent.set(component.id, block);
215
- claimed.add(component.id);
216
- }
217
- // Attach passive/helper parts to the nearest inferred anchor using the canonical graph.
218
- for (const component of [...components].sort((a, b) => compareIds(a.id, b.id))) {
219
- if (claimed.has(component.id))
220
- continue;
221
- const candidateBlocks = (graph.adjacency[component.id] ?? [])
222
- .map((neighborId) => anchorBlockByComponent.get(neighborId))
223
- .filter((block) => block !== undefined)
224
- .sort((a, b) => KIND_PRIORITY.indexOf(a.kind) - KIND_PRIORITY.indexOf(b.kind) || compareIds(a.id, b.id));
225
- const owner = candidateBlocks[0];
226
- if (owner) {
227
- owner.componentIds.push(component.id);
228
- owner.componentIds.sort(compareIds);
229
- }
230
- else {
231
- blocks.push(inferredBlock(`inferred:other:${component.id}`, 'other', [component.id], 0.35));
232
- }
233
- claimed.add(component.id);
234
- }
235
- const repeatBuckets = new Map();
236
- for (const block of blocks) {
237
- const signature = repeatSignature(block, componentById);
238
- if (!signature)
239
- continue;
240
- const bucket = repeatBuckets.get(signature) ?? [];
241
- bucket.push(block);
242
- repeatBuckets.set(signature, bucket);
243
- }
244
- for (const [signature, repeated] of repeatBuckets) {
245
- if (repeated.length < 2)
246
- continue;
247
- for (const block of repeated)
248
- block.repeatedGroupId = `repeat:${signature}`;
249
- }
250
- return blocks.sort((a, b) => compareIds(a.id, b.id));
251
- }
252
- //# sourceMappingURL=block-detector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"block-detector.js","sourceRoot":"","sources":["../../src/layout/block-detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAS3C,MAAM,WAAW,GAAkD;IACjE,aAAa,EAAE,aAAa;IAC5B,UAAU,EAAE,kBAAkB;IAC9B,GAAG,EAAE,iBAAiB;IACtB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,mBAAmB;IAC5B,GAAG,EAAE,KAAK;IACV,cAAc,EAAE,cAAc;IAC9B,WAAW,EAAE,WAAW;IACxB,SAAS,EAAE,YAAY;IACvB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,SAAS;IACjB,kBAAkB,EAAE,kBAAkB;IACtC,KAAK,EAAE,OAAO;CACf,CAAC;AAEF,MAAM,aAAa,GAAmC;IACpD,KAAK;IACL,OAAO;IACP,YAAY;IACZ,aAAa;IACb,KAAK;IACL,QAAQ;IACR,SAAS;IACT,cAAc;IACd,WAAW;IACX,QAAQ;IACR,kBAAkB;IAClB,WAAW;IACX,OAAO;CACR,CAAC;AAEF,SAAS,cAAc,CAAC,SAA+B;IACrD,OAAO;QACL,SAAS,CAAC,SAAS;QACnB,SAAS,CAAC,KAAK;QACf,SAAS,CAAC,UAAU;QACpB,SAAS,CAAC,WAAW;QACrB,SAAS,CAAC,QAAQ;QAClB,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;KAC1B;SACE,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;SAC7D,IAAI,CAAC,GAAG,CAAC;SACT,WAAW,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY,EAAE,WAA8B;IAC9D,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,SAA+B;IACtE,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACpD,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACxF,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,4BAA4B,CAAC,CAAC;QAClF,OAAO,OAAO,CAAC;IACjB,IACE,UAAU,CAAC,IAAI,EAAE;QACf,SAAS;QACT,SAAS;QACT,gBAAgB;QAChB,iBAAiB;QACjB,WAAW;QACX,SAAS;QACT,OAAO;KACR,CAAC,EACF,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IACE,UAAU,CAAC,IAAI,EAAE;QACf,aAAa;QACb,aAAa;QACb,UAAU;QACV,aAAa;QACb,aAAa;QACb,eAAe;KAChB,CAAC,EACF,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,IACE,UAAU,CAAC,IAAI,EAAE;QACf,iBAAiB;QACjB,SAAS;QACT,QAAQ;QACR,OAAO;QACP,OAAO;QACP,QAAQ;QACR,OAAO;QACP,MAAM;KACP,CAAC,EACF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QAC5F,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IACE,UAAU,CAAC,IAAI,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;QACxE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAC3B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IACE,UAAU,CAAC,IAAI,EAAE;QACf,cAAc;QACd,cAAc;QACd,QAAQ;QACR,MAAM;QACN,gBAAgB;QAChB,aAAa;KACd,CAAC,EACF,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;QAAE,OAAO,WAAW,CAAC;IACjG,IACE,UAAU,CAAC,IAAI,EAAE;QACf,eAAe;QACf,WAAW;QACX,SAAS;QACT,oBAAoB;QACpB,iBAAiB;QACjB,kBAAkB;QAClB,YAAY;KACb,CAAC,EACF,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IACE,UAAU,CAAC,IAAI,EAAE;QACf,sBAAsB;QACtB,gBAAgB;QAChB,2BAA2B;QAC3B,gBAAgB;QAChB,SAAS;QACT,SAAS;KACV,CAAC,EACF,CAAC;QACD,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACD,IACE,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;QACvE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAC/B,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;QAC/E,OAAO,WAAW,CAAC;IACrB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,UAA2C;IAC/D,MAAM,MAAM,GAAG,IAAI,GAAG,EAA+B,CAAC;IACtD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,CACL,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CACxB,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CACnC,MAAM,GAAG,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CACjF,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,EAAU,EACV,IAAyB,EACzB,YAAsB,EACtB,UAAkB;IAElB,OAAO;QACL,EAAE;QACF,IAAI;QACJ,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC;QACxB,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QAChD,MAAM,EAAE,UAAU;QAClB,UAAU;QACV,MAAM,EAAE,KAAK;QACb,oBAAoB,EAClB,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,SAAS;YACnE,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,YAAY;KACnB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,KAA8B,EAC9B,aAAwD;IAExD,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7F,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,IAAI,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClG,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,UAA2C,EAC3C,KAA2B,EAC3B,iBAAqD,EAAE;IAEvD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACxF,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,MAAM,GAA8B,EAAE,CAAC;IAE7C,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;aACrD,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aACpF,IAAI,CAAC,UAAU,CAAC,CAAC;QACpB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACxC,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC;YACV,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;YACnD,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,YAAY;YACZ,MAAM,EAAE,UAAU;YAClB,UAAU,EAAE,CAAC;YACb,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,KAAK;YAChC,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,IAAI,YAAY;SACpE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAkC,CAAC;IACzE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,SAAS;QAC9D,MAAM,OAAO,GAAG,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IACD,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACvF,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CACjB,EAAE,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CACT,aAAa,CACX,YAAY,OAAO,EAAE,EACrB,YAAY,CAAC,OAAO,CAAC,EACrB,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EACxC,GAAG,CACJ,CACF,CAAC;IACJ,CAAC;IAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC1E,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC/E,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAAE,SAAS;QACxC,MAAM,IAAI,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,IAAI,KAAK,OAAO;YAAE,SAAS;QAC/B,MAAM,KAAK,GAAG,aAAa,CAAC,YAAY,IAAI,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5F,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,wFAAwF;IACxF,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC/E,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAAE,SAAS;QACxC,MAAM,eAAe,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;aAC1D,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;aAC3D,MAAM,CAAC,CAAC,KAAK,EAAoC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;aACxE,IAAI,CACH,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAC1F,CAAC;QACJ,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACtC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,kBAAkB,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9F,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,GAAG,EAAqC,CAAC;IACnE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACxD,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IACD,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC;QAClD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAClC,KAAK,MAAM,KAAK,IAAI,QAAQ;YAAE,KAAK,CAAC,eAAe,GAAG,UAAU,SAAS,EAAE,CAAC;IAC9E,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC"}
@@ -1,20 +0,0 @@
1
- import type { LayoutPoint, LayoutRect, LayoutSheet } from './types.js';
2
- export declare function compareIds(a: string, b: string): number;
3
- export declare function rectFromCenter(center: LayoutPoint, width: number, height: number, id?: string): LayoutRect;
4
- export declare function rectCenter(rect: LayoutRect): LayoutPoint;
5
- export declare function rectArea(rect: LayoutRect): number;
6
- export declare function rectsOverlap(a: LayoutRect, b: LayoutRect, clearance?: number): boolean;
7
- export declare function inflateRect(rect: LayoutRect, amount: number): LayoutRect;
8
- export declare function rectInsideRect(inner: LayoutRect, outer: LayoutRect): boolean;
9
- export declare function sheetRect(sheet: LayoutSheet): LayoutRect;
10
- export declare function intersectionArea(a: LayoutRect, b: LayoutRect): number;
11
- export declare function boundingRect(rects: readonly LayoutRect[]): LayoutRect | undefined;
12
- export declare function translateRect(rect: LayoutRect, dx: number, dy: number): LayoutRect;
13
- export declare function clampRect(rect: LayoutRect, bounds: LayoutRect): LayoutRect;
14
- export declare function pointInsideRect(point: LayoutPoint, rect: LayoutRect): boolean;
15
- export declare function pointsEqual(a: LayoutPoint, b: LayoutPoint): boolean;
16
- export declare function segmentsIntersect(a1: LayoutPoint, a2: LayoutPoint, b1: LayoutPoint, b2: LayoutPoint): boolean;
17
- export declare function segmentIntersectsRect(a: LayoutPoint, b: LayoutPoint, rect: LayoutRect): boolean;
18
- export declare function polylineLength(points: readonly LayoutPoint[]): number;
19
- export declare function polylineBends(points: readonly LayoutPoint[]): number;
20
- export declare function candidateGrid(bounds: LayoutRect, step: number): LayoutPoint[];
@@ -1,150 +0,0 @@
1
- const EPSILON = 1e-9;
2
- export function compareIds(a, b) {
3
- return a < b ? -1 : a > b ? 1 : 0;
4
- }
5
- export function rectFromCenter(center, width, height, id) {
6
- return {
7
- id,
8
- x: center.x - width / 2,
9
- y: center.y - height / 2,
10
- width,
11
- height,
12
- };
13
- }
14
- export function rectCenter(rect) {
15
- return { x: rect.x + rect.width / 2, y: rect.y + rect.height / 2 };
16
- }
17
- export function rectArea(rect) {
18
- return Math.max(0, rect.width) * Math.max(0, rect.height);
19
- }
20
- export function rectsOverlap(a, b, clearance = 0) {
21
- return !(a.x + a.width + clearance <= b.x ||
22
- b.x + b.width + clearance <= a.x ||
23
- a.y + a.height + clearance <= b.y ||
24
- b.y + b.height + clearance <= a.y);
25
- }
26
- export function inflateRect(rect, amount) {
27
- return {
28
- ...rect,
29
- x: rect.x - amount,
30
- y: rect.y - amount,
31
- width: rect.width + amount * 2,
32
- height: rect.height + amount * 2,
33
- };
34
- }
35
- export function rectInsideRect(inner, outer) {
36
- return (inner.x >= outer.x - EPSILON &&
37
- inner.y >= outer.y - EPSILON &&
38
- inner.x + inner.width <= outer.x + outer.width + EPSILON &&
39
- inner.y + inner.height <= outer.y + outer.height + EPSILON);
40
- }
41
- export function sheetRect(sheet) {
42
- const origin = sheet.origin ?? { x: 0, y: 0 };
43
- return { x: origin.x, y: origin.y, width: sheet.width, height: sheet.height };
44
- }
45
- export function intersectionArea(a, b) {
46
- const width = Math.max(0, Math.min(a.x + a.width, b.x + b.width) - Math.max(a.x, b.x));
47
- const height = Math.max(0, Math.min(a.y + a.height, b.y + b.height) - Math.max(a.y, b.y));
48
- return width * height;
49
- }
50
- export function boundingRect(rects) {
51
- if (rects.length === 0)
52
- return undefined;
53
- const minX = Math.min(...rects.map((rect) => rect.x));
54
- const minY = Math.min(...rects.map((rect) => rect.y));
55
- const maxX = Math.max(...rects.map((rect) => rect.x + rect.width));
56
- const maxY = Math.max(...rects.map((rect) => rect.y + rect.height));
57
- return { x: minX, y: minY, width: maxX - minX, height: maxY - minY };
58
- }
59
- export function translateRect(rect, dx, dy) {
60
- return { ...rect, x: rect.x + dx, y: rect.y + dy };
61
- }
62
- export function clampRect(rect, bounds) {
63
- return {
64
- ...rect,
65
- x: Math.min(Math.max(rect.x, bounds.x), bounds.x + Math.max(0, bounds.width - rect.width)),
66
- y: Math.min(Math.max(rect.y, bounds.y), bounds.y + Math.max(0, bounds.height - rect.height)),
67
- };
68
- }
69
- export function pointInsideRect(point, rect) {
70
- return (point.x >= rect.x - EPSILON &&
71
- point.x <= rect.x + rect.width + EPSILON &&
72
- point.y >= rect.y - EPSILON &&
73
- point.y <= rect.y + rect.height + EPSILON);
74
- }
75
- function cross(a, b, c) {
76
- return (b.x - a.x) * (c.y - a.y) - (b.y - a.y) * (c.x - a.x);
77
- }
78
- function pointOnSegment(point, a, b) {
79
- return (Math.abs(cross(a, b, point)) <= EPSILON &&
80
- point.x >= Math.min(a.x, b.x) - EPSILON &&
81
- point.x <= Math.max(a.x, b.x) + EPSILON &&
82
- point.y >= Math.min(a.y, b.y) - EPSILON &&
83
- point.y <= Math.max(a.y, b.y) + EPSILON);
84
- }
85
- export function pointsEqual(a, b) {
86
- return Math.abs(a.x - b.x) <= EPSILON && Math.abs(a.y - b.y) <= EPSILON;
87
- }
88
- export function segmentsIntersect(a1, a2, b1, b2) {
89
- const d1 = cross(a1, a2, b1);
90
- const d2 = cross(a1, a2, b2);
91
- const d3 = cross(b1, b2, a1);
92
- const d4 = cross(b1, b2, a2);
93
- if (((d1 > EPSILON && d2 < -EPSILON) || (d1 < -EPSILON && d2 > EPSILON)) &&
94
- ((d3 > EPSILON && d4 < -EPSILON) || (d3 < -EPSILON && d4 > EPSILON))) {
95
- return true;
96
- }
97
- return ((Math.abs(d1) <= EPSILON && pointOnSegment(b1, a1, a2)) ||
98
- (Math.abs(d2) <= EPSILON && pointOnSegment(b2, a1, a2)) ||
99
- (Math.abs(d3) <= EPSILON && pointOnSegment(a1, b1, b2)) ||
100
- (Math.abs(d4) <= EPSILON && pointOnSegment(a2, b1, b2)));
101
- }
102
- export function segmentIntersectsRect(a, b, rect) {
103
- if (pointInsideRect(a, rect) || pointInsideRect(b, rect))
104
- return true;
105
- const topLeft = { x: rect.x, y: rect.y + rect.height };
106
- const topRight = { x: rect.x + rect.width, y: rect.y + rect.height };
107
- const bottomLeft = { x: rect.x, y: rect.y };
108
- const bottomRight = { x: rect.x + rect.width, y: rect.y };
109
- return (segmentsIntersect(a, b, bottomLeft, bottomRight) ||
110
- segmentsIntersect(a, b, bottomRight, topRight) ||
111
- segmentsIntersect(a, b, topRight, topLeft) ||
112
- segmentsIntersect(a, b, topLeft, bottomLeft));
113
- }
114
- export function polylineLength(points) {
115
- let total = 0;
116
- for (let index = 1; index < points.length; index += 1) {
117
- const current = points[index];
118
- const previous = points[index - 1];
119
- if (!current || !previous)
120
- continue;
121
- total += Math.hypot(current.x - previous.x, current.y - previous.y);
122
- }
123
- return total;
124
- }
125
- export function polylineBends(points) {
126
- let bends = 0;
127
- for (let index = 2; index < points.length; index += 1) {
128
- const previous = points[index - 2];
129
- const current = points[index - 1];
130
- const next = points[index];
131
- if (!previous || !current || !next)
132
- continue;
133
- const first = { x: current.x - previous.x, y: current.y - previous.y };
134
- const second = { x: next.x - current.x, y: next.y - current.y };
135
- if (Math.abs(first.x * second.y - first.y * second.x) > EPSILON)
136
- bends += 1;
137
- }
138
- return bends;
139
- }
140
- export function candidateGrid(bounds, step) {
141
- const safeStep = Math.max(step, EPSILON);
142
- const points = [];
143
- for (let y = bounds.y; y <= bounds.y + bounds.height + EPSILON; y += safeStep) {
144
- for (let x = bounds.x; x <= bounds.x + bounds.width + EPSILON; x += safeStep) {
145
- points.push({ x, y });
146
- }
147
- }
148
- return points;
149
- }
150
- //# sourceMappingURL=geometry.js.map