你的第一个脚本
本教程演示如何在 LinkCAD 的交互式控制台中运行你的第一个 Python 脚本。
打开控制台
转到 View → Python Console (Ctrl+Shift+P)。窗口底部会出现 Python 提示符。
Hello World
输入以下内容并按 ↵:
print("Hello from LinkCAD!")你应该能在控制台中看到输出。
探索图纸
控制台和脚本编辑器都定义了一个名为 drawing 的全局变量,它始终指向 LinkCAD 中当前打开的图纸;未加载任何文件时为 None。
加载文件后,可以检查其结构:
if drawing is None: print("Open a file first")else: for cell in drawing.cells: print(f"Cell: {cell.name}")
for layer in drawing.layers: print(f"Layer: {layer.name}")cells 和 layers 是属性,不是方法——名词不需要括号。这一约定贯穿整个 API:shape.area、cell.bounds、polygon.vertices。只有动词保留括号:shape.destroy()、cell.clone(name)。
统计形状
main = drawing.main_cellprint(f"Total shapes in main cell: {len(main.shapes)}")或者更实用一些,按图层统计:
from collections import Counter
counts = Counter( shape.layer.name for cell in drawing.cells for shape in cell.shapes if shape.layer is not None)
for name, count in counts.most_common(): print(f"{name}: {count} shapes")从零创建图纸
图纸把整个数据库保存在内存中,必须释放。用作上下文管理器时会自动完成:
from linkcad.v1.db import Drawingfrom linkcad.v1.geom import Point
with Drawing("first-script") as dwg: top = dwg.add_cell("TOP") dwg.main_cell = top
metal = dwg.add_layer("METAL1")
top.add_polygon(metal, [(0, 0), (10_000, 0), (10_000, 10_000), (0, 10_000)]) top.add_circle(metal, Point(20_000, 5_000), diameter=6_000) top.add_text(metal, "TOP", Point(0, 12_000), height=2_000)
print(f"{len(top.shapes)} shapes, bounds {top.bounds}")几何图形始终由将要拥有它的对象创建:图纸创建单元和图层,单元创建形状。
使用脚本编辑器
对于较长的脚本,请使用内置编辑器:
- 打开 View → Python Script Editor (Ctrl+Shift+E)
- 在编辑器中编写脚本
- 按 F5 运行整个脚本
- 或选择若干行并按 Ctrl+↵ 仅运行所选内容