pull/68/head
Zoe 6 years ago
commit 4c254809ef

@ -101,3 +101,54 @@ Array [
],
]
`;
exports[`IKKGK圆与直线补圆弧 3`] = `
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 [
-28.166325866517482,
26.523418698930218,
],
0,
Array [
-40.232543460173595,
17.223029145747052,
],
-2.8074677582773755,
Array [
-49.51728832490683,
19.64066475707001,
],
0,
false,
],
]
`;

@ -2,6 +2,7 @@ import { Factory } from "../../src/DatabaseServices/CADFactory";
import { CADFile } from "../../src/DatabaseServices/CADFile";
import { Polyline } from "../../src/DatabaseServices/Polyline";
import { Curve } from "../../src/DatabaseServices/Curve";
import { Entity } from "../../src/DatabaseServices/Entity";
Factory(Polyline);
function loadFile(data)
@ -15,6 +16,17 @@ function loadFile(data)
}
return cus;
}
// file.only
function EntityToMatchSnapshot(ens: Entity[])
{
let f = new CADFile();
f.Write(ens.length);
for (let e of ens)
f.WriteObject(e);
expect(f.Data).toMatchSnapshot();
}
test('IKKGK圆与直线补圆弧', () =>
{
@ -27,28 +39,20 @@ test('IKKGK圆与直线补圆弧', () =>
//负1 左边. 禁止补圆弧
let cus = pl.GetOffsetCurves(-1);
f.Data = [];
f.Write(cus.length);
cus.forEach(c => f.WriteObject(c));
expect(f.Data).toMatchSnapshot();
EntityToMatchSnapshot(cus);
pl.GetOffsetCurves(-5.654208780429431);
//
//翻转曲线后测试
pl.Reverse();
cus = pl.GetOffsetCurves(1);
f.Data = [];
f.Write(cus.length);
cus.forEach(c => f.WriteObject(c));
expect(f.Data).toMatchSnapshot();
EntityToMatchSnapshot(cus);
//圆丢失的问题
cus = pl.GetOffsetCurves(-1.926388985025112);
expect(cus.length).toBe(1);
EntityToMatchSnapshot(cus);
});
test('多段线偏移测试1', () =>

Loading…
Cancel
Save