Home > PCB_PrimitiveLine > create
PCB_PrimitiveLine.create() method
创建直线
签名
typescript
function create(
net: string,
layer: TPCB_LayersOfLine,
startX: number,
startY: number,
endX: number,
endY: number,
lineWidth?: number,
primitiveLock?: boolean,
): Promise<IPCB_PrimitiveLine | undefined>;1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
参数名
参数 | 类型 | 描述 |
|---|---|---|
net | string | 网络名称 |
layer | 层 | |
startX | number | 起始位置 X |
startY | number | 起始位置 Y |
endX | number | 终止位置 X |
endY | number | 终止位置 Y |
lineWidth | number | (可选) 线宽 |
primitiveLock | boolean | (可选) 是否锁定 |
返回值
Promise<IPCB_PrimitiveLine | undefined>
直线图元对象
示例
javascript
// 1. 生成随机起点坐标,避免与画布上已有的直线重合
const x = 2000 + Math.floor(Math.random() * 100000);
const y = 2000 + Math.floor(Math.random() * 100000);
// 2. 在顶层铜层创建一条水平走线:起点(x, y)到终点(x+600, y),线宽 10mil,不锁定
const line = await eda.pcb_PrimitiveLine.create('', 1, x, y, x + 600, y, 10, false);
// 3. 创建类保留现场,不删除图元
console.log('primitiveId:', line.getState_PrimitiveId());
console.log('primitiveType:', line.getState_PrimitiveType());
console.log('startX:', line.getState_StartX(), 'startY:', line.getState_StartY());
console.log('endX:', line.getState_EndX(), 'endY:', line.getState_EndY());
console.log('lineWidth:', line.getState_LineWidth());1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13