在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 7297|回复: 16

[求助] skill脚本 AddMOSM1 求助

[复制链接]
发表于 2020-11-17 14:55:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 Siman2000 于 2020-11-17 14:57 编辑

源脚本链接:http://bbs.eetop.cn/thread-878287-1-1.html
在使用过程中遇到了问题:Edit In Place 快捷键 X 进入group内部,然后运行AddMosM1 脚本,添加的M1 只能在group上一层生成,如果想在group内部生成M1,怎么修改脚本,谢谢!






  1. hiSetBindKey("Layout" "<Key>F6" "AddMosM1()")

  2. procedure(AddMosM1()
  3.       let((cv objs metal1 temp shapes x y ux uy xy row column transform M1_width)
  4.         testEditMode()  
  5.           M1_width = 0.13
  6.           cv = geGetEditCellView()
  7.           objs = geGetSelSet()
  8.         foreach(obj objs
  9.              transform = nil
  10.              if(obj~>objType == "inst" then transform = list(obj~>transform));end if
  11.              if(obj~>objType == "mosaic" then
  12.              x = xCoord(obj~>xy)
  13.              y = yCoord(obj~>xy)
  14.              ux = obj~>uX
  15.              uy = obj~>uY
  16.              row = obj~>rows
  17.              column = obj~>columns
  18.              for(a 0 row-1
  19.                for(b 0 column-1
  20.                 case(car(obj~>tileArray)
  21.                     ("R0"    xy = list(x+b*ux : y+a*uy))
  22.                     ("MXR90" xy = list(x+a*ux : y+b*uy))
  23.                     ("R90"   xy = list(x-a*ux : y+b*uy))
  24.                     ("MY"    xy = list(x-b*ux : y+a*uy))
  25.                     ("R0"    xy = list(x+a*ux : y-b*uy))
  26.                     ("MXR90" xy = list(x+b*ux : y-a*uy))
  27.                     ("R0"    xy = list(x-b*ux : y-a*uy))
  28.                     ("MXR90" xy = list(x-a*ux : y-b*uy))
  29.                 );end case
  30.              transform = append1(transform list(car(xy) car(obj~>tileArray) 1.0))
  31.                );end for
  32.             );enf for
  33.             );end if
  34.        shapes = obj~>master~>shapes
  35.       foreach(shape shapes
  36.            if(car(shape~>lpp) == "M1" && cadr(shape~>lpp) == "drawing"
  37.              then
  38.                foreach(trans transform
  39.                   metal1 = dbCopyFig(shape cv trans)
  40.                   temp = convertPolygon2Path(metal1)
  41.                   temp~>width = M1_width
  42.                );foreach
  43.            );if
  44.       );foreach
  45.     );foreach
  46.   );let
  47. );proc





复制代码


发表于 2020-11-17 15:21:52 | 显示全部楼层
刚才看了下,你的代码跟作者的代码是一致的。我也是用的这个,我的能实现在group内部打M1,你再检查下你是否操作有误?还是virtuoso版本不同导致的?
 楼主| 发表于 2020-11-17 15:41:50 | 显示全部楼层


小马哥爱逛 发表于 2020-11-17 15:21
刚才看了下,你的代码跟作者的代码是一致的。我也是用的这个,我的能实现在group内部打M1,你再检查下你是 ...


能生成了M1,大概说明操作没问题,我用的是618
能否把您的脚本分享吗?
发表于 2020-11-17 16:24:03 | 显示全部楼层


Siman2000 发表于 2020-11-17 15:41
能生成了M1,大概说明操作没问题,我用的是618
能否把您的脚本分享吗?
...


image.png
发表于 2020-11-17 17:26:44 | 显示全部楼层
目测你操作有问题。你只能shift+x进去,运行脚本
 楼主| 发表于 2020-11-18 08:43:25 | 显示全部楼层


太感谢了,和您的脚本比较了,确实是我的有些问题,改正就可以了
发表于 2020-11-18 09:16:51 | 显示全部楼层


Siman2000 发表于 2020-11-18 08:43
太感谢了,和您的脚本比较了,确实是我的有些问题,改正就可以了


不敢当,应该感谢作者才对,毕竟是他分享给我们的!
发表于 2020-11-19 10:10:11 | 显示全部楼层
我也用了这个脚本,也load成功了,为什么我按了之后没有反应呢?这个效果图是什么样的,具体怎么操作?求问楼主
发表于 2021-2-22 15:58:59 | 显示全部楼层


Macwen 发表于 2020-11-19 10:10
我也用了这个脚本,也load成功了,为什么我按了之后没有反应呢?这个效果图是什么样的,具体怎么操作?求问 ...


load 成功后,选中 当前 layout 的一个mos 器件,这个mos 器件的M1 会加宽到 skill 程序中指定的宽度。
如果什么效果都没有,那就是skill 出问题了,需要debug
发表于 2021-2-22 16:42:18 来自手机 | 显示全部楼层
这个脚本能改进一下吗?直接点击group或modgen,按快捷键在内部生成m1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-5 13:01 , Processed in 0.024601 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表