Home > PCB_Document > navigateToRegion
PCB_Document.navigateToRegion() method
此 API 当前处于 BETA 预览状态,希望得到开发者的反馈。它的任何功能都可能在接下来的开发进程中被修改,请不要将它用于任何正式环境。
定位到画布区域
签名
typescript
function navigateToRegion(
left: number,
right: number,
top: number,
bottom: number,
): Promise<boolean>;1
2
3
4
5
6
2
3
4
5
6
参数名
参数 | 类型 | 描述 |
|---|---|---|
left | number | 矩形框第一 X 坐标 |
right | number | 矩形框第二 X 坐标 |
top | number | 矩形框第一 Y 坐标 |
bottom | number | 矩形框第二 Y 坐标 |
返回值
Promise<boolean>
操作是否成功
备注
本接口在前端画布上定位到指定的区域,区域数据为相对于数据原点的偏移;
例如:传入数据为 {left: 0, right: 60, top: 100, bottom: -20} => navigateToRegion(0, 60, 100, -20), 则画布将会定位到以 [30, 40] 为中心的,x 轴方向长度为 60,y 轴方向长度为 120 的矩形范围;
本接口不进行缩放操作,但会生成指示定位中心及表示区域范围的矩形框;
此处的单位为数据层面单位,在跨度上等同于画布层面的 mil
示例
javascript
// 1. 创建测试 PCB 并打开(视口操作作用于当前激活的 PCB)
const pcbUuid = await eda.dmt_Pcb.createPcb();
await new Promise(r => setTimeout(r, 1500));
await eda.dmt_EditorControl.openDocument(pcbUuid);
await new Promise(r => setTimeout(r, 1000));
// 2. 定位到矩形区域:X 从 0 到 2000,Y 从 2000 到 0(视口将以中心 (1000,1000) 呈现)
const navigated = await eda.pcb_Document.navigateToRegion(0, 2000, 2000, 0);
console.log('navigated:', navigated);
// 3. 清理测试 PCB
await eda.dmt_Pcb.deletePcb(pcbUuid);1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12