pantograph2d 0.8.0 → 0.9.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.
- package/LICENSE +4 -658
- package/dist/QuadraticBezier-BKElJOgn.cjs +9 -0
- package/dist/QuadraticBezier-BKElJOgn.cjs.map +1 -0
- package/dist/QuadraticBezier-PcRS9HZK.js +4773 -0
- package/dist/QuadraticBezier-PcRS9HZK.js.map +1 -0
- package/dist/draw-L71G180-.cjs +2 -0
- package/dist/draw-L71G180-.cjs.map +1 -0
- package/dist/draw-N2ntigsw.js +417 -0
- package/dist/draw-N2ntigsw.js.map +1 -0
- package/dist/models-BXU-Gx3U.cjs +4 -0
- package/dist/models-BXU-Gx3U.cjs.map +1 -0
- package/dist/{Diagram-2450b2e6.js → models-BjaFYsN2.js} +278 -279
- package/dist/models-BjaFYsN2.js.map +1 -0
- package/dist/pantograph/drawShape.cjs +1 -1
- package/dist/pantograph/drawShape.cjs.map +1 -1
- package/dist/pantograph/drawShape.js +12 -14
- package/dist/pantograph/drawShape.js.map +1 -1
- package/dist/pantograph/models.cjs +1 -1
- package/dist/pantograph/models.js +2 -2
- package/dist/pantograph/svg.cjs +1 -1
- package/dist/pantograph/svg.js +5 -6
- package/dist/pantograph/svg.js.map +1 -1
- package/dist/pantograph.cjs +2 -2
- package/dist/pantograph.cjs.map +1 -1
- package/dist/pantograph.js +432 -400
- package/dist/pantograph.js.map +1 -1
- package/dist/{wrapSVG-02b823ac.cjs → svg-ZTvNxsWu.cjs} +2 -2
- package/dist/svg-ZTvNxsWu.cjs.map +1 -0
- package/dist/{wrapSVG-0ec8a111.js → svg-hNHYuj_r.js} +2 -2
- package/dist/svg-hNHYuj_r.js.map +1 -0
- package/dist/types/examples/importSVG.d.ts +4 -0
- package/dist/{algorithms → types/src/algorithms}/boolean/figureBooleans.d.ts +1 -1
- package/dist/{algorithms → types/src/algorithms}/boolean/loopBooleans.d.ts +1 -1
- package/dist/{algorithms → types/src/algorithms}/boolean/strandBoolean.d.ts +4 -4
- package/dist/{algorithms → types/src/algorithms}/boolean/strandsBetweenIntersections.d.ts +3 -3
- package/dist/types/src/algorithms/conversions/bezierToArcs.d.ts +7 -0
- package/dist/types/src/algorithms/conversions/bezierToSafeBezier.d.ts +12 -0
- package/dist/types/src/algorithms/conversions/ellipseToArcs.d.ts +0 -0
- package/dist/types/src/algorithms/conversions/ellipseToBezier.d.ts +3 -0
- package/dist/types/src/algorithms/conversions/helpers.d.ts +13 -0
- package/dist/{algorithms → types/src/algorithms}/distances/arcArcDistance.d.ts +1 -1
- package/dist/{algorithms → types/src/algorithms}/distances/genericDistance.d.ts +1 -1
- package/dist/{algorithms → types/src/algorithms}/distances/index.d.ts +1 -1
- package/dist/types/src/algorithms/distances/lineArcDistance.d.ts +3 -0
- package/dist/{algorithms → types/src/algorithms}/distances/lineLineDistance.d.ts +1 -1
- package/dist/{algorithms → types/src/algorithms}/filletSegments.d.ts +1 -1
- package/dist/{algorithms → types/src/algorithms}/intersections/arcArcIntersection.d.ts +2 -2
- package/dist/types/src/algorithms/intersections/arcEllipseArcIntersection.d.ts +3 -0
- package/dist/types/src/algorithms/intersections/arcsCubicBezierIntersection.d.ts +5 -0
- package/dist/types/src/algorithms/intersections/arcsQuadraticBezierIntersection.d.ts +5 -0
- package/dist/{algorithms → types/src/algorithms}/intersections/bezierClip.d.ts +3 -3
- package/dist/{algorithms → types/src/algorithms}/intersections/cubicBezierCubicBezierIntersection.d.ts +2 -2
- package/dist/{algorithms → types/src/algorithms}/intersections/ellipseArcEllipseArcIntersection.d.ts +2 -2
- package/dist/types/src/algorithms/intersections/ellipseEllipseIntersection.d.ts +4 -0
- package/dist/types/src/algorithms/intersections/fullLinesIntersection.d.ts +18 -0
- package/dist/{algorithms → types/src/algorithms}/intersections/index.d.ts +2 -2
- package/dist/types/src/algorithms/intersections/lineArcIntersection.d.ts +4 -0
- package/dist/types/src/algorithms/intersections/lineBezierIntersection.d.ts +5 -0
- package/dist/types/src/algorithms/intersections/lineEllipseArcIntersection.d.ts +4 -0
- package/dist/{algorithms → types/src/algorithms}/intersections/lineLineIntersection.d.ts +4 -4
- package/dist/{algorithms → types/src/algorithms}/intersections/quadraticBezierQuadraticBezierIntersection.d.ts +2 -2
- package/dist/types/src/algorithms/intersections/rayIntersections.d.ts +3 -0
- package/dist/{algorithms → types/src/algorithms}/offsets/offsetFigure.d.ts +2 -2
- package/dist/types/src/algorithms/offsets/offsetSegment.d.ts +15 -0
- package/dist/types/src/algorithms/offsets/offsetStroke.d.ts +11 -0
- package/dist/{algorithms → types/src/algorithms}/organiseLoops.d.ts +2 -2
- package/dist/types/src/algorithms/simplify.d.ts +3 -0
- package/dist/types/src/algorithms/solvers/findZeroViaNewton.d.ts +1 -0
- package/dist/{algorithms → types/src/algorithms}/stitchSegments.d.ts +1 -1
- package/dist/types/src/api/drawShape.d.ts +2 -0
- package/dist/types/src/api/models.d.ts +1 -0
- package/dist/types/src/api/svg.d.ts +1 -0
- package/dist/{booleanOperations.d.ts → types/src/booleanOperations.d.ts} +5 -5
- package/dist/types/src/conversionOperations.d.ts +8 -0
- package/dist/{draw.d.ts → types/src/draw.d.ts} +4 -4
- package/dist/{drawShape → types/src/drawShape}/drawCircle.d.ts +1 -1
- package/dist/types/src/drawShape/drawEllipse.d.ts +2 -0
- package/dist/{drawShape → types/src/drawShape}/drawRect.d.ts +1 -1
- package/dist/types/src/drawShape/drawSVGPath.d.ts +2 -0
- package/dist/types/src/drawShape/index.d.ts +4 -0
- package/dist/{export → types/src/export}/json/exportJSON.d.ts +94 -94
- package/dist/{export → types/src/export}/json/jsonDiagram.d.ts +31 -31
- package/dist/{export → types/src/export}/json/jsonFigure.d.ts +31 -31
- package/dist/{export → types/src/export}/json/jsonLoop.d.ts +16 -16
- package/dist/{export → types/src/export}/json/jsonSegment.d.ts +16 -16
- package/dist/types/src/export/svg/api.d.ts +6 -0
- package/dist/{export → types/src/export}/svg/exportSVG.d.ts +6 -6
- package/dist/{export → types/src/export}/svg/svgDiagram.d.ts +1 -1
- package/dist/{export → types/src/export}/svg/svgFigure.d.ts +1 -1
- package/dist/{export → types/src/export}/svg/svgLoop.d.ts +1 -1
- package/dist/{export → types/src/export}/svg/svgSegment.d.ts +1 -1
- package/dist/{export → types/src/export}/svg/svgStrand.d.ts +1 -1
- package/dist/{export → types/src/export}/svg/wrapSVG.d.ts +1 -1
- package/dist/types/src/import/json/importJSON.d.ts +9 -0
- package/dist/{main.d.ts → types/src/main.d.ts} +7 -7
- package/dist/{models → types/src/models}/BoundingBox.d.ts +1 -1
- package/dist/{models → types/src/models}/Diagram.d.ts +7 -7
- package/dist/{models → types/src/models}/Figure.d.ts +7 -7
- package/dist/{models → types/src/models}/Loop.d.ts +4 -4
- package/dist/{models → types/src/models}/Strand.d.ts +2 -2
- package/dist/{models → types/src/models}/Stroke.d.ts +5 -5
- package/dist/{models → types/src/models}/TransformationMatrix.d.ts +1 -1
- package/dist/types/src/models/exports.d.ts +15 -0
- package/dist/types/src/models/segments/AbstractSegment.d.ts +25 -0
- package/dist/{models → types/src/models}/segments/Arc.d.ts +5 -4
- package/dist/{models → types/src/models}/segments/CubicBezier.d.ts +11 -4
- package/dist/{models → types/src/models}/segments/EllipseArc.d.ts +5 -5
- package/dist/{models → types/src/models}/segments/Line.d.ts +4 -4
- package/dist/{models → types/src/models}/segments/QuadraticBezier.d.ts +9 -4
- package/dist/{models → types/src/models}/segments/Segment.d.ts +4 -4
- package/dist/{models → types/src/models}/segments/utils/deCasteljau.d.ts +1 -1
- package/dist/types/src/models/segments/utils/isSegment.d.ts +8 -0
- package/dist/{models → types/src/models}/utils/Transformable.d.ts +2 -2
- package/dist/{offsetOperations.d.ts → types/src/offsetOperations.d.ts} +4 -4
- package/dist/types/src/operations.d.ts +2 -0
- package/dist/types/src/utils/applyMixins.d.ts +1 -0
- package/dist/types/src/utils/listOfFigures.d.ts +4 -0
- package/dist/types/src/utils/projectPointOnLine.d.ts +3 -0
- package/dist/{utils → types/src/utils}/removeDuplicatePoints.d.ts +1 -1
- package/dist/{vectorOperations.d.ts → types/src/vectorOperations.d.ts} +1 -1
- package/package.json +4 -4
- package/dist/Diagram-2450b2e6.js.map +0 -1
- package/dist/Diagram-57e17509.cjs +0 -4
- package/dist/Diagram-57e17509.cjs.map +0 -1
- package/dist/QuadraticBezier-e116a2d6.js +0 -3647
- package/dist/QuadraticBezier-e116a2d6.js.map +0 -1
- package/dist/QuadraticBezier-e3d7218b.cjs +0 -9
- package/dist/QuadraticBezier-e3d7218b.cjs.map +0 -1
- package/dist/algorithms/distances/lineArcDistance.d.ts +0 -3
- package/dist/algorithms/intersections/arcEllipseArcIntersection.d.ts +0 -3
- package/dist/algorithms/intersections/arcsCubicBezierIntersection.d.ts +0 -5
- package/dist/algorithms/intersections/arcsQuadraticBezierIntersection.d.ts +0 -5
- package/dist/algorithms/intersections/ellipseEllipseIntersection.d.ts +0 -4
- package/dist/algorithms/intersections/lineArcIntersection.d.ts +0 -4
- package/dist/algorithms/intersections/lineBezierIntersection.d.ts +0 -5
- package/dist/algorithms/intersections/lineEllipseArcIntersection.d.ts +0 -4
- package/dist/algorithms/intersections/rayIntersections.d.ts +0 -3
- package/dist/algorithms/offsets/offsetSegment.d.ts +0 -12
- package/dist/algorithms/offsets/offsetStroke.d.ts +0 -9
- package/dist/algorithms/simplify.d.ts +0 -3
- package/dist/api/drawShape.d.ts +0 -2
- package/dist/api/models.d.ts +0 -1
- package/dist/api/svg.d.ts +0 -1
- package/dist/draw-27ac6dae.cjs +0 -2
- package/dist/draw-27ac6dae.cjs.map +0 -1
- package/dist/draw-c7b2705c.js +0 -344
- package/dist/draw-c7b2705c.js.map +0 -1
- package/dist/export/svg/api.d.ts +0 -6
- package/dist/import/json/importJSON.d.ts +0 -9
- package/dist/models/exports.d.ts +0 -15
- package/dist/models/segments/utils/isSegment.d.ts +0 -8
- package/dist/operations.d.ts +0 -2
- package/dist/utils/listOfFigures.d.ts +0 -4
- package/dist/utils/projectPointOnLine.d.ts +0 -3
- package/dist/wrapSVG-02b823ac.cjs.map +0 -1
- package/dist/wrapSVG-0ec8a111.js.map +0 -1
- /package/dist/{algorithms → types/src/algorithms}/optimisation/Brent.d.ts +0 -0
- /package/dist/{algorithms → types/src/algorithms}/optimisation/DiRect.d.ts +0 -0
- /package/dist/{algorithms → types/src/algorithms}/solvers/solvePolynomials.d.ts +0 -0
- /package/dist/{definitions.d.ts → types/src/definitions.d.ts} +0 -0
- /package/dist/{utils → types/src/utils}/allCombinations.d.ts +0 -0
- /package/dist/{utils → types/src/utils}/allPairs.d.ts +0 -0
- /package/dist/{utils → types/src/utils}/angularDistance.d.ts +0 -0
- /package/dist/{utils → types/src/utils}/range.d.ts +0 -0
- /package/dist/{utils → types/src/utils}/removeDuplicateValues.d.ts +0 -0
- /package/dist/{utils → types/src/utils}/unitAngle.d.ts +0 -0
- /package/dist/{utils → types/src/utils}/zip.d.ts +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { EllipseArc } from '../../models/segments/EllipseArc.js';
|
|
2
|
+
import { Arc } from '../../models/segments/Arc.js';
|
|
3
|
+
import { Vector } from '../../definitions.js';
|
|
4
|
+
import { QuadraticBezier } from '../../models/segments/QuadraticBezier.js';
|
|
5
|
+
export declare function arcsQuadraticBezierIntersection(arc: EllipseArc | Arc, curve: QuadraticBezier): Vector[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Vector } from
|
|
2
|
-
import { CubicBezier } from
|
|
3
|
-
import { QuadraticBezier } from
|
|
1
|
+
import { Vector } from '../../definitions.js';
|
|
2
|
+
import { CubicBezier } from '../../models/segments/CubicBezier.js';
|
|
3
|
+
import { QuadraticBezier } from '../../models/segments/QuadraticBezier.js';
|
|
4
4
|
declare class FatLine {
|
|
5
5
|
readonly firstPoint: Vector;
|
|
6
6
|
readonly lastPoint: Vector;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Vector } from
|
|
2
|
-
import { CubicBezier } from
|
|
1
|
+
import { Vector } from '../../definitions.js';
|
|
2
|
+
import { CubicBezier } from '../../models/segments/CubicBezier.js';
|
|
3
3
|
export declare function handleOverlaps(curve1: CubicBezier, curve2: CubicBezier): CubicBezier[] | null | undefined;
|
|
4
4
|
export declare function cubicBezierCubicBezierIntersection(curve1: CubicBezier, curve2: CubicBezier, includeOverlaps?: boolean): Vector[] | CubicBezier[];
|
package/dist/{algorithms → types/src/algorithms}/intersections/ellipseArcEllipseArcIntersection.d.ts
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Vector } from
|
|
2
|
-
import { EllipseArc } from
|
|
1
|
+
import { Vector } from '../../definitions.js';
|
|
2
|
+
import { EllipseArc } from '../../models/segments/EllipseArc.js';
|
|
3
3
|
export declare function ellipseArcEllipseArcIntersection(arc1: EllipseArc, arc2: EllipseArc, includeOverlaps?: boolean): Vector[] | EllipseArc[];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { EllipseArc } from '../../models/segments/EllipseArc.js';
|
|
2
|
+
import { Arc } from '../../models/segments/Arc.js';
|
|
3
|
+
import { Vector } from '../../definitions.js';
|
|
4
|
+
export declare function ellipseEllipseIntersection(arc1: EllipseArc | Arc, arc2: EllipseArc): Vector[];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Vector } from '../../definitions';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the intersection point between two full lines
|
|
4
|
+
*
|
|
5
|
+
* Note that collinear lines are not considered to intersect at all.
|
|
6
|
+
*
|
|
7
|
+
* Lines are represented by a vector V with **unit length** and a point on the line.
|
|
8
|
+
*
|
|
9
|
+
*/
|
|
10
|
+
export declare const fullLineIntersection: (line1: {
|
|
11
|
+
V: Vector;
|
|
12
|
+
firstPoint: Vector;
|
|
13
|
+
precision: number;
|
|
14
|
+
}, line2: {
|
|
15
|
+
V: Vector;
|
|
16
|
+
firstPoint: Vector;
|
|
17
|
+
precision: number;
|
|
18
|
+
}, precision?: number) => "parallel" | Vector;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Segment } from
|
|
1
|
+
import { Vector } from '../../definitions.js';
|
|
2
|
+
import { Segment } from '../../models/segments/Segment.js';
|
|
3
3
|
export declare function findIntersections(segment1: Segment, segment2: Segment, precision?: number): Vector[];
|
|
4
4
|
export declare function findIntersectionsAndOverlaps(segment1: Segment, segment2: Segment, precision?: number): {
|
|
5
5
|
intersections: Vector[];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Line } from '../../models/segments/Line.js';
|
|
2
|
+
import { CubicBezier } from '../../models/segments/CubicBezier.js';
|
|
3
|
+
import { QuadraticBezier } from '../../models/segments/QuadraticBezier.js';
|
|
4
|
+
import { Vector } from '../../definitions.js';
|
|
5
|
+
export declare function lineBezierIntersection(line: Line, curve: CubicBezier | QuadraticBezier): Vector[];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Line } from '../../models/segments/Line.js';
|
|
2
|
+
import { EllipseArc } from '../../models/segments/EllipseArc.js';
|
|
3
|
+
import { Vector } from '../../definitions.js';
|
|
4
|
+
export declare function lineEllipseArcIntersection(line: Line, arc: EllipseArc, precision?: number): Vector[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Line } from
|
|
2
|
-
import { Vector } from
|
|
1
|
+
import { Line } from '../../models/segments/Line.js';
|
|
2
|
+
import { Vector } from '../../definitions.js';
|
|
3
3
|
export declare const lineLineParams: (line1: {
|
|
4
4
|
V: Vector;
|
|
5
5
|
firstPoint: Vector;
|
|
@@ -8,10 +8,10 @@ export declare const lineLineParams: (line1: {
|
|
|
8
8
|
V: Vector;
|
|
9
9
|
firstPoint: Vector;
|
|
10
10
|
precision: number;
|
|
11
|
-
}, precision?: number) => {
|
|
11
|
+
}, precision?: number) => "parallel" | {
|
|
12
12
|
intersectionParam1: number;
|
|
13
13
|
intersectionParam2: number;
|
|
14
|
-
}
|
|
14
|
+
};
|
|
15
15
|
/**
|
|
16
16
|
* Returns the intersection point between two segment of lines
|
|
17
17
|
*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Vector } from
|
|
2
|
-
import { QuadraticBezier } from
|
|
1
|
+
import { Vector } from '../../definitions.js';
|
|
2
|
+
import { QuadraticBezier } from '../../models/segments/QuadraticBezier.js';
|
|
3
3
|
export declare function handleOverlaps(curve1: QuadraticBezier, curve2: QuadraticBezier): QuadraticBezier[] | null | undefined;
|
|
4
4
|
export declare function quadraticBezierQuadraticBezierIntersection(curve1: QuadraticBezier, curve2: QuadraticBezier, includeOverlaps?: boolean): Vector[] | QuadraticBezier[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Figure } from
|
|
2
|
-
import { Diagram } from
|
|
1
|
+
import { Figure } from '../../models/Figure';
|
|
2
|
+
import { Diagram } from '../../models/Diagram';
|
|
3
3
|
export declare function offsetFigures(figures: Figure[], offsetDistance: number): Diagram;
|
|
4
4
|
export declare function outlineStrokeFigures(figures: Figure[], width: number): Diagram;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Line } from '../../models/segments/Line.js';
|
|
2
|
+
import { Arc } from '../../models/segments/Arc.js';
|
|
3
|
+
import { Segment } from '../../models/segments/Segment.js';
|
|
4
|
+
import { Vector } from '../../definitions.js';
|
|
5
|
+
import { SafeCubicBezier, SafeQuadraticBezier } from '../conversions/bezierToSafeBezier.js';
|
|
6
|
+
export declare class DegenerateSegment {
|
|
7
|
+
readonly firstPoint: Vector;
|
|
8
|
+
readonly lastPoint: Vector;
|
|
9
|
+
constructor(firstPoint: Vector, lastPoint: Vector);
|
|
10
|
+
}
|
|
11
|
+
export type OffsettableSegment = Line | Arc | SafeCubicBezier | SafeQuadraticBezier;
|
|
12
|
+
export declare function offsetSegment(segment: OffsettableSegment, offset: number): Segment | DegenerateSegment;
|
|
13
|
+
export declare function offsetLine(line: Line, offset: number): Line;
|
|
14
|
+
export declare function offsetArc(arc: Arc, offset: number): Arc | DegenerateSegment;
|
|
15
|
+
export declare function offsetSafeBezier(curve: SafeQuadraticBezier | SafeCubicBezier, offset: number): typeof curve | DegenerateSegment;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Loop } from '../../models/Loop.js';
|
|
2
|
+
import { Segment } from '../../models/segments/Segment.js';
|
|
3
|
+
import { OffsettableSegment } from './offsetSegment.js';
|
|
4
|
+
import { Diagram } from '../../models/Diagram.js';
|
|
5
|
+
import { Stroke } from '../../models/Stroke.js';
|
|
6
|
+
import { Strand } from '../../models/Strand.js';
|
|
7
|
+
export declare const transformForOffset: (segments: Segment[]) => OffsettableSegment[];
|
|
8
|
+
export declare function rawOffsets(segmentsToOffset: OffsettableSegment[], offset: number, loop?: boolean): Segment[];
|
|
9
|
+
export declare function offsetLoop(loop: Loop, offset: number): Diagram;
|
|
10
|
+
export declare function offsetStrand(strand: Strand, offset: number): Stroke[];
|
|
11
|
+
export declare function outlineStrand(strand: Strand, width: number, endCap?: "round" | "butt"): Diagram;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Figure } from
|
|
2
|
-
import { Loop } from
|
|
1
|
+
import { Figure } from '../models/Figure';
|
|
2
|
+
import { Loop } from '../models/Loop';
|
|
3
3
|
/**
|
|
4
4
|
* Groups an array of loops such that loops that correspond to holes
|
|
5
5
|
* in other loops are set in a Figure
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function findZeroViaNewton(f: (x: number) => number, fPrime: (x: number) => number, x0: number, precision?: number, maxIterations?: number): null | number;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Segment } from
|
|
1
|
+
import { Segment } from '../models/segments/Segment.js';
|
|
2
2
|
export declare function stitchSegments(segments: Segment[], precision?: number): Segment[][];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../models/exports.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../export/svg/api.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Strand } from
|
|
2
|
-
import { Diagram } from
|
|
3
|
-
import { Figure } from
|
|
4
|
-
import { Loop } from
|
|
5
|
-
import { Stroke } from
|
|
1
|
+
import { Strand } from './models/Strand';
|
|
2
|
+
import { Diagram } from './models/Diagram';
|
|
3
|
+
import { Figure } from './models/Figure';
|
|
4
|
+
import { Loop } from './models/Loop';
|
|
5
|
+
import { Stroke } from './main';
|
|
6
6
|
export declare function fuse(first: Diagram | Figure | Loop, second: Diagram | Figure | Loop): Diagram;
|
|
7
7
|
export declare function fuseAll(shapes: (Diagram | Figure | Loop)[]): Diagram;
|
|
8
8
|
export declare function cut(first: Diagram | Figure | Loop, second: Diagram | Figure | Loop): Diagram;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Segment } from './models/segments/Segment';
|
|
2
|
+
import { Diagram, Figure, Loop, Strand } from './main';
|
|
3
|
+
declare function convertToArcsAndLines(shape: Diagram): Diagram;
|
|
4
|
+
declare function convertToArcsAndLines(shape: Figure): Figure;
|
|
5
|
+
declare function convertToArcsAndLines(shape: Loop): Loop;
|
|
6
|
+
declare function convertToArcsAndLines(shape: Strand): Strand;
|
|
7
|
+
declare function convertToArcsAndLines(shape: Segment): Segment[];
|
|
8
|
+
export { convertToArcsAndLines };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Vector } from
|
|
2
|
-
import { Strand } from
|
|
3
|
-
import { Diagram } from
|
|
4
|
-
import { Segment } from
|
|
1
|
+
import { Vector } from './definitions.js';
|
|
2
|
+
import { Strand } from './models/Strand.js';
|
|
3
|
+
import { Diagram } from './models/Diagram.js';
|
|
4
|
+
import { Segment } from './models/segments/Segment.js';
|
|
5
5
|
export declare class DrawingPen {
|
|
6
6
|
pointer: Vector;
|
|
7
7
|
protected firstPoint: Vector;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Diagram } from '../models/Diagram.js';
|
|
2
2
|
export declare function drawCircle(radius: number): Diagram;
|