找回密码
 注册
查看: 1091|回复: 13
打印 上一主题 下一主题

S.O.S about

[复制链接]
  • TA的每日心情
    奋斗
    2024-1-17 15:52
  • 签到天数: 237 天

    [LV.7]常住居民III

    跳转到指定楼层
    1#
     楼主| 发表于 2023-9-7 09:55 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

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

    x


    想請問各位大大,有無方法 或 skill ,可以將整張板子,全部層面的 xhatch shape 一次變更為 solid shape
    如果用Shape / Parameters... / Shape fill / Fill syle 方式 ,需要一個一個去編輯,需要花費很多時間
    謝謝

    PS : 不能由 Shape / Change Shape Type 的方式,因為使用此方法,由其他軟體轉入的shape 會有誤差值

    点评

    由其他軟體轉入的shape 會有誤差值?? 軟體本身鋪銅方式不同, 都會有差異.  发表于 2023-9-8 01:27

    该用户从未签到

    2#
    发表于 2023-9-8 14:22 | 只看该作者
    9864556215
  • TA的每日心情
    奋斗
    2024-1-17 15:52
  • 签到天数: 237 天

    [LV.7]常住居民III

    3#
     楼主| 发表于 2023-9-8 15:27 | 只看该作者
    本帖最后由 penny190 于 2023-9-8 15:33 编辑

    雖然各軟體多少會有差異,但是因為原廠嚴格規定要100% 轉入複製
    所以,已經由原始軟體轉出時設定shape克服就差在allegro內的shape編輯程序,要一塊一塊shape去編輯,很浪費時間
    才想說有無方法,或skill可以一次框選全部shape 進行編輯


    点评

    原來Z-COPY是沒誤差的..........是依 Original boundary (包含線寬的最外框.), 難怪我不知道你們的問題點.  发表于 2023-9-18 09:36
    看過樓下大師寫的skill不錯了, 是我只會叫你手動ZCOPY到別層, 再轉換回來.  发表于 2023-9-9 19:35
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    4#
    发表于 2023-9-8 17:20 | 只看该作者
    https://www.eda365.com/thread-673697-1-1.html

    这个贴子里不是给你写过吗?

    点评

    Dear 這個帖子裡的轉換,對於不是要求100%的轉換 ~~ 非ˊ常好用 可是轉換之後我發現,對於pads轉入的shape,因為pads的shape outline 他們好像一般線寬, 我拿到的公版outline線寬是 4mil 所以用ski轉換成sha  详情 回复 发表于 2023-9-11 15:34
  • TA的每日心情
    奋斗
    2024-1-17 15:52
  • 签到天数: 237 天

    [LV.7]常住居民III

    5#
     楼主| 发表于 2023-9-11 15:34 | 只看该作者
    本帖最后由 penny190 于 2023-9-11 15:38 编辑
    db-_- 发表于 2023-9-8 17:20[url=]图片[/url]
    https://www.eda365.com/thread-673697-1-1.html

    这个贴子里不是给你写过吗?


    Dear 這個帖子裡的轉換,對於不是要求100%的轉換 ~~ 非ˊ常好用
    可是轉換之後我發現,對於pads轉入的shape,因為pads的shape outline 他們好像一般都有線寬,
    我拿到的公版outline線寬是 4mil
    所以用ski轉換成shape時,會以shape outlin線寬中心轉換,所以shape 無論到 cline or via 都會與原始版本有2mil的誤差值
    只有在 Shape / Parameters  / Fill style / 選擇 Solid 才能完全以shape outline 邊邊轉換


    手動轉換.jpg (31.49 KB, 下载次数: 4)

    手動一個一個轉換

    手動一個一個轉換

    SKILL 自動轉換.jpg (38.45 KB, 下载次数: 4)

    Skill 全部自動轉換

    Skill 全部自動轉換

    原始轉入.jpg (42.97 KB, 下载次数: 5)

    原始轉入檔案

    原始轉入檔案

    点评

    我看了一眼,确实是有存在边界线以中心点转换的情况存在。 并非由pads转换导致,很可能是由于动态铜的xhatch和静态铜的xhatch导致。 下图是动态铜的xhatch和静态铜的xhatch shape转换前后对比。(虽然转换前肉眼看  详情 回复 发表于 2023-9-11 19:02
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    6#
    发表于 2023-9-11 19:02 | 只看该作者
    penny190 发表于 2023-9-11 15:34
    Dear 這個帖子裡的轉換,對於不是要求100%的轉換 ~~ 非ˊ常好用
    可是轉換之後我發現,對於pads轉 ...

    我看了一眼,确实是有存在边界线以中心点转换的情况存在。
    并非由pads转换导致,很可能是由于动态铜的xhatch和静态铜的xhatch导致。
    下图是动态铜的xhatch和静态铜的xhatch shape转换前后对比。(虽然转换前肉眼看不出来是静态还是动态的)

    明显可以看到,静态铜的xhatch shape转换后边界是以cline的中心转换的。

    所以可以考虑先将静态铜转换成动态铜,转换成filled shape后再转回来。
    转换效果:


    代码如下,供参考。
    1. ;;v1.1 fixed static xhatch shape convert problem.
    2. ;;v1.0 create.

    3. axlCmdRegister("recs" 'dbRecreateShape
    4.             ?cmdType "interactive"
    5.             ?doneCmd '_dbRecreateShapeDone
    6.             ?cancelCmd '_dbRecreateShapeCancel
    7. )

    8. ;;debug
    9. ;;skill load "recreate_shape.il"
    10. ;;recs

    11. procedure(dbRecreateShape()
    12. (let (items lay net poly)

    13.     axlUIPopupSet(axlUIPopupDefine(nil
    14.                 '(("Done" _dbRecreateShapeDone)
    15.                   ("Oops" _dbRecreateShapeOops)
    16.                   ("Cancel" _dbRecreateShapeCancel)
    17.     )))
    18.     axlClearSelSet()
    19.     axlSetFindFilter(?enabled `("NOALL" "SHAPES" "boundary_shapes") ?onButtons `("all"))
    20.     axlAddSelectAll()
    21.     items = axlGetSelSet()
    22.     axlClearSelSet()
    23.     mk_recs = axlDBTransactionStart()

    24.     foreach(i items
    25.         when(i->fill && i->fill != t
    26.             lay = i->layer
    27.             net = i->net->name
    28.             when(!i->shapeIsBoundary
    29.                 i = axlShapeChangeDynamicType(i t t)  ;change static shape to dynamic
    30.                 axlDBRefreshId(i)
    31.             )
    32.             poly = axlPolyFromDB(i ?layer i->layer || car(i->startEnd) ?xhatch nil)
    33.             axlDeleteObject(i)
    34.             axlDBCreateShape(car(poly) t lay net)
    35.         )
    36.     )

    37.     dbRecreateShapeEvent()
    38.     axlUIPopupSet(nil)
    39. ))

    40. (defun _dbRecreateShapeDone ()
    41.     axlFinishEnterFun()
    42.     axlDBTransactionCommit(mk_recs)
    43. )

    44. (defun _dbRecreateShapeCancel ()
    45.     axlCancelEnterFun()
    46.     axlDBTransactionRollback(mk_recs)
    47. )

    48. (defun _dbRecreateShapeOops ()
    49.     axlDBTransactionOops(mk_recs)
    50. )

    51. procedure( dbRecreateShapeEvent()
    52. (let (event loop )
    53.     loop = t
    54.     while( loop
    55.         event = axlEnterEvent('(PICK) "" nil)
    56.         caseq(event->type
    57.             (DONE
    58.                 loop = nil
    59.                 _dbRecreateShapeDone()
    60.             )
    61.             (CANCEL
    62.                 loop = nil
    63.                 _dbRecreateShapeCancel()
    64.             )
    65.         )
    66.     )
    67. ))
    复制代码


    点评

    谢谢分享!: 5.0 支持!: 5.0
    谢谢分享!: 5 支持!: 5
      发表于 2023-9-18 15:59
    不好意思,將檔案存成recs.il 檔案 載入allegro 時, 卻出現下列錯誤訊息 ~~ 不知何解? 謝謝 W- *WARNING* (reader): illegal character '\37777777674' ignored at line 4 of file C:\SPB_Data\pcbe  详情 回复 发表于 2023-9-14 16:18
  • TA的每日心情
    奋斗
    2024-1-17 15:52
  • 签到天数: 237 天

    [LV.7]常住居民III

    7#
     楼主| 发表于 2023-9-12 10:49 | 只看该作者
    好的 ~~ 我來試試 ~~ 謝謝
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    8#
    发表于 2023-9-14 19:12 | 只看该作者
    你别用“点评”,用“回复”,点评后面的信息都看不到了。

    应该是你load那一行写错了
    或者是复制的时候附带了奇怪的字符。可以用编辑器的HEX模式看看。也可以重新新建一个文件再复制到新的文件中。

    点评

    可以用了 ~~~ 不知為何,在Microsoft Edge 開啟網頁,會出現中文字,一開始我還以為大大寫的程式內本來就有中文字 結果用 google chrome 開啟網頁,才發現問題所在 再試的結果 ~~ 就沒問題了 非常謝謝大  详情 回复 发表于 2023-9-18 16:08
    头像被屏蔽
  • TA的每日心情
    开心
    2025-1-23 15:05
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    9#
    发表于 2023-9-17 16:24 | 只看该作者
    提示: 作者被禁止或删除 内容自动屏蔽
  • TA的每日心情
    奋斗
    2024-1-17 15:52
  • 签到天数: 237 天

    [LV.7]常住居民III

    10#
     楼主| 发表于 2023-9-18 16:08 | 只看该作者
    db-_- 发表于 2023-9-14 19:12
    你别用“点评”,用“回复”,点评后面的信息都看不到了。

    应该是你load那一行写错了


    可以用了  ~~~  
    不知為何,在Microsoft Edge 開啟網頁,會出現中文字,一開始我還以為大大寫的程式內本來就有中文字
    結果用 google chrome 開啟網頁,才發現問題所在
    再試的結果 ~~  就沒問題了
    非常謝謝大大的分享 ~~  如此一來便可以節省很多時間


    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-5-28 21:04 , Processed in 0.109375 second(s), 28 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表