dxf-json 0.0.16 → 0.0.17
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/consts/block.d.ts +10 -0
- package/dist/consts/color.d.ts +5 -0
- package/dist/consts/config.d.ts +2 -0
- package/dist/consts/dimension.d.ts +61 -0
- package/dist/consts/hatch.d.ts +44 -0
- package/dist/consts/header.d.ts +9 -0
- package/dist/consts/index.d.ts +9 -0
- package/dist/consts/lineweight.d.ts +5 -0
- package/dist/consts/measurement.d.ts +4 -0
- package/dist/consts/obscuredLineTypes.d.ts +21 -0
- package/dist/consts/scene.d.ts +2 -0
- package/dist/consts/viewport.d.ts +56 -0
- package/dist/index.d.ts +6 -0
- package/dist/parser/AutoCadColorIndex.d.ts +8 -0
- package/dist/parser/DxfArrayScanner.d.ts +38 -0
- package/dist/parser/DxfParser.d.ts +11 -0
- package/dist/parser/ParseHelpers.d.ts +21 -0
- package/dist/parser/blocks/blocks.test.d.ts +1 -0
- package/dist/parser/blocks/index.d.ts +4 -0
- package/dist/parser/blocks/types.d.ts +14 -0
- package/dist/parser/entities/arc/index.d.ts +2 -0
- package/dist/parser/entities/arc/parser.d.ts +7 -0
- package/dist/parser/entities/arc/types.d.ts +12 -0
- package/dist/parser/entities/attdef/consts.d.ts +11 -0
- package/dist/parser/entities/attdef/index.d.ts +3 -0
- package/dist/parser/entities/attdef/parser.d.ts +8 -0
- package/dist/parser/entities/attdef/types.d.ts +17 -0
- package/dist/parser/entities/attribute/consts.d.ts +6 -0
- package/dist/parser/entities/attribute/index.d.ts +3 -0
- package/dist/parser/entities/attribute/parser.d.ts +8 -0
- package/dist/parser/entities/attribute/types.d.ts +30 -0
- package/dist/parser/entities/circle/index.d.ts +2 -0
- package/dist/parser/entities/circle/parser.d.ts +8 -0
- package/dist/parser/entities/circle/types.d.ts +10 -0
- package/dist/parser/entities/dimension/common.d.ts +6 -0
- package/dist/parser/entities/dimension/index.d.ts +6 -0
- package/dist/parser/entities/dimension/types.d.ts +48 -0
- package/dist/parser/entities/ellipse/index.d.ts +2 -0
- package/dist/parser/entities/ellipse/parser.d.ts +7 -0
- package/dist/parser/entities/ellipse/types.d.ts +12 -0
- package/dist/parser/entities/entities.test.d.ts +1 -0
- package/dist/parser/entities/hatch/boundaryPathData/edge.d.ts +6 -0
- package/dist/parser/entities/hatch/boundaryPathData/index.d.ts +5 -0
- package/dist/parser/entities/hatch/boundaryPathData/polyline.d.ts +2 -0
- package/dist/parser/entities/hatch/boundaryPathData/shared.d.ts +2 -0
- package/dist/parser/entities/hatch/index.d.ts +8 -0
- package/dist/parser/entities/hatch/patternData.d.ts +3 -0
- package/dist/parser/entities/hatch/types/boundaryPath.d.ts +59 -0
- package/dist/parser/entities/hatch/types/definitionLine.d.ts +8 -0
- package/dist/parser/entities/hatch/types/hatch.d.ts +38 -0
- package/dist/parser/entities/hatch/types/index.d.ts +3 -0
- package/dist/parser/entities/index.d.ts +8 -0
- package/dist/parser/entities/insert/index.d.ts +2 -0
- package/dist/parser/entities/insert/parser.d.ts +8 -0
- package/dist/parser/entities/insert/types.d.ts +18 -0
- package/dist/parser/entities/leader/consts.d.ts +6 -0
- package/dist/parser/entities/leader/index.d.ts +3 -0
- package/dist/parser/entities/leader/parser.d.ts +8 -0
- package/dist/parser/entities/leader/types.d.ts +23 -0
- package/dist/parser/entities/line/index.d.ts +2 -0
- package/dist/parser/entities/line/parser.d.ts +8 -0
- package/dist/parser/entities/line/types.d.ts +10 -0
- package/dist/parser/entities/lwpolyline/consts.d.ts +4 -0
- package/dist/parser/entities/lwpolyline/index.d.ts +3 -0
- package/dist/parser/entities/lwpolyline/parser.d.ts +7 -0
- package/dist/parser/entities/lwpolyline/types.d.ts +19 -0
- package/dist/parser/entities/mtext/consts.d.ts +5 -0
- package/dist/parser/entities/mtext/index.d.ts +3 -0
- package/dist/parser/entities/mtext/parser.d.ts +10 -0
- package/dist/parser/entities/mtext/types.d.ts +33 -0
- package/dist/parser/entities/point/index.d.ts +2 -0
- package/dist/parser/entities/point/parser.d.ts +6 -0
- package/dist/parser/entities/point/types.d.ts +9 -0
- package/dist/parser/entities/polyline/consts.d.ts +16 -0
- package/dist/parser/entities/polyline/index.d.ts +3 -0
- package/dist/parser/entities/polyline/parser.d.ts +7 -0
- package/dist/parser/entities/polyline/types.d.ts +19 -0
- package/dist/parser/entities/section/index.d.ts +2 -0
- package/dist/parser/entities/section/parser.d.ts +7 -0
- package/dist/parser/entities/section/types.d.ts +19 -0
- package/dist/parser/entities/shared.d.ts +35 -0
- package/dist/parser/entities/solid/index.d.ts +2 -0
- package/dist/parser/entities/solid/parser.d.ts +8 -0
- package/dist/parser/entities/solid/types.d.ts +9 -0
- package/dist/parser/entities/spline/consts.d.ts +8 -0
- package/dist/parser/entities/spline/index.d.ts +3 -0
- package/dist/parser/entities/spline/parser.d.ts +8 -0
- package/dist/parser/entities/spline/types.d.ts +21 -0
- package/dist/parser/entities/text/consts.d.ts +19 -0
- package/dist/parser/entities/text/index.d.ts +3 -0
- package/dist/parser/entities/text/parser.d.ts +26 -0
- package/dist/parser/entities/text/types.d.ts +20 -0
- package/dist/parser/entities/vertex/consts.d.ts +10 -0
- package/dist/parser/entities/vertex/index.d.ts +3 -0
- package/dist/parser/entities/vertex/parser.d.ts +8 -0
- package/dist/parser/entities/vertex/types.d.ts +16 -0
- package/dist/parser/entities/viewport/index.d.ts +5 -0
- package/dist/parser/entities/viewport/types.d.ts +51 -0
- package/dist/parser/filterDummyBlocks.d.ts +2 -0
- package/dist/parser/header/index.d.ts +3 -0
- package/dist/parser/objects/common.d.ts +8 -0
- package/dist/parser/objects/dictionary.d.ts +20 -0
- package/dist/parser/objects/index.d.ts +6 -0
- package/dist/parser/objects/layout.d.ts +30 -0
- package/dist/parser/objects/plotSettings.d.ts +64 -0
- package/dist/parser/objects/treefy.d.ts +2 -0
- package/dist/parser/objects/types.d.ts +15 -0
- package/dist/parser/shared/index.d.ts +7 -0
- package/dist/parser/shared/parsePoint.d.ts +7 -0
- package/dist/parser/shared/parserGenerator.d.ts +15 -0
- package/dist/parser/shared/parserGenerator.test.d.ts +1 -0
- package/dist/parser/shared/xdata/index.d.ts +3 -0
- package/dist/parser/shared/xdata/interpreter.d.ts +20 -0
- package/dist/parser/shared/xdata/interpreter.test.d.ts +1 -0
- package/dist/parser/shared/xdata/parser.d.ts +6 -0
- package/dist/parser/shared/xdata/parser.test.d.ts +1 -0
- package/dist/parser/shared/xdata/types.d.ts +9 -0
- package/dist/parser/tables/blockRecord/index.d.ts +2 -0
- package/dist/parser/tables/blockRecord/parser.d.ts +1 -0
- package/dist/parser/tables/blockRecord/types.d.ts +10 -0
- package/dist/parser/tables/dimStyle/consts.d.ts +2 -0
- package/dist/parser/tables/dimStyle/index.d.ts +3 -0
- package/dist/parser/tables/dimStyle/parser.d.ts +1 -0
- package/dist/parser/tables/dimStyle/types.d.ts +83 -0
- package/dist/parser/tables/index.d.ts +2 -0
- package/dist/parser/tables/layer/index.d.ts +2 -0
- package/dist/parser/tables/layer/parser.d.ts +1 -0
- package/dist/parser/tables/layer/types.d.ts +13 -0
- package/dist/parser/tables/ltype/consts.d.ts +6 -0
- package/dist/parser/tables/ltype/index.d.ts +3 -0
- package/dist/parser/tables/ltype/parser.d.ts +1 -0
- package/dist/parser/tables/ltype/types.d.ts +21 -0
- package/dist/parser/tables/parser.d.ts +2 -0
- package/dist/parser/tables/shared.d.ts +2 -0
- package/dist/parser/tables/style/index.d.ts +2 -0
- package/dist/parser/tables/style/parser.d.ts +1 -0
- package/dist/parser/tables/style/types.d.ts +14 -0
- package/dist/parser/tables/types.d.ts +14 -0
- package/dist/parser/tables/vport/index.d.ts +2 -0
- package/dist/parser/tables/vport/parser.d.ts +1 -0
- package/dist/parser/tables/vport/types.d.ts +43 -0
- package/dist/parser/types.d.ts +29 -0
- package/dist/types/color.d.ts +3 -0
- package/dist/types/dxfHeader.d.ts +16 -0
- package/dist/types/entity.d.ts +6 -0
- package/dist/types/index.d.ts +24 -0
- package/dist/utils/binarySearch.d.ts +1 -0
- package/dist/utils/disjointSet.d.ts +6 -0
- package/dist/utils/flooding.d.ts +8 -0
- package/dist/utils/functional.d.ts +17 -0
- package/dist/utils/graph.d.ts +19 -0
- package/dist/utils/index.d.ts +30 -0
- package/dist/utils/queue.d.ts +19 -0
- package/dist/utils/triangle.d.ts +2 -0
- package/package.json +2 -2
- package/tsconfig.json +1 -0
- package/webpack.config.js +7 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Measurement } from '../consts';
|
|
2
|
+
import type { DefaultDxfHeaderVariables } from '../consts/header';
|
|
3
|
+
export type DxfHeaderVariable =
|
|
4
|
+
/** Hard-pointer ID to visual style while creating 3D solid primitives */
|
|
5
|
+
'DRAGVS'
|
|
6
|
+
/** Represents the ACI color index of the "interference objects" created during the INTERFERE command */
|
|
7
|
+
| 'INTERFERECOLOR'
|
|
8
|
+
/** Hard-pointer ID to the visual style for interference objects */
|
|
9
|
+
| 'INTERFEREOBJVS'
|
|
10
|
+
/** Hard-pointer ID to the visual style for the viewport during interference checking */
|
|
11
|
+
| 'INTERFEREVPVS' | 'OBSLTYPE'
|
|
12
|
+
/** Percent ambient/diffuse light; range 1-100 */
|
|
13
|
+
| 'SHADEDIF' | 'MEASUREMENT';
|
|
14
|
+
export type DxfHeader = typeof DefaultDxfHeaderVariables & {
|
|
15
|
+
MEASUREMENT: Measurement;
|
|
16
|
+
} & Record<string, any>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export * from './color';
|
|
2
|
+
export * from './dxfHeader';
|
|
3
|
+
export * from './entity';
|
|
4
|
+
export interface Point2D {
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
}
|
|
8
|
+
export interface Point3D {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
z: number;
|
|
12
|
+
}
|
|
13
|
+
export interface Bound {
|
|
14
|
+
minX: number;
|
|
15
|
+
minY: number;
|
|
16
|
+
maxX: number;
|
|
17
|
+
maxY: number;
|
|
18
|
+
}
|
|
19
|
+
export type MakeOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
|
|
20
|
+
export type Indexed<T, P extends string> = {
|
|
21
|
+
[key in P]: T;
|
|
22
|
+
} & {
|
|
23
|
+
index: number;
|
|
24
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function createMaxLessOrEqualFinder<T>(comp: (a: T, b: T) => number): (list: T[], target: T) => number;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface FloodingParams<T> {
|
|
2
|
+
seeds: T[];
|
|
3
|
+
spanner(seed: T): T[];
|
|
4
|
+
serializer(seed: T): number | string;
|
|
5
|
+
iterationLimit?: number;
|
|
6
|
+
}
|
|
7
|
+
export declare function flooding<T>({ seeds, spanner, serializer, iterationLimit, }: FloodingParams<T>): T[][];
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare function adjacentPairs<T>(itr: Iterable<T>, n: number, isClosed?: boolean): Generator<T[], void, unknown>;
|
|
2
|
+
export declare function argmin<T>(itr: Iterable<T>, evaluator: (value: T) => number): {
|
|
3
|
+
target: T;
|
|
4
|
+
score: number;
|
|
5
|
+
index: number;
|
|
6
|
+
};
|
|
7
|
+
export declare function subIterator<T>(array: T[], start: number, end: number): Generator<T, void, unknown>;
|
|
8
|
+
export declare function reverseIterator<T>(array: T[]): Generator<T, void, unknown>;
|
|
9
|
+
export declare function separate<T>(predicate: (value: T) => boolean, itr: Iterable<T>): T[][];
|
|
10
|
+
export declare function findLast<T>(predicate: (value: T) => boolean, isIncremental: boolean, // true일 경우, predicate가 실패하는 즉시 종료
|
|
11
|
+
itr: Iterable<T>): [T | undefined, number];
|
|
12
|
+
/**
|
|
13
|
+
* size개씩 자른 것을 생성한다. 만약 마지막에 size개가 안되면 그냥 되는대로 준다.
|
|
14
|
+
* @param size
|
|
15
|
+
* @param iterable
|
|
16
|
+
*/
|
|
17
|
+
export declare function groupPairs<T>(size: number, iterable: Iterable<T>): Generator<T[], void, unknown>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface Edge<E> {
|
|
2
|
+
index: number;
|
|
3
|
+
values: E[];
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* 정수로 표현하는 무향 비단순 그래프
|
|
7
|
+
* 두 정점 사이에 간선이 여러 개 존재할 수 있음
|
|
8
|
+
* 인접 리스트를 사용
|
|
9
|
+
* 간선에 값을 할당할 수 있음
|
|
10
|
+
*/
|
|
11
|
+
export declare class UndirectedMultiGraph<T> {
|
|
12
|
+
vertices: Set<number>;
|
|
13
|
+
edges: Edge<T>[][];
|
|
14
|
+
addEdge(u: number, v: number, value: T): void;
|
|
15
|
+
getDegree(v: number): number;
|
|
16
|
+
getEdgeCount(u: number, v: number): number;
|
|
17
|
+
getNeighbors(u: number): Generator<Edge<T>, void, undefined>;
|
|
18
|
+
private connectDirected;
|
|
19
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export * from './binarySearch';
|
|
2
|
+
export * from './disjointSet';
|
|
3
|
+
export * from './graph';
|
|
4
|
+
export * from './functional';
|
|
5
|
+
export * from './flooding';
|
|
6
|
+
export * from './triangle';
|
|
7
|
+
export * from './queue';
|
|
8
|
+
import { Vector2, Vector3 } from 'three';
|
|
9
|
+
import type { Bound, Point2D, Point3D } from '../types';
|
|
10
|
+
export declare function pointToVector2(point: Point3D | Point2D): Vector2;
|
|
11
|
+
export declare function pointToVector3(point: Point3D | Point2D): Vector3;
|
|
12
|
+
export declare function swapVector(v1: Vector2, v2: Vector2): void;
|
|
13
|
+
export declare function classify<T>(iterable: Iterable<T>, keySelector: (value: T) => string | undefined): Record<string, T[]>;
|
|
14
|
+
export declare function updateBounds(v: Point2D, bounds?: Bound): Bound;
|
|
15
|
+
export declare function getBoundBox(vertices: Iterable<Point2D>): {
|
|
16
|
+
minX: number;
|
|
17
|
+
maxX: number;
|
|
18
|
+
minY: number;
|
|
19
|
+
maxY: number;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* 정수 생성기
|
|
23
|
+
*
|
|
24
|
+
* @param start Inclusive
|
|
25
|
+
* @param end Exclusive
|
|
26
|
+
* @param increment Default = 1
|
|
27
|
+
*/
|
|
28
|
+
export declare function generateIntegers(start: number, end?: number, increment?: number): Generator<number, void, unknown>;
|
|
29
|
+
export declare function swap<T>(list: T[], i1: number, i2: number): void;
|
|
30
|
+
export declare function pushIfNotEqual(v: Vector2, vertices: Vector2[]): void;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare class Queue<T> implements Iterable<T> {
|
|
2
|
+
readonly growthRate: number;
|
|
3
|
+
private data;
|
|
4
|
+
private head;
|
|
5
|
+
private tail;
|
|
6
|
+
private _size;
|
|
7
|
+
constructor(growthRate?: number);
|
|
8
|
+
private grow;
|
|
9
|
+
push(el: T): T;
|
|
10
|
+
pop(): T | undefined;
|
|
11
|
+
front(): T | undefined;
|
|
12
|
+
size(): number;
|
|
13
|
+
[Symbol.iterator](): IterableIterator<T>;
|
|
14
|
+
isNotEmpty(): this is NonEmptyQueue<T>;
|
|
15
|
+
}
|
|
16
|
+
interface NonEmptyQueue<T> extends Queue<T> {
|
|
17
|
+
pop(): T;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dxf-json",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.17",
|
|
4
4
|
"description": "perfect dxf parser",
|
|
5
5
|
"main": "./src/index.ts",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"module": "./dist/bundle.js",
|
|
8
8
|
"scripts": {
|
|
9
|
-
"build": "webpack --mode production",
|
|
9
|
+
"build": "tsc --declaration && webpack --mode production",
|
|
10
10
|
"test:parser": "jest --silent=false"
|
|
11
11
|
},
|
|
12
12
|
"repository": {
|
package/tsconfig.json
CHANGED