TA的每日心情 | 开心 2024-9-6 15:29 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 学无止境``` 于 2025-7-14 22:09 编辑
下面是我写的一点代码,但是功能没有实现,实在不知道怎么写了?
defun( CopyViaBySameDimension (x_offset y_offset)
let((ViaDbid)
axlSetFindFilter(?enabled (list "noall" "VIAS") ?onButtons (list "VIAS"))
;axlClearSelSet()
axlMsgPut("Select a via as reference...")
selectedVia = axlSingleSelectPoint()
ViaDbid = axlGetSelSet(selectedVia) ;获取选择对象的DBID
;unless(axlOKToProceed() axlShell("done"))
when(ViaDbid
padstackName = car(ViaDbid)->name ;获取焊盘名称
ViaNet = car(ViaDbid)->net->name ;获取当前选择过孔的网络名称
ViaXY = car(ViaDbid)->xy ;获取当前选择过孔的坐标
ViaRotation = car(ViaDbid)->via->rotation ;获取旋转角度
ViaMirror = car(ViaDbid)->via->mirrored ;获取旋转角度
);end when
x = xCoord(ViaXY) ; 获取x坐标
y = yCoord(ViaXY) ; 获取y坐标
;点击左右则x变化,y不变
x = x + x_offset
;点击上下则y变化,X不变
y = y + y_offset
;unless(axlOKToProceed() axlShell("done"))
newVia = axlDBCreateVia(padstackName , x:y , ViaNet, ViaMirror , ViaRotation , nil) ;创建过孔
when(newVia
NewViaDbid = list(car(newVia))
axlHighlightObject(NewViaDbid)
);end when
);end let
);end defun
|
|