Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 8185|回復: 13
打印 上一主題 下一主題

一個sKILL範列,切4邊行的角

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-12-8 20:23:01 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
最近才剛在看SKILL,cadence的pdf檔寫的好爛,一個leChopShape試好久才試出來,這是我最近寫的,還有註解
% i7 F. ~/ l* I& l/*- A# O' N0 X; s( g( O6 b
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+ x7 H) l' f2 X  n
作者:Y.P.LIN
9 x! T3 r3 a9 ]! \4 AFile name : CUT.il
: S8 Z* k" c+ m( L5 j7 VPOP menu Write by nfmao
' K' M6 a6 u8 l! {) h' M; uDate: 2007.12.11' z1 k& J6 y1 ?; R2 v
Ver : 0.012 k# |0 U" e3 L, w
用法:在icfb,load本sKILL(例如 load "CUT.il" ),再開一個layout,選取rectangle(可複選),按滑鼠中鍵(會跳初選單),再選chop
4 l0 N0 `1 w2 \7 q$ U  C0 n, `參考:雷奧星空論壇(http://www.armbell.com/forum/viewforum.php?f=13&mforum=iclayout)  d3 S- o/ ~1 N" q1 l" a. @! X3 {
     :中国集成电路教育网(http://www.icedu.net/Article/shuzi/houduan/Index.html)
1 d) G' V. o5 ~0 e: m% P     :cadence手冊(安裝目錄下/doc/sk開頭目錄). q) [; c8 d6 \: t% a
注:本SKILL還在開發中,目前只能切RECTANGLE的4個角5 @+ n6 X4 `8 y9 e( r
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ c0 M: e3 \0 G% q/ e*/
. s8 ?. q9 K  J, p;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cut矩型的4個角;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+ A: L+ J3 J- ?8 D2 K2 ~
procedure(getXY(xyBox)                                ;取得四邊行CUT點座標的程序
- z" G- k: z/ s7 B7 G/ gd=0.5                                                 ;切的距離(自己設)
- M- T- L0 s# W( D& Px1 = car(car(xyBox))' o/ m; |( b0 R* G
y1 = cadr(car(xyBox))
0 g" {- O! ?$ f8 @7 H; G& Nx2 = car(cadr(xyBox))
2 }5 c) j: G, H  |2 H' Vy2 = cadr(cadr(xyBox))
+ y6 f5 e! K) p8 ]  a+ kcut1=list((x1:y1) (x1+d:y1) (x1:y1+d) (x1:y1))                        ;cut lin1座標list(是一個封閉cycle)! f4 j4 [5 ~/ c* W8 i
cut2=list((x2:y1) (x2-d:y1) (x2:y1+d) (x2:y1))                        ;cut lin2座標list(是一個封閉cycle)
! O  X! c& C( f4 ?& y; mcut3=list((x1:y2) (x1+d:y2) (x1:y2-d) (x1:y2))                        ;cut lin3座標list(是一個封閉cycle)
) _: d# L  y/ Y- [cut4=list((x2:y2) (x2-d:y2) (x2:y2-d) (x2:y2))                        ;cut lin4座標list(是一個封閉cycle)& @: ^7 L' K6 F" j" {* }/ i
)
( @8 N2 _, K6 N& H! }) s+ C$ K2 X, p) V* `# o% d! R
procedure(chop()
, A0 X; k, L& m1 D" ~& Z   selobj=geGetSelSet()                                ;取得選的物件: \" F9 E  g4 F0 O  A
   foreach(shape selobj                                ;把每一個物件逐一丟到shape變數
! ~# N8 G% Q/ i3 G2 r( K8 w  J- J   ;leChopShape( selobj list(0:0 100:100 ) nil nil 10 )
/ n/ r9 m' G) \: Y   selobjbox=shape~>bBox                               ;取得物件的BOX(指方形座標2點->list)8 ~! b, n+ F  Z5 ?4 q% K% R
   getXY(selobjbox);                                   ;呼叫getXY程序,且給一個參數selobjx
& N8 F- D, m5 p) c1 i8 {   leChopShape( shape cut1  t t)                       ;cut一邊,第一個t只是一個封閉cycle,第2個t指移除(remove)+ D- c2 v+ @$ |
   leChopShape( shape cut2  t t)                       ;cut一邊9 i, \! \0 n2 g( Y# b0 w
   leChopShape( shape cut3  t t)                       ;cut一邊
; c8 W* ?" I/ H; F% S   leChopShape( shape cut4  t t)                       ;cut一邊
+ ?) T2 B* {$ a5 D1 _, p; [   println(x1);/ Q; v% y7 r9 O' G1 k) T+ j
   println(y1);
4 J( O$ S" ]4 y. j   println(x2);
4 q- n  B2 j+ W/ Y   println(y2);
# e; |% u6 |3 C+ ?2 K   );foreach, U! T( y" Z7 y/ u5 D! W1 H* N9 N' s
)
) M1 G( u; [, r1 C9 \;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;表單;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9 j( ~* s) R) O0 w7 ]  p
trA_MenuItem = hiCreateMenuItem(                          ;menu項目13 h; k6 G, b1 A. A4 k$ d
   ?name 'trA_MenuItem7 R$ S" k& @( y- Q% a
   ?itemText "chop"                                       ;menu項目2標題
% n! W( m* k$ v* n   ?callback "chop()" ;;; prints B in the CIW             ;選項後的動作(呼叫chop()程序)
8 k) H9 o' a6 f+ Z+ D/ f4 Z0 V6 s1 ~   ). X1 z7 U, _3 e$ ]
trB_MenuItem = hiCreateMenuItem(                          ;menu項目2# g! l4 n" f5 t3 Q; @  \9 |) a
   ?name 'trB_MenuItem2 A4 W2 P0 t. T" G' ]
   ?itemText "Hello World"                                ;menu項目1標題9 \; f9 E6 X* q0 b6 F7 N
   ?callback  "println(word)"                     ;選項後的動作(在CIW視窗印出Hello World!!)
% W/ h0 f+ ?" C. _# b' p3 S   )/ p/ d& ^( `# s

, [! S. _+ ^7 w& ]# T
: u- [! ?7 h  d! iprocedure(trSimpleMenu()                                ;產生meun表單的程序
- [, v. k- D3 n, T# D( e' llet((simpleMenuID)                                     ;宣告區域(local)變數9 ?( V% T  `' T$ I/ N/ Y$ h, H
word="Hello wodr!!"                                    ;字串變數
3 m! C' W: x2 ^/ ZsimpleMenuID=hiCreateMenu(                              ;產生一個menu
6 N0 @+ y  D( g$ \& |) {'simpleMenu                                            ;GLOBAL(ID)
; d/ t/ U* B4 {# g2 ]. L9 m* h% `"Simple Menu"                                          ;標題  i0 Q6 Z9 w! s# _* {
'(trA_MenuItem trB_MenuItem)                           ;LIST(表單的項目)# C! k9 ~  v* B8 x4 v# r) X
)
! K# k. T* h) d; [( F: i: h
7 Z5 `3 C" \: QhiDisplayMenu(simpleMenuID)                             ;根據menuID在螢幕顯示
+ c* A  I, |5 h- l8 n);let
( ]9 n6 x! J( b* Y$ m);proce1 G3 h+ `) w- K6 t; s
遊客,如果您要查看本帖隱藏內容請回復

評分

參與人數 1 +3 收起 理由
yhchang + 3 感謝經驗分享!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂1 踩 分享分享
2#
發表於 2007-12-10 20:30:06 | 只看該作者
那麼勵害,
! d2 `0 r/ S  L- ]! R5 ^這可是高手啊,# t7 X* \. V, ~1 O8 A' l6 `
這樣的東西可不是一般人可以做的到的
# V* I& K$ c9 Z& t7 x謝謝分享
3#
發表於 2007-12-13 03:08:16 | 只看該作者
原來還可以這樣用啊.....5 i" E6 J6 H$ C5 v- w) r( ]
可惜都已經下線出去了,
8 U* o" U, o& {: _謝謝大大分享實用的技巧
4#
發表於 2009-6-23 09:03:25 | 只看該作者
正在找这个skill,网上这个资料好少啊,谢谢分享!
5#
發表於 2009-7-2 13:38:43 | 只看該作者
好像不錯喔.來試試看囉.謝謝您的方享...............
6#
發表於 2012-7-11 10:45:03 | 只看該作者
  謝謝啦謝謝啦 謝謝啦謝謝啦
7#
發表於 2012-8-23 15:10:01 | 只看該作者
cadence有自带的切角工具嘛
8#
發表於 2014-2-17 16:09:04 | 只看該作者
非常感謝  這部分目前需要做測試
9#
發表於 2014-3-24 14:40:45 | 只看該作者
好不好用,我来试一试,多谢楼主。
10#
發表於 2014-6-26 17:19:53 | 只看該作者
謝謝分享囉, 來實驗看看
11#
發表於 2015-5-6 16:53:24 | 只看該作者
正好很需要,謝謝分享~
12#
發表於 2015-5-10 18:01:10 | 只看該作者
正好很需要,超級感謝!
13#
發表於 2015-7-9 17:31:54 | 只看該作者
ic5141  EDIT > Other > modify corner ,不會就按Help 看一下就會設定了。
14#
發表於 2022-5-24 16:12:10 | 只看該作者
太神啦,谢谢分享啊啊啊啊# X  t8 m6 ~& m# D; X' M
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-29 12:40 PM , Processed in 0.144518 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表