You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
WebCAD/__test__/dxf/dxf_conf.test.ts

17 lines
8.5 KiB

import { DxfWriter } from "dxf-write";
import { Conver2DxfEntity } from "../../src/Add-on/ACAD/Entity2DxfEntity";
import { Entity } from "../../src/DatabaseServices/Entity/Entity";
import { LoadEntityFromFileData } from "../Utils/LoadEntity.util";
test('测试坐标系', () =>
{
let d = { "file": [27, "Arc", 10, 2, 109, 0, 1, 7, 71, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 338.1033990288489, 492.6878034847188, 0, 1], 0, 0, 1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 338.1033990288489, 492.6878034847188, 0, 1], 0, 0, 1, 2, 144.5876021646271, 2.7961634661197277, 0.8076105218618599, 1, "Arc", 10, 2, 110, 0, 1, 7, 71, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 648.7300771208227, 598.858611825193, 0, 1], 0, 0, 1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 648.7300771208227, 598.858611825193, 0, 1], 0, 0, 1, 2, 163.24762182347456, 2.8254393158042395, 5.546666796069691, 0, "Circle", 10, 2, 111, 0, 1, 7, 71, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 914.6529562982004, 557.0694087403599, 0, 1], 0, 0, 1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1], 0, 0, 1, 1, 89.93756136008184, "Arc", 10, 2, 112, 0, 1, 7, 71, [-1, 1.2246467991473532e-16, 0, 0, -1.2246467991473532e-16, -1, 0, 0, 0, 0, 1, 0, 1256.44200267555, 617.6363902431158, 0, 1], 0, 0, 1, [-1, 1.2246467991473532e-16, 0, 0, -1.2246467991473532e-16, -1, 0, 0, 0, 0, 1, 0, 1256.44200267555, 617.6363902431158, 0, 1], 0, 0, 1, 2, 142.53451443264086, 3.63456211389067, 0.3566948655378077, 1, "Arc", 10, 2, 113, 0, 1, 7, 71, [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 795.2400732792385, -6.9392893298059395, 1], 0, 0, 1, [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 795.2400732792385, -6.9392893298059395, 1], 0, 0, 1, 2, 58.39946353294328, 3.4729951376497734, 0.873851094809807, 1, "Arc", 10, 2, 114, 0, 1, 7, 71, [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 951.3713621924406, -0.9326463427875904, 1], 0, 0, 1, [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 951.3713621924406, -0.9326463427875904, 1], 0, 0, 1, 2, 39.9043399032529, 2.714629114747905, 6.025355670159753, 0, "Circle", 10, 2, 115, 0, 1, 7, 71, [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1034.456106670302, 14.108779918888196, 1], 0, 0, 1, [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1], 0, 0, 1, 1, 33.56356155376025, "Arc", 10, 2, 116, 0, 1, 7, 71, [0, -0.833574237981688, -0.5524074490566255, 0, 0, 0.5524074490566255, -0.833574237981688, 0, 1, 0, 0, 0, 0, 1154.1481089549789, 4.455713584499371, 1], 0, 0, 1, [0, -0.833574237981688, -0.5524074490566255, 0, 0, 0.5524074490566255, -0.833574237981688, 0, 1, 0, 0, 0, 0, 1154.1481089549789, 4.455713584499371, 1], 0, 0, 1, 2, 59.076480267941186, 3.3195933999062754, 0.1626164343650294, 1, "Arc", 10, 2, 117, 0, 1, 7, 71, [0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 184.66013131769495, 17.951029809255434, 1], 0, 0, 1, [0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 184.66013131769495, 17.951029809255434, 1], 0, 0, 1, 2, 97.55455259794002, 3.6673542213769843, 0.4171583323346232, 1, "Arc", 10, 2, 118, 0, 1, 7, 71, [0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, -86.21760512433669, 18.9606628121278, 1], 0, 0, 1, [0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, -86.21760512433669, 18.9606628121278, 1], 0, 0, 1, 2, 102.9527459180477, 3.297013264253287, 0.3305125761515028, 0, "Circle", 10, 2, 119, 0, 1, 7, 71, [0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, -321.43131467838316, 26.847041445506477, 1], 0, 0, 1, [0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 0, 0, 1], 0, 0, 1, 1, 90.24330181115464, "Arc", 10, 2, 120, 0, 1, 7, 71, [0, 0.9963712454524817, -0.08511369593356015, 0, 0, -0.08511369593356015, -0.9963712454524817, 0, -1, 0, 0, 0, 0, -575.1018676562114, 61.32538817942155, 1], 0, 0, 1, [0, 0.9963712454524817, -0.08511369593356015, 0, 0, -0.08511369593356015, -0.9963712454524817, 0, -1, 0, 0, 0, 0, -575.1018676562114, 61.32538817942155, 1], 0, 0, 1, 2, 113.87762124244482, 3.0527405420880034, 0.44717310992262105, 1, "Arc", 10, 2, 121, 0, 1, 7, 71, [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 1844.0366210068821, 0, 31.209982632468424, 1], 0, 0, 1, [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 1844.0366210068821, 0, 31.209982632468424, 1], 0, 0, 1, 2, 204.75902790831123, 3.5011466719543876, 0.30693458385875083, 1, "Arc", 10, 2, 122, 0, 1, 7, 71, [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 2343.3282424658646, 0, 49.00817526124687, 1], 0, 0, 1, [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 2343.3282424658646, 0, 49.00817526124687, 1], 0, 0, 1, 2, 188.07259850706058, 2.888775496640152, 6.072914922277927, 0, "Arc", 10, 2, 123, 0, 1, 7, 71, [-1, 0, 1.2246467991473532e-16, 0, -1.2246467991473532e-16, 0, -1, 0, 0, -1, 0, 0, 1815.0486048102593, 0, 1122.208755124013, 1], 0, 0, 1, [-1, 0, 1.2246467991473532e-16, 0, -1.2246467991473532e-16, 0, -1, 0, 0, -1, 0, 0, 1815.0486048102593, 0, 1122.208755124013, 1], 0, 0, 1, 2, 1503.9120300934628, 2.469066376059924, 2.1611770471438585, 1, "Circle", 10, 2, 125, 0, 1, 7, 71, [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 3295.016696810837, 0, 96.05125433636663, 1], 0, 0, 1, [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 0, 0, 0, 1], 0, 0, 1, 1, 154.74197208563115, "Arc", 10, 2, 126, 0, 1, 7, 71, [-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, -1561.8221972145354, -220.6722975607595, 0, 1], 0, 0, 1, [-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, -1561.8221972145354, -220.6722975607595, 0, 1], 0, 0, 1, 2, 384.3210739793441, 3.140400048311467, 0.431908004673803, 1, "Arc", 10, 2, 127, 0, 1, 7, 71, [-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, -3011.5016221510377, 965.5818818826049, 0, 1], 0, 0, 1, [-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, -3011.5016221510377, 965.5818818826049, 0, 1], 0, 0, 1, 2, 1255.001170786365, 3.994383408727212, 4.739283390878743, 0, "Arc", 10, 2, 128, 0, 1, 7, 71, [0.02626939476397753, 0.9996548999023285, 0, 0, 0.9996548999023285, -0.02626939476397753, 0, 0, 0, 0, -1, 0, -3521.0162557338467, -266.7937654912005, 0, 1], 0, 0, 1, [0.02626939476397753, 0.9996548999023285, 0, 0, 0.9996548999023285, -0.02626939476397753, 0, 0, 0, 0, -1, 0, -3521.0162557338467, -266.7937654912005, 0, 1], 0, 0, 1, 2, 336.1536343583566, 4.635617089114631, 1.00406710927167, 0, "Circle", 10, 2, 129, 0, 1, 7, 71, [-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, -4114.56483206322, -150.54578294871257, 0, 1], 0, 0, 1, [-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1], 0, 0, 1, 1, 219.60046528660857, "Arc", 10, 2, 130, 0, 1, 7, 71, [-1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, -4880.082219915602, 0, 124.870849021293, 1], 0, 0, 1, [-1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, -4880.082219915602, 0, 124.870849021293, 1], 0, 0, 1, 2, 295.6896229418994, 3.9205629899959717, 0.332017134124911, 1, "Arc", 10, 2, 131, 0, 1, 7, 71, [-1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, -5734.190885975135, 0, 81.99061658853293, 1], 0, 0, 1, [-1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, -5734.190885975135, 0, 81.99061658853293, 1], 0, 0, 1, 2, 278.9292771505529, 3.126901124797531, 0.044992240541802, 0, "Arc", 10, 2, 132, 0, 1, 7, 71, [0.8827023114834084, 0, 0.4699325795280084, 0, 0.4699325795280084, 0, -0.8827023114834084, 0, 0, 1, 0, 0, -5058.101141116243, 0, 6177.514250335131, 1], 0, 0, 1, [0.8827023114834084, 0, 0.4699325795280084, 0, 0.4699325795280084, 0, -0.8827023114834084, 0, 0, 1, 0, 0, -5058.101141116243, 0, 6177.514250335131, 1], 0, 0, 1, 2, 6399.624650282583, 2.381865786886328, 2.247238035301184, 1, "Circle", 10, 2, 133, 0, 1, 7, 71, [-1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, -7533.418387972919, 0, 52.297688997727974, 1], 0, 0, 1, [-1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1], 0, 0, 1, 1, 309.9270199451834, "Arc", 10, 2, 134, 0, 1, 7, 71, [0.7071067811866032, 0, -0.7071067811864918, 0, -0.7071067811864918, 0, -0.7071067811866032, 0, 0, 1, 0, 0, 11346.356532853759, 0, 8663.3752221401, 1], 0, 0, 1, [0.7071067811866032, 0, -0.7071067811864918, 0, -0.7071067811864918, 0, -0.7071067811866032, 0, 0, 1, 0, 0, 11346.356532853759, 0, 8663.3752221401, 1], 0, 0, 1, 2, 21732.3973224181, 1.9897430727645926, 1.9168227259130712, 1, "Arc", 10, 2, 135, 0, 1, 7, 71, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4718.237530820744, -373.98872943584104, 0, 1], 0, 0, 1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4718.237530820744, -373.98872943584104, 0, 1], 0, 0, 1, 2, 657.9985770384598, 2.9554221769158158, 0.9016286384736121, 1, "Arc", 10, 2, 136, 0, 1, 7, 71, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 496778.2368548376, -490804.22982603795, 0, 1], 0, 0, 1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 496778.2368548376, -490804.22982603795, 0, 1], 0, 0, 1, 2, 694351.7268222995, 2.354194490859011, 2.3581944895256783, 0], "basePt": { "x": -8943.111640993167, "y": -806.3578692163574, "z": -580.9560058237603 }, "ucs": [1, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 0, 0, 0, 1] };
let els = LoadEntityFromFileData(d.file) as Entity[];
let dxf = new DxfWriter();
for (let el of els)
{
let dxfel = Conver2DxfEntity(el, dxf);
expect(dxfel).toMatchSnapshot();
}
});