mirror of https://gitee.com/cf-fz/WebCAD.git
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.
104 lines
2.1 KiB
104 lines
2.1 KiB
7 years ago
|
import { Vector3 } from "three";
|
||
|
import { Database, Line, CADFactory } from '../../src/DatabaseServices/FileSystem';
|
||
|
test('id分配', () =>
|
||
|
{
|
||
|
CADFactory.RegisterObject(Line);
|
||
|
|
||
|
let db = new Database();
|
||
|
let line = new Line();
|
||
|
line.StartPoint = new Vector3(10, 3, 2);
|
||
|
let id = db.ModelSpace.Append(line);
|
||
|
|
||
|
expect(id != undefined).toBeTruthy();
|
||
|
expect(id.Object === line).toBeTruthy();
|
||
|
|
||
|
db.hm.Undo();
|
||
|
|
||
|
expect(id.IsErase).toBeTruthy();
|
||
|
expect(db.ModelSpace.Cout()).toBe(0);
|
||
|
|
||
|
db.hm.Redo();
|
||
|
|
||
|
expect(db.ModelSpace.Cout()).toBe(1);
|
||
|
expect(!id.IsErase).toBeTruthy();
|
||
|
let file = db.FileOut();
|
||
|
|
||
|
let db2 = new Database();
|
||
|
db2.FileIn(file);
|
||
|
|
||
|
console.log(db2.GetObjectId(0));
|
||
|
|
||
|
db2.GetObjectId(0).Object.ClassName //?
|
||
|
console.log(db2.ModelSpace.Cout());
|
||
|
console.log(file);
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
test('changev', () =>
|
||
|
{
|
||
|
let db = new Database();
|
||
|
let l1 = new Line();
|
||
|
|
||
|
let id = db.ModelSpace.Append(l1);
|
||
|
|
||
|
db.hm.Undo();
|
||
|
db.hm.Redo();
|
||
|
|
||
|
console.log(id.Object === l1);
|
||
|
|
||
|
(id.Object as Line).StartPoint = new Vector3(2, 3, 4);
|
||
|
|
||
|
let file = db.FileOut();
|
||
|
console.log(file.ToString());
|
||
|
});
|
||
|
|
||
|
test('xxx', () =>
|
||
|
{
|
||
|
let db = new Database();
|
||
|
db.hm.StartCmd("");
|
||
|
let l1 = new Line();
|
||
|
let l2 = new Line();
|
||
|
let id1 = db.ModelSpace.Append(l1);
|
||
|
let in2 = db.ModelSpace.Append(l2);
|
||
|
|
||
|
db.hm.Undo(); //?
|
||
|
db.hm.Redo(); //?
|
||
|
|
||
|
db.hm.StartCmd("");
|
||
|
db.ModelSpace.Remove(db.GetObjectId(1).Object);
|
||
|
db.hm.Undo(); //?
|
||
|
db.hm.Undo(); //?
|
||
|
|
||
|
db.hm.Redo(); //?
|
||
|
|
||
|
// db.hm.StartCmd("");
|
||
|
(id1.Object as Line).StartPoint = new Vector3(10, 4, 2);
|
||
|
(id1.Object as Line).EndPoint = new Vector3(2, 2, 2);
|
||
|
let file = db.FileOut();
|
||
|
console.log(file.ToString());
|
||
|
});
|
||
|
|
||
|
|
||
|
// function createLine()
|
||
|
// {
|
||
|
// for (let i = 0; i < 5000; i++)
|
||
|
// {
|
||
|
// let l = CADFactory.CreateObject("Line") as Line;
|
||
|
// }
|
||
|
// }
|
||
|
|
||
|
// // createLine(); //?.
|
||
|
|
||
|
|
||
|
// function undoRedo()
|
||
|
// {
|
||
|
// for (let i = 0; i < 5000; i++)
|
||
|
// {
|
||
|
// db.hm.Undo();
|
||
|
// db.hm.Redo();
|
||
|
// }
|
||
|
// }
|
||
|
|
||
|
// // undoRedo(); //?.
|