desi76 0.1.4 → 0.1.6
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/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -332,8 +332,275 @@ var voilaDef = {
|
|
|
332
332
|
pDef: pDef2,
|
|
333
333
|
pGeom: pGeom2
|
|
334
334
|
};
|
|
335
|
+
|
|
336
|
+
// src/stone/stairs.ts
|
|
337
|
+
import {
|
|
338
|
+
point,
|
|
339
|
+
contour as contour3,
|
|
340
|
+
contourCircle as contourCircle3,
|
|
341
|
+
ctrRectangle as ctrRectangle2,
|
|
342
|
+
figure as figure3,
|
|
343
|
+
radToDeg,
|
|
344
|
+
ffix as ffix2,
|
|
345
|
+
pNumber as pNumber3,
|
|
346
|
+
pDropdown,
|
|
347
|
+
pSectionSeparator as pSectionSeparator3,
|
|
348
|
+
EExtrude as EExtrude3,
|
|
349
|
+
EBVolume as EBVolume3,
|
|
350
|
+
initGeom as initGeom3
|
|
351
|
+
} from "geometrix";
|
|
352
|
+
var pDef3 = {
|
|
353
|
+
partName: "stairs",
|
|
354
|
+
params: [
|
|
355
|
+
//pNumber(name, unit, init, min, max, step)
|
|
356
|
+
pNumber3("Nn", "stair", 25, 1, 200, 1),
|
|
357
|
+
pNumber3("Nd", "stair", 20, 2, 200, 1),
|
|
358
|
+
pNumber3("D1", "mm", 5e3, 1e3, 5e4, 1),
|
|
359
|
+
pNumber3("Wi1", "mm", 1e3, 1, 1e4, 1),
|
|
360
|
+
pNumber3("We1", "mm", 1e3, 1, 1e4, 1),
|
|
361
|
+
pNumber3("Wi2", "mm", 2e3, 1, 1e4, 1),
|
|
362
|
+
pNumber3("We2", "mm", 2e3, 1, 1e4, 1),
|
|
363
|
+
pSectionSeparator3("Details"),
|
|
364
|
+
pDropdown("spiral", ["ExtInt", "Exterior", "Interior"]),
|
|
365
|
+
pDropdown("border", ["arc", "straight"]),
|
|
366
|
+
pNumber3("H1", "mm", 200, 10, 2e3, 1),
|
|
367
|
+
pNumber3("Wc", "mm", 200, 10, 2e3, 1),
|
|
368
|
+
pNumber3("Nc", "column", 6, 1, 100, 1)
|
|
369
|
+
],
|
|
370
|
+
paramSvg: {
|
|
371
|
+
Nn: "stairs_top.svg",
|
|
372
|
+
Nd: "stairs_top.svg",
|
|
373
|
+
D1: "stairs_top.svg",
|
|
374
|
+
Wi1: "stairs_top.svg",
|
|
375
|
+
We1: "stairs_top.svg",
|
|
376
|
+
Wi2: "stairs_top.svg",
|
|
377
|
+
We2: "stairs_top.svg",
|
|
378
|
+
spiral: "stairs_top.svg",
|
|
379
|
+
border: "stairs_top.svg",
|
|
380
|
+
H1: "stairs_height.svg",
|
|
381
|
+
Wc: "stairs_top.svg",
|
|
382
|
+
Nc: "stairs_height.svg"
|
|
383
|
+
},
|
|
384
|
+
sim: {
|
|
385
|
+
tMax: 180,
|
|
386
|
+
tStep: 0.5,
|
|
387
|
+
tUpdate: 500
|
|
388
|
+
// every 0.5 second
|
|
389
|
+
}
|
|
390
|
+
};
|
|
391
|
+
function pGeom3(t, param, suffix = "") {
|
|
392
|
+
const rGeome = initGeom3(pDef3.partName + suffix);
|
|
393
|
+
const figTop = figure3();
|
|
394
|
+
const figTopColumn = figure3();
|
|
395
|
+
const figBorderI = figure3();
|
|
396
|
+
const figBorderE = figure3();
|
|
397
|
+
rGeome.logstr += `${rGeome.partName} simTime: ${t}
|
|
398
|
+
`;
|
|
399
|
+
try {
|
|
400
|
+
let spiral2 = function(ir0, irr, ird, iwc, idx, iSign) {
|
|
401
|
+
const ab = idx * 2 * aStair2;
|
|
402
|
+
const cPi = iSign < 0 ? pi : 0;
|
|
403
|
+
const aa = ab + a0 + cPi;
|
|
404
|
+
const rr = ir0 + iSign * (idx * irr - iwc);
|
|
405
|
+
const pc = point(ird, 0).rotate(p0, aa);
|
|
406
|
+
const rp1 = pc.translatePolar(ab, rr);
|
|
407
|
+
const rp2 = pc.translatePolar(ab + aStair2, rr);
|
|
408
|
+
const rp3 = pc.translatePolar(ab + 2 * aStair2, rr);
|
|
409
|
+
return [rp1, rp2, rp3];
|
|
410
|
+
}, ctrStair2 = function(pi1, pi22, pi3, pe1, pe2, pe3) {
|
|
411
|
+
const rCtr = contour3(pe1.cx, pe1.cy);
|
|
412
|
+
if (param.border === 0) {
|
|
413
|
+
rCtr.addPointA(pe2.cx, pe2.cy).addPointA(pe3.cx, pe3.cy).addSegArc2();
|
|
414
|
+
} else {
|
|
415
|
+
rCtr.addSegStrokeA(pe3.cx, pe3.cy);
|
|
416
|
+
}
|
|
417
|
+
rCtr.addSegStrokeA(pi3.cx, pi3.cy);
|
|
418
|
+
if (param.border === 0) {
|
|
419
|
+
rCtr.addPointA(pi22.cx, pi22.cy).addPointA(pi1.cx, pi1.cy).addSegArc2();
|
|
420
|
+
} else {
|
|
421
|
+
rCtr.addSegStrokeA(pi1.cx, pi1.cy);
|
|
422
|
+
}
|
|
423
|
+
rCtr.closeSegStroke();
|
|
424
|
+
return rCtr;
|
|
425
|
+
};
|
|
426
|
+
var spiral = spiral2, ctrStair = ctrStair2;
|
|
427
|
+
const pi = Math.PI;
|
|
428
|
+
const pi2 = pi / 2;
|
|
429
|
+
const R1 = param.D1 / 2;
|
|
430
|
+
const Wid = (param.Wi2 - param.Wi1) / param.Nn;
|
|
431
|
+
const Wed = (param.We2 - param.We1) / param.Nn;
|
|
432
|
+
const aStair2 = pi / param.Nd;
|
|
433
|
+
const Rid = Wid / (2 * Math.sin(aStair2));
|
|
434
|
+
const Red = Wed / (2 * Math.sin(aStair2));
|
|
435
|
+
const p0 = point(0, 0);
|
|
436
|
+
const a0 = pi2 + aStair2;
|
|
437
|
+
const columnNb = Math.floor(param.Nn / param.Nc);
|
|
438
|
+
if (param.Wi2 < param.Wi1) {
|
|
439
|
+
throw `err092: Wi2 ${param.Wi2} is too small compare to Wi1 ${param.Wi1}`;
|
|
440
|
+
}
|
|
441
|
+
if (param.We2 < param.We1) {
|
|
442
|
+
throw `err095: We2 ${param.We2} is too small compare to We1 ${param.We1}`;
|
|
443
|
+
}
|
|
444
|
+
if (R1 < param.Wi2) {
|
|
445
|
+
throw `err098: D1 ${param.D1} is too small compare to Wi2 ${param.Wi2}`;
|
|
446
|
+
}
|
|
447
|
+
if (param.Wi1 < param.Wc) {
|
|
448
|
+
throw `err110: Wi1 ${param.Wi1} is too small compare to Wc ${param.Wc}`;
|
|
449
|
+
}
|
|
450
|
+
if (param.We1 < param.Wc) {
|
|
451
|
+
throw `err113: We1 ${param.We1} is too small compare to Wc ${param.Wc}`;
|
|
452
|
+
}
|
|
453
|
+
rGeome.logstr += `Stair angle ${ffix2(radToDeg(2 * aStair2))} degree
|
|
454
|
+
`;
|
|
455
|
+
rGeome.logstr += `Stairs angle ${ffix2(param.Nn / param.Nd)} turn with ${columnNb} columns
|
|
456
|
+
`;
|
|
457
|
+
const ctrCircleRef = contourCircle3(0, 0, R1);
|
|
458
|
+
const ctrCircleSpiralI = contourCircle3(0, 0, Rid);
|
|
459
|
+
const ctrCircleSpiralE = contourCircle3(0, 0, Red);
|
|
460
|
+
figTop.addSecond(ctrCircleRef);
|
|
461
|
+
figTop.addSecond(ctrCircleSpiralI);
|
|
462
|
+
figTop.addSecond(ctrCircleSpiralE);
|
|
463
|
+
const ctrListStair = [];
|
|
464
|
+
for (let ii = 0; ii < param.Nn; ii++) {
|
|
465
|
+
const wEI = ii * (Wed + Wid) + param.We1 + param.Wi1;
|
|
466
|
+
let [pi1, pi22, pi3] = spiral2(R1 - param.Wi1, Wid, Rid, 0, ii, -1);
|
|
467
|
+
let [pe1, pe2, pe3] = spiral2(R1 + param.We1, Wed, Red, 0, ii, 1);
|
|
468
|
+
if (param.spiral === 1) {
|
|
469
|
+
[pi1, pi22, pi3] = spiral2(R1 + param.We1, Wed, Red, wEI, ii, 1);
|
|
470
|
+
}
|
|
471
|
+
if (param.spiral === 2) {
|
|
472
|
+
[pe1, pe2, pe3] = spiral2(R1 - param.Wi1, Wid, Rid, wEI, ii, -1);
|
|
473
|
+
}
|
|
474
|
+
const iCtr = ctrStair2(pi1, pi22, pi3, pe1, pe2, pe3);
|
|
475
|
+
ctrListStair.push(iCtr);
|
|
476
|
+
figTop.addMainO(iCtr);
|
|
477
|
+
}
|
|
478
|
+
figTopColumn.mergeFigure(figTop, true);
|
|
479
|
+
const ctrListColumnI = [];
|
|
480
|
+
const ctrListColumnE = [];
|
|
481
|
+
for (let ii = 0; ii < columnNb; ii++) {
|
|
482
|
+
const ii2 = (ii + 1) * param.Nc - 1;
|
|
483
|
+
const wEI = ii2 * (Wed + Wid) + param.We1 + param.Wi1;
|
|
484
|
+
let [pi1, pi22, pi3] = spiral2(R1 - param.Wi1, Wid, Rid, 0, ii2, -1);
|
|
485
|
+
let [pi4, pi5, pi6] = spiral2(R1 - param.Wi1, Wid, Rid, param.Wc, ii2, -1);
|
|
486
|
+
let [pe1, pe2, pe3] = spiral2(R1 + param.We1, Wed, Red, 0, ii2, 1);
|
|
487
|
+
let [pe4, pe5, pe6] = spiral2(R1 + param.We1, Wed, Red, param.Wc, ii2, 1);
|
|
488
|
+
if (param.spiral === 1) {
|
|
489
|
+
[pe4, pe5, pe6] = spiral2(R1 + param.We1, Wed, Red, param.Wc, ii2, 1);
|
|
490
|
+
[pi1, pi22, pi3] = spiral2(R1 + param.We1, Wed, Red, wEI, ii2, 1);
|
|
491
|
+
[pi4, pi5, pi6] = spiral2(R1 + param.We1, Wed, Red, wEI - param.Wc, ii2, 1);
|
|
492
|
+
}
|
|
493
|
+
if (param.spiral === 2) {
|
|
494
|
+
[pi4, pi5, pi6] = spiral2(R1 - param.Wi1, Wid, Rid, param.Wc, ii2, -1);
|
|
495
|
+
[pe1, pe2, pe3] = spiral2(R1 - param.Wi1, Wid, Rid, wEI, ii2, -1);
|
|
496
|
+
[pe4, pe5, pe6] = spiral2(R1 - param.Wi1, Wid, Rid, wEI - param.Wc, ii2, -1);
|
|
497
|
+
}
|
|
498
|
+
const iCtrColumnI = ctrStair2(pi1, pi22, pi3, pi4, pi5, pi6);
|
|
499
|
+
const iCtrColumnE = ctrStair2(pe1, pe2, pe3, pe4, pe5, pe6);
|
|
500
|
+
ctrListColumnI.push(iCtrColumnI);
|
|
501
|
+
ctrListColumnE.push(iCtrColumnE);
|
|
502
|
+
figTopColumn.addMainO(iCtrColumnI);
|
|
503
|
+
figTopColumn.addMainO(iCtrColumnE);
|
|
504
|
+
figTop.addSecond(iCtrColumnI);
|
|
505
|
+
figTop.addSecond(iCtrColumnE);
|
|
506
|
+
}
|
|
507
|
+
const colHeight = [];
|
|
508
|
+
let xx = 0;
|
|
509
|
+
for (let ii = 0; ii < param.Nn; ii++) {
|
|
510
|
+
const lStair = (R1 - param.Wi1 - ii * Wid) * 2 * aStair2;
|
|
511
|
+
const yy = ii * param.H1;
|
|
512
|
+
figBorderI.addMainO(ctrRectangle2(xx, yy, lStair, param.H1));
|
|
513
|
+
if ((ii + 1) % param.Nc === 0 && yy > 0) {
|
|
514
|
+
figBorderI.addMainO(ctrRectangle2(xx, 0, lStair, yy));
|
|
515
|
+
colHeight.push(yy);
|
|
516
|
+
}
|
|
517
|
+
xx += lStair;
|
|
518
|
+
}
|
|
519
|
+
figBorderE.mergeFigure(figBorderI, true);
|
|
520
|
+
xx = 0;
|
|
521
|
+
for (let ii = 0; ii < param.Nn; ii++) {
|
|
522
|
+
const lStair = (R1 + param.We1 - ii * Wed) * 2 * aStair2;
|
|
523
|
+
const yy = ii * param.H1;
|
|
524
|
+
figBorderE.addMainO(ctrRectangle2(xx, yy, lStair, param.H1));
|
|
525
|
+
if ((ii + 1) % param.Nc === 0 && yy > 0) {
|
|
526
|
+
figBorderE.addMainO(ctrRectangle2(xx, 0, lStair, yy));
|
|
527
|
+
}
|
|
528
|
+
xx += lStair;
|
|
529
|
+
}
|
|
530
|
+
const figListStair = {};
|
|
531
|
+
const figListCol = {};
|
|
532
|
+
const listVol = [];
|
|
533
|
+
const listVolName = [];
|
|
534
|
+
const designName = rGeome.partName;
|
|
535
|
+
for (const [idx, elem] of ctrListStair.entries()) {
|
|
536
|
+
const iFig = figure3();
|
|
537
|
+
iFig.addMainO(elem);
|
|
538
|
+
const iStr = `Stair${idx.toString().padStart(4, "0")}`;
|
|
539
|
+
const iFace = `face${iStr}`;
|
|
540
|
+
figListStair[iFace] = iFig;
|
|
541
|
+
listVol.push({
|
|
542
|
+
outName: `subpax_${designName}_${iStr}`,
|
|
543
|
+
face: `${designName}_${iFace}`,
|
|
544
|
+
extrudeMethod: EExtrude3.eLinearOrtho,
|
|
545
|
+
length: param.H1,
|
|
546
|
+
rotate: [0, 0, 0],
|
|
547
|
+
translate: [0, 0, idx * param.H1]
|
|
548
|
+
});
|
|
549
|
+
listVolName.push(`subpax_${designName}_${iStr}`);
|
|
550
|
+
}
|
|
551
|
+
for (const [idx, elem] of ctrListColumnI.entries()) {
|
|
552
|
+
const iFig = figure3();
|
|
553
|
+
iFig.addMainO(elem);
|
|
554
|
+
iFig.addMainO(ctrListColumnE[idx]);
|
|
555
|
+
const iStr = `Col${idx.toString().padStart(4, "0")}`;
|
|
556
|
+
const iFace = `face${iStr}`;
|
|
557
|
+
figListStair[iFace] = iFig;
|
|
558
|
+
listVol.push({
|
|
559
|
+
outName: `subpax_${designName}_${iStr}`,
|
|
560
|
+
face: `${designName}_${iFace}`,
|
|
561
|
+
extrudeMethod: EExtrude3.eLinearOrtho,
|
|
562
|
+
length: colHeight[idx],
|
|
563
|
+
rotate: [0, 0, 0],
|
|
564
|
+
translate: [0, 0, 0]
|
|
565
|
+
});
|
|
566
|
+
listVolName.push(`subpax_${designName}_${iStr}`);
|
|
567
|
+
}
|
|
568
|
+
rGeome.fig = {
|
|
569
|
+
faceTop: figTop,
|
|
570
|
+
faceTopColumn: figTopColumn,
|
|
571
|
+
faceBorderI: figBorderI,
|
|
572
|
+
faceBorderE: figBorderE,
|
|
573
|
+
...figListStair,
|
|
574
|
+
...figListCol
|
|
575
|
+
};
|
|
576
|
+
rGeome.vol = {
|
|
577
|
+
extrudes: listVol,
|
|
578
|
+
volumes: [
|
|
579
|
+
{
|
|
580
|
+
outName: `pax_${designName}`,
|
|
581
|
+
boolMethod: EBVolume3.eUnion,
|
|
582
|
+
inList: listVolName
|
|
583
|
+
}
|
|
584
|
+
]
|
|
585
|
+
};
|
|
586
|
+
rGeome.sub = {};
|
|
587
|
+
rGeome.logstr += "stairs drawn successfully!\n";
|
|
588
|
+
rGeome.calcErr = false;
|
|
589
|
+
} catch (emsg) {
|
|
590
|
+
rGeome.logstr += emsg;
|
|
591
|
+
console.log(emsg);
|
|
592
|
+
}
|
|
593
|
+
return rGeome;
|
|
594
|
+
}
|
|
595
|
+
var stairsDef = {
|
|
596
|
+
pTitle: "stairs",
|
|
597
|
+
pDescription: "an helicoidal stairs",
|
|
598
|
+
pDef: pDef3,
|
|
599
|
+
pGeom: pGeom3
|
|
600
|
+
};
|
|
335
601
|
export {
|
|
336
602
|
catamaranDef,
|
|
603
|
+
stairsDef,
|
|
337
604
|
voilaDef
|
|
338
605
|
};
|
|
339
606
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="600" height="3000" viewBox="0 0 158.75 793.75"><defs><path id="y" d="M111.955 104.89h290.758v58.695H111.955z"/><path id="x" d="M102.606 90.693h53.032v40.735h-53.032z"/><path id="w" d="M235.956 1106.379h191.378v76.09H235.956z"/><path id="v" d="M250.943 1121.751h53.801v38.045h-53.801z"/><path id="u" d="M122.776 1141.966h57.194v29.359h-57.194z"/><path id="t" d="M327.91 1097.354h37.366v30.885H327.91z"/><path id="s" d="M258.515 1100.405h46.517v33.554h-46.517z"/><path id="p" d="M353.838 1002.794h218.098v95.323H353.838z"/><path id="o" d="M542.731 201.94h38.015v24.804h-38.015z"/><path id="m" d="M376.715 93.035h171.2v45.755h-171.2z"/><path id="l" d="M303.126 1486.652h84.265v31.647h-84.265z"/><path id="k" d="M194.458 1500h57.63v36.22h-57.63z"/><path id="j" d="M370.907 807.955h63.001v33.554h-63.001z"/><path id="i" d="M455.642 917.767h130.02v72.445h-130.02z"/><path id="h" d="M468.225 438.484h40.417v22.115h-40.417z"/><path id="g" d="M450.686 460.218h64.819v34.316h-64.819z"/><path id="f" d="M451.829 366.039h48.424v33.172h-48.424z"/><path id="n" d="M475.851 281.774h65.201v35.46h-65.201z"/><path id="c" d="M25.928 25.928h279.105v76.258H25.928z"/><path id="r" d="M455.642 917.767h130.02v72.445h-130.02z"/><path id="b" d="M450.686 460.218h64.819v34.316h-64.819z"/><marker id="e" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker><marker id="q" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker><marker id="d" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker><marker id="a" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker></defs><path d="M24.231 21.686h117.583v118.783H24.231z" style="fill:#fff;stroke:#fff;stroke-width:.264583;stroke-linejoin:round"/><path d="m89.236 63.15 12.575-6.898" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#a);marker-end:url(#a)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#b);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-23.414 -.998)scale(.26458)"><tspan x="450.686" y="474.455">We1</tspan></text><path d="M95.234 81.11v40.353" style="fill:#fff;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="m102.598 58.26 2.068 7.566-3.085 1.158-2.284-6.882zM80 70.87l3.33 2.876 3.165-1.233-3.212-3.462z" style="fill:#d4aa00;stroke:none;stroke-width:.264583;stroke-linejoin:round"/><path d="M13.126 320.723h130.971v88.741H13.126z" style="fill:#fff;stroke:#fff;stroke-width:.264583;stroke-linejoin:round"/><path d="M60.92 360.243h11.556v15.836H60.92z" style="fill:#f4eed7;stroke:#decd87;stroke-width:.264583;stroke-linejoin:round"/><path d="M107.145 339.127h11.556v36.952h-11.556z" style="fill:#f4eed7;stroke:#decd87;stroke-width:.264584;stroke-linejoin:round"/><path d="M48.323 181.793h72.939v63.254H48.323z" style="fill:#fff;stroke:#fff;stroke-width:.264583;stroke-linejoin:round"/><path d="m65.822 213.56 6.713-3.795.054 8.01" style="fill:none;stroke:#ececec;stroke-width:.264583;stroke-linejoin:round"/><circle cx="67.592" cy="81.11" r="35.984" style="fill:none;stroke:#ccc;stroke-width:.264584;stroke-linejoin:round"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#c);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="scale(.26458)"><tspan x="25.928" y="40.164">src_stairs.svg</tspan></text><circle cx="67.592" cy="81.11" r="27.642" style="fill:none;stroke:#ffd5d5;stroke-width:.264583;stroke-linejoin:round"/><circle cx="67.592" cy="81.11" r="19.036" style="fill:none;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="M86.76 81.11h16.948" style="fill:#fff;stroke:teal;stroke-width:.264583;stroke-linejoin:round"/><path d="m84.944 76.873 20.378-2.825M83.33 73.746l21.336-7.92" style="fill:#fff;stroke:green;stroke-width:.264583;stroke-linejoin:round"/><path d="M86.627 81.11v40.353M103.576 81.11v40.353" style="fill:#fff;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="M95.244 119.876h8.2" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d);marker-end:url(#d)"/><path d="m80 70.87 22.598-12.61" style="fill:#fff;stroke:green;stroke-width:.264583;stroke-linejoin:round"/><path d="m86.627 81.11-1.683-4.237-1.615-3.127L80 70.87M103.576 81.11l1.746-7.062-.656-8.222-2.068-7.566" style="fill:none;stroke:purple;stroke-width:.264583;stroke-linejoin:round"/><path d="M86.627 121.463h8.607" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e);marker-end:url(#e)"/><path d="m79.148 69.44 9.98-5.425" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e);marker-end:url(#e)"/><path d="m96.646 64.666 23.405-6.76" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><path d="m100.278 72.131 20.076-13.518" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><path d="m101.791 78.992 18.865-19.975" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><path d="m93.519 91.3 17.654 8.373" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#f);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-7.869 .908)scale(.26458)"><tspan x="451.83" y="380.276">D1</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#g);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-31.95 -.076)scale(.26458)"><tspan x="450.686" y="474.455">Wi1</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#h);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-45.69 -54.034)scale(.26458)"><tspan x="468.225" y="452.721">Wi2</tspan></text><path d="m73.618 202.675 33.991 18.723" style="fill:#fff;stroke:#b3b3b3;stroke-width:.264583;stroke-linejoin:round"/><path d="m79.957 206.167 27.652 15.23M79.957 206.167l.044 31.57" style="fill:#fff;stroke:#666;stroke-width:.264583;stroke-linejoin:round"/><path d="m79.824 213.268.177 24.468M79.824 213.268l-20.77 12.936" style="fill:#fff;stroke:purple;stroke-width:.264583;stroke-linejoin:round"/><path d="m59.055 226.204 13.534-8.43M59.055 209.345l13.534 8.43" style="fill:#fff;stroke:teal;stroke-width:.264583;stroke-linejoin:round"/><path d="m59.055 209.345 6.767 4.215M65.848 205.588l-.026 7.972" style="fill:#fff;stroke:#d4aa00;stroke-width:.264583;stroke-linejoin:round"/><path d="M70.517 209.765h4.036M72.535 211.782v-4.035" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#i);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-34.437 -42.189)scale(.26458)"><tspan x="455.643" y="932.002">c=2*pi/Nd</tspan></text><path d="m73.618 202.675 6.76-12.536M79.957 206.167l6.759-12.537" style="fill:#fff;stroke:#f4eed7;stroke-width:.264583;stroke-linejoin:round"/><path d="m80.377 190.139 6.339 3.491" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e);marker-end:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#j);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-14.429 -26.363)scale(.26458)"><tspan x="370.908" y="822.192">Wd</tspan></text><path d="M26.251 376.079h110.427" style="fill:#fff;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="M26.251 370.8h11.556v5.279H26.251zM37.808 365.521h11.556v5.279H37.808zM49.364 360.243H60.92v5.279H49.364zM60.92 354.964h11.556v5.279H60.92zM72.477 349.685h11.556v5.279H72.477zM84.033 344.406h11.556v5.279H84.033zM95.589 339.127h11.556v5.279H95.589zM107.145 333.848h11.556v5.279h-11.556zM118.702 328.57h11.556v5.279h-11.556z" style="fill:#fff;stroke:teal;stroke-width:.264583;stroke-linejoin:round"/><path d="M24.664 370.8v5.279" style="fill:#f4eed7;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e);marker-end:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#k);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-33.796 -25.826)scale(.26458)"><tspan x="194.459" y="1514.236">H1</tspan></text><path d="m54.994 380.7 14.527 17.151" style="fill:#f4eed7;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><path d="m91.614 381.205-19.268 16.747" style="fill:#f4eed7;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#l);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-11.287 4.71)scale(.26458)"><tspan x="303.127" y="1500.889">Nc</tspan></text><path d="M26.251 377.666c19.136 4.473 32.242 1.71 46.226 0M72.652 377.393c19.136 4.473 32.241 1.71 46.225 0" style="fill:none;stroke:purple;stroke-width:.264583;stroke-linejoin:round"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#m);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="scale(.26458)"><tspan x="376.715" y="107.272">border:
|
|
2
|
+
</tspan><tspan x="376.715" y="127.272">[straight, arc]</tspan></text><path d="m103.91 60.227 18.26-24.817" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#n);display:inline;fill:#000;stroke:none;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-4.136 -20.48)scale(.26458)"><tspan x="475.852" y="296.01">Nn/Nd</tspan></text><path d="m102.598 58.26-2.068-7.566M99.297 60.102l-2.068-7.566" style="fill:none;stroke:#b3b3b3;stroke-width:.264583;stroke-linejoin:round"/><path d="m100.802 51.69-3.549.897" style="fill:#00f;stroke:#00f;stroke-width:.264582;stroke-linejoin:round;marker-start:url(#e);marker-end:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#o);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-48.294 -6.777)scale(.26458)"><tspan x="542.73" y="216.176">Wc</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#p);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-19.121 4.138)scale(.26458)"><tspan x="353.838" y="1017.031">a=pi-2*b
|
|
3
|
+
</tspan><tspan x="353.838" y="1037.031">2*b=pi-c
|
|
4
|
+
</tspan><tspan x="353.838" y="1057.031">a=c=2*pi/Nd</tspan></text><path d="M47.617 267.139 35.208 288.63H10.391l-12.409-21.492 12.409-21.493h24.817z" style="fill:none;stroke:#d4aa00;stroke-width:.264583;stroke-linejoin:round" transform="translate(15.536 6.155)"/><path d="M50.744 251.802h41.463" style="fill:none;stroke:teal;stroke-width:.264584;stroke-linejoin:round"/><path d="M54.932 258.467s1.678-1.646 2.018-2.724c.384-1.219-.101-3.833-.101-3.833" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-end:url(#q)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#r);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-62.496 10.295)scale(.26458)"><tspan x="455.643" y="932.002">c=2*pi/Nd</tspan></text><path d="m25.927 294.786 12.409-21.492 12.408 21.492" style="fill:none;stroke:#faa;stroke-width:.264583;stroke-linejoin:round"/><path d="M35.713 278.438s1.606 1.184 2.522 1.11c.92-.076 2.32-1.514 2.32-1.514" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-end:url(#e)"/><path d="M31.98 294.478s.487-2.269 0-3.228c-.49-.966-2.623-1.917-2.623-1.917" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-end:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#s);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-31.375 -12.409)scale(.26458)"><tspan x="258.516" y="1114.641">a</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#t);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-53.972 -2.119)scale(.26458)"><tspan x="327.91" y="1111.592">b</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#u);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(3.376 -6.812)scale(.26458)"><tspan x="122.775" y="1156.201">Wd</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#v);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-21.556 -17.489)scale(.26458)"><tspan x="250.943" y="1135.988">Rd</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#w);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="scale(.26458)"><tspan x="235.955" y="1120.615">Rd=Wd/(2*sin(a/2))</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#x);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(61.718 30.605)scale(.26458)"><tspan x="102.605" y="104.93">We2</tspan></text><path d="m73.618 202.675 33.991-18.722" style="fill:#fff;stroke:#b3b3b3;stroke-width:.264583;stroke-linejoin:round"/><path d="M82.91 207.613s1.203-2.627 1.247-4.203c.05-1.784-1.132-5.362-1.132-5.362" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-end:url(#e)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#y);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-2.502 99.804)scale(.26458)"><tspan x="111.955" y="119.127">spiral:
|
|
5
|
+
</tspan><tspan x="111.955" y="139.127">[ExtInt, Exterior, Interior]</tspan></text></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="496.01" height="336.399" viewBox="0 0 131.236 89.005"><defs><path id="c" d="M303.126 1486.652h84.265v31.647h-84.265z"/><path id="b" d="M194.458 1500h57.63v36.22h-57.63z"/><marker id="a" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker></defs><path d="M13.126 320.723h130.971v88.741H13.126z" style="fill:#fff;stroke:#fff;stroke-width:.264583;stroke-linejoin:round" transform="translate(-12.993 -320.59)"/><path d="M60.92 360.243h11.556v15.836H60.92z" style="fill:#f4eed7;stroke:#decd87;stroke-width:.264583;stroke-linejoin:round" transform="translate(-12.993 -320.59)"/><path d="M107.145 339.127h11.556v36.952h-11.556z" style="fill:#f4eed7;stroke:#decd87;stroke-width:.264584;stroke-linejoin:round" transform="translate(-12.993 -320.59)"/><path d="M26.251 376.079h110.427" style="fill:#fff;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round" transform="translate(-12.993 -320.59)"/><path d="M26.251 370.8h11.556v5.279H26.251zM37.808 365.521h11.556v5.279H37.808zM49.364 360.243H60.92v5.279H49.364zM60.92 354.964h11.556v5.279H60.92zM72.477 349.685h11.556v5.279H72.477zM84.033 344.406h11.556v5.279H84.033zM95.589 339.127h11.556v5.279H95.589zM107.145 333.848h11.556v5.279h-11.556zM118.702 328.57h11.556v5.279h-11.556z" style="fill:#fff;stroke:teal;stroke-width:.264583;stroke-linejoin:round" transform="translate(-12.993 -320.59)"/><path d="M24.664 370.8v5.279" style="fill:#f4eed7;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#a);marker-end:url(#a)" transform="translate(-12.993 -320.59)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#b);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-46.79 -346.417)scale(.26458)"><tspan x="194.459" y="1514.236">H1</tspan></text><path d="m54.994 380.7 14.527 17.151" style="fill:#f4eed7;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#a)" transform="translate(-12.993 -320.59)"/><path d="m91.614 381.205-19.268 16.747" style="fill:#f4eed7;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#a)" transform="translate(-12.993 -320.59)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#c);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-24.28 -315.881)scale(.26458)"><tspan x="303.127" y="1500.889">Nc</tspan></text><path d="M26.251 377.666c19.136 4.473 32.242 1.71 46.226 0M72.652 377.393c19.136 4.473 32.241 1.71 46.225 0" style="fill:none;stroke:purple;stroke-width:.264583;stroke-linejoin:round" transform="translate(-12.993 -320.59)"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="276.673" height="240.069" viewBox="0 0 73.203 63.518"><defs><path id="c" d="M370.907 807.955h63.001v33.554h-63.001z"/><path id="b" d="M455.642 917.767h130.02v72.445h-130.02z"/><marker id="a" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker></defs><path d="M48.323 211.956h72.939v63.254H48.323z" style="fill:#fff;stroke:#fff;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="m65.822 243.723 6.713-3.796.054 8.01" style="fill:none;stroke:#ececec;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="M73.618 232.838h38.806M73.618 232.838l33.991 18.722" style="fill:#fff;stroke:#b3b3b3;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="m79.957 236.33 27.652 15.23M79.957 236.33 80 267.898" style="fill:#fff;stroke:#666;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="m79.824 243.431.177 24.468M79.824 243.431l-20.77 12.936" style="fill:#fff;stroke:purple;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="m59.055 256.367 13.534-8.43M59.055 239.508l13.534 8.43" style="fill:#fff;stroke:teal;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="m59.055 239.508 6.767 4.215M65.848 235.75l-.026 7.973" style="fill:#fff;stroke:#d4aa00;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="M70.517 239.927h4.036M72.535 241.945v-4.035" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="M86.154 239.597s1.678-1.646 2.018-2.723c.384-1.22-.101-3.834-.101-3.834" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-end:url(#a)" transform="translate(-48.19 -211.823)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#b);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-79.465 -220.398)scale(.26458)"><tspan x="455.643" y="932.002">2*pi/Nd</tspan></text><path d="m73.618 232.838 6.76-12.536M79.957 236.33l6.759-12.537" style="fill:#fff;stroke:#f4eed7;stroke-width:.264583;stroke-linejoin:round" transform="translate(-48.19 -211.823)"/><path d="m80.377 220.302 6.339 3.49" style="fill:#fff;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#a);marker-end:url(#a)" transform="translate(-48.19 -211.823)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#c);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-62.62 -208.024)scale(.26458)"><tspan x="370.908" y="822.192">Wd</tspan></text></svg>
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="445.408" height="449.942" viewBox="0 0 117.847 119.047"><defs><path id="l" d="M111.955 104.89h290.758v58.695H111.955z"/><path id="k" d="M102.606 90.693h53.032v40.735h-53.032z"/><path id="j" d="M542.731 201.94h38.015v24.804h-38.015z"/><path id="h" d="M376.715 93.035h171.199v45.755H376.715z"/><path id="g" d="M468.225 438.484h40.417v22.115h-40.417z"/><path id="f" d="M450.686 460.218h64.819v34.316h-64.819z"/><path id="e" d="M451.829 366.039h48.424v33.172h-48.424z"/><path id="i" d="M475.851 281.774h65.201v35.46h-65.201z"/><path id="b" d="M450.686 460.218h64.819v34.316h-64.819z"/><marker id="d" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker><marker id="c" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker><marker id="a" markerHeight="1" markerWidth="1" orient="auto-start-reverse" preserveAspectRatio="xMidYMid" refX="0" refY="0" style="overflow:visible" viewBox="0 0 1 1"><path d="M3-3 0 0l3 3" style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:butt" transform="rotate(180 .125 0)"/></marker></defs><g transform="translate(-24.1 -21.554)"><path d="M24.231 21.686h117.583v118.783H24.231z" style="fill:#fff;stroke:#fff;stroke-width:.264583;stroke-linejoin:round"/><path d="m89.236 63.15 12.575-6.898" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#a);marker-end:url(#a)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#b);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-23.414 -.998)scale(.26458)"><tspan x="450.686" y="474.455">We1</tspan></text><path d="M95.234 81.11v40.353" style="fill:#fff;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="m102.598 58.26 2.068 7.566-3.085 1.158-2.284-6.882zM80 70.87l3.33 2.876 3.165-1.233-3.212-3.462z" style="fill:#d4aa00;stroke:none;stroke-width:.264583;stroke-linejoin:round"/><circle cx="67.592" cy="81.11" r="35.984" style="fill:none;stroke:#ccc;stroke-width:.264584;stroke-linejoin:round"/><circle cx="67.592" cy="81.11" r="27.642" style="fill:none;stroke:#ffd5d5;stroke-width:.264583;stroke-linejoin:round"/><circle cx="67.592" cy="81.11" r="19.036" style="fill:none;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="M86.76 81.11h16.948" style="fill:#fff;stroke:teal;stroke-width:.264583;stroke-linejoin:round"/><path d="m84.944 76.873 20.378-2.825M83.33 73.746l21.336-7.92" style="fill:#fff;stroke:green;stroke-width:.264583;stroke-linejoin:round"/><path d="M86.627 81.11v40.353M103.576 81.11v40.353" style="fill:#fff;stroke:#ccc;stroke-width:.264583;stroke-linejoin:round"/><path d="M95.244 119.876h8.2" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#c);marker-end:url(#c)"/><path d="m80 70.87 22.598-12.61" style="fill:#fff;stroke:green;stroke-width:.264583;stroke-linejoin:round"/><path d="m86.627 81.11-1.683-4.237-1.615-3.127L80 70.87M103.576 81.11l1.746-7.062-.656-8.222-2.068-7.566" style="fill:none;stroke:purple;stroke-width:.264583;stroke-linejoin:round"/><path d="M86.627 121.463h8.607" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d);marker-end:url(#d)"/><path d="m79.148 69.44 9.98-5.425" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d);marker-end:url(#d)"/><path d="m96.646 64.666 23.405-6.76" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d)"/><path d="m100.278 72.131 20.076-13.518" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d)"/><path d="m101.791 78.992 18.865-19.975" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d)"/><path d="m93.519 91.3 17.654 8.373" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#e);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-7.869 .908)scale(.26458)"><tspan x="451.83" y="380.276">D1</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#f);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-31.95 -.076)scale(.26458)"><tspan x="450.686" y="474.455">Wi1</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#g);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-45.69 -54.034)scale(.26458)"><tspan x="468.225" y="452.721">Wi2</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#h);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="scale(.26458)"><tspan x="376.715" y="107.272">border:
|
|
2
|
+
</tspan><tspan x="376.715" y="127.272">[straight, arc]</tspan></text><path d="m103.91 60.227 18.26-24.817" style="fill:none;stroke:#00f;stroke-width:.264583;stroke-linejoin:round;marker-start:url(#d)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#i);display:inline;fill:#000;stroke:none;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-4.136 -20.48)scale(.26458)"><tspan x="475.852" y="296.01">Nn/Nd</tspan></text><path d="m102.598 58.26-2.068-7.566M99.297 60.102l-2.068-7.566" style="fill:none;stroke:#b3b3b3;stroke-width:.264583;stroke-linejoin:round"/><path d="m100.802 51.69-3.549.897" style="fill:#00f;stroke:#00f;stroke-width:.264582;stroke-linejoin:round;marker-start:url(#d);marker-end:url(#d)"/><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#j);display:inline;fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-48.294 -6.777)scale(.26458)"><tspan x="542.73" y="216.176">Wc</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#k);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(61.718 30.605)scale(.26458)"><tspan x="102.605" y="104.93">We2</tspan></text><text xml:space="preserve" style="font-size:16px;line-height:normal;font-family:"Liberation Mono";-inkscape-font-specification:"Liberation Mono";text-decoration-color:#000;white-space:pre;shape-inside:url(#l);fill:#000;stroke-width:1;-inkscape-stroke:none;stop-color:#000" transform="translate(-2.502 99.804)scale(.26458)"><tspan x="111.955" y="119.127">spiral:
|
|
3
|
+
</tspan><tspan x="111.955" y="139.127">[ExtInt, Exterior, Interior]</tspan></text></g></svg>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "desi76",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "A collection of 3D-designs",
|
|
5
5
|
"private": false,
|
|
6
6
|
"repository": {
|
|
@@ -49,27 +49,28 @@
|
|
|
49
49
|
"test:unit:once": "vitest --run",
|
|
50
50
|
"ci": "run-s check build pretty lint test:unit:once svgo",
|
|
51
51
|
"svgo1": "svgo -f src/boat/svg -o dist/pgdsvg/",
|
|
52
|
-
"
|
|
52
|
+
"svgo2": "svgo -f src/stone/svg -o dist/pgdsvg/",
|
|
53
|
+
"svgo": "run-s svgo1 svgo2",
|
|
53
54
|
"browserBundleA": "esbuild src/boat/catamaran.ts --bundle --format=esm --outfile=dist2/catamaran.js",
|
|
54
55
|
"browserBundleAll": "esbuild dist/index.js --bundle --format=esm --outfile=dist2/desi76.js",
|
|
55
56
|
"clean": "rimraf dist dist2 node_modules"
|
|
56
57
|
},
|
|
57
58
|
"dependencies": {
|
|
58
|
-
"geometrix": "^1.0.
|
|
59
|
+
"geometrix": "^1.0.24"
|
|
59
60
|
},
|
|
60
61
|
"devDependencies": {
|
|
61
62
|
"@eslint/js": "^9.10.0",
|
|
62
63
|
"@types/eslint__js": "^8.42.3",
|
|
63
|
-
"esbuild": "^0.25.
|
|
64
|
-
"eslint": "^9.
|
|
65
|
-
"eslint-config-prettier": "^10.1.
|
|
64
|
+
"esbuild": "^0.25.9",
|
|
65
|
+
"eslint": "^9.33.0",
|
|
66
|
+
"eslint-config-prettier": "^10.1.8",
|
|
66
67
|
"npm-run-all2": "^8.0.4",
|
|
67
68
|
"prettier": "^3.6.2",
|
|
68
69
|
"rimraf": "^6.0.1",
|
|
69
70
|
"svgo": "^4.0.0",
|
|
70
71
|
"tsup": "^8.5.0",
|
|
71
|
-
"typescript": "^5.
|
|
72
|
-
"typescript-eslint": "^8.
|
|
72
|
+
"typescript": "^5.9.2",
|
|
73
|
+
"typescript-eslint": "^8.40.0",
|
|
73
74
|
"vitest": "^3.2.4"
|
|
74
75
|
}
|
|
75
76
|
}
|