补上#IKKGK 单元测试

pull/68/head
ChenX 6 years ago
parent dfb96f2c3d
commit f54c968ae2

@ -0,0 +1,103 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`IKKGK圆与直线补圆弧 1`] = `
Array [
1,
Array [
"Polyline",
1,
1,
-1,
false,
7,
-1,
Array [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
],
2,
3,
Array [
-48.29834401092122,
16.98022733982478,
],
5.524425164721828,
Array [
-45.03828401586735,
17.21365558545229,
],
0,
Array [
-29.952830639706992,
28.841209282017353,
],
0,
false,
],
]
`;
exports[`IKKGK圆与直线补圆弧 2`] = `
Array [
1,
Array [
"Polyline",
1,
1,
-1,
false,
7,
-1,
Array [
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
],
2,
3,
Array [
-29.952830639706992,
28.841209282017353,
],
0,
Array [
-45.03828401586746,
17.213655585452294,
],
-5.524425164722017,
Array [
-48.29834401092122,
16.98022733982478,
],
0,
false,
],
]
`;

@ -0,0 +1,38 @@
import { Factory } from "../../src/DatabaseServices/CADFactory";
import { CADFile } from "../../src/DatabaseServices/CADFile";
import { Polyline } from "../../src/DatabaseServices/Polyline";
Factory(Polyline);
test('IKKGK圆与直线补圆弧', () =>
{
let f = new CADFile();
f.Data =
[1, ["Polyline", 1, 1, 5, false, 7, -1, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -47.808747539346534, 10.92028558763661, 0, 1], 2, 3, [-0.906131771640112, 6.969061295372345], 3.7897716494829594, [4.660056657223795, 6.487252124645892], 0, [18.466397865202012, 17.128892766521286], 0, false]]
f.Read();
let pl = f.ReadObject() as Polyline;
//负1 左边. 禁止补圆弧
let cus = pl.GetOffsetCurves(-1);
f.Data = [];
f.Write(cus.length);
cus.forEach(c => f.WriteObject(c));
expect(f.Data).toMatchSnapshot();
//翻转曲线后测试
pl.Reverse();
cus = pl.GetOffsetCurves(1);
f.Data = [];
f.Write(cus.length);
cus.forEach(c => f.WriteObject(c));
expect(f.Data).toMatchSnapshot();
//圆丢失的问题
cus = pl.GetOffsetCurves(-1.926388985025112);
expect(cus.length).toBe(2);
});
Loading…
Cancel
Save