Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-12-8 20:23:01 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
最近才剛在看SKILL,cadence的pdf檔寫的好爛,一個leChopShape試好久才試出來,這是我最近寫的,還有註解: E  o* r8 D" g' o, s# J, G% p& V
/*
' X! s  n* v& d( m0 \//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8 ?* b- X$ L5 ], }  ?- \" B4 Q$ |
作者:Y.P.LIN/ Y9 y, j5 j  ]2 ]
File name : CUT.il* b5 h7 g( t( M9 A" t
POP menu Write by nfmao( Y' f2 s  m% u; k
Date: 2007.12.11. w0 s' i# }0 u! E, B% e- J. @9 L+ n
Ver : 0.01' r6 g4 j$ j- y; `$ a
用法:在icfb,load本sKILL(例如 load "CUT.il" ),再開一個layout,選取rectangle(可複選),按滑鼠中鍵(會跳初選單),再選chop
% f- U0 W( z/ u5 x5 L; F3 U, \參考:雷奧星空論壇(http://www.armbell.com/forum/viewforum.php?f=13&mforum=iclayout)
5 ?# y* o) v5 O+ M( L     :中国集成电路教育网(http://www.icedu.net/Article/shuzi/houduan/Index.html)2 L; W* ?" s4 |. v6 l4 p# a; @
     :cadence手冊(安裝目錄下/doc/sk開頭目錄)
# o, @" C: P! h注:本SKILL還在開發中,目前只能切RECTANGLE的4個角, l& M9 E' x. b- z! d/ q# K
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////% U! u) ^4 l% g0 M! c; M9 Z! q
*/. M6 i' ]; ^! D0 g1 M3 g" b% f4 U
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cut矩型的4個角;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;$ Z* a" c/ w& }& {
procedure(getXY(xyBox)                                ;取得四邊行CUT點座標的程序
3 _" Z8 B2 C! |6 Nd=0.5                                                 ;切的距離(自己設), l( b( d- s" I& n( R; k
x1 = car(car(xyBox))
/ N1 W+ _6 A5 S; w8 X+ t  Z: iy1 = cadr(car(xyBox))4 \+ Q! i) }% v! N8 T
x2 = car(cadr(xyBox))& b; ]' Z6 N8 X( u8 j$ f: o( K
y2 = cadr(cadr(xyBox))7 T' g- q( j  Y* K; n
cut1=list((x1:y1) (x1+d:y1) (x1:y1+d) (x1:y1))                        ;cut lin1座標list(是一個封閉cycle)" N  ?3 k: U) o5 H. C: c- i/ V
cut2=list((x2:y1) (x2-d:y1) (x2:y1+d) (x2:y1))                        ;cut lin2座標list(是一個封閉cycle)
) l% {! C) _' _! Hcut3=list((x1:y2) (x1+d:y2) (x1:y2-d) (x1:y2))                        ;cut lin3座標list(是一個封閉cycle)" V  J" B. z( ~3 W2 `
cut4=list((x2:y2) (x2-d:y2) (x2:y2-d) (x2:y2))                        ;cut lin4座標list(是一個封閉cycle)
; O) b6 A  r4 U0 V# C)3 v' `$ W) S% T

6 }+ E' L' T* j. `procedure(chop()
5 V2 z$ T2 l6 j4 r. R, m! c9 z; T   selobj=geGetSelSet()                                ;取得選的物件
. N5 M1 C9 l! U) C   foreach(shape selobj                                ;把每一個物件逐一丟到shape變數
1 _- {( _  Y  v  @   ;leChopShape( selobj list(0:0 100:100 ) nil nil 10 )
$ Z, o' e, A, j7 u7 }; x' p   selobjbox=shape~>bBox                               ;取得物件的BOX(指方形座標2點->list)- f% Q; m' h* {9 X
   getXY(selobjbox);                                   ;呼叫getXY程序,且給一個參數selobjx
9 c' H, s$ ]9 d6 ^7 K$ I   leChopShape( shape cut1  t t)                       ;cut一邊,第一個t只是一個封閉cycle,第2個t指移除(remove)' D3 \& n1 k; l8 L2 z
   leChopShape( shape cut2  t t)                       ;cut一邊
' F, G! w; z5 l4 ]) @) z   leChopShape( shape cut3  t t)                       ;cut一邊2 c1 B& h1 U) C7 y, e5 E! N; l
   leChopShape( shape cut4  t t)                       ;cut一邊
  ?! u+ \5 ?  K3 s8 i& g   println(x1);
+ D7 {8 s! b5 S1 K% m   println(y1);
# e! i' G$ {& i. g   println(x2);; ?- ]0 v0 x0 v
   println(y2);
$ V7 f7 P5 m" R* S   );foreach
% y" n9 Q2 W  p/ Q4 C)
. s! v2 V2 v$ m9 T  x3 _, G" W* P;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;表單;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1 F9 t; _8 x& @$ i* ^6 |
trA_MenuItem = hiCreateMenuItem(                          ;menu項目16 V! \. ?/ n9 [! w" j- L5 r) Z
   ?name 'trA_MenuItem
5 \0 S) L1 O4 P   ?itemText "chop"                                       ;menu項目2標題
  f7 B  p) I6 r# Q8 h  e. h   ?callback "chop()" ;;; prints B in the CIW             ;選項後的動作(呼叫chop()程序)
, T1 k6 ~5 m  \& l   )
& Z! S1 l; L* O. ^% X; L5 R' o) ktrB_MenuItem = hiCreateMenuItem(                          ;menu項目2* {! H$ T4 j$ X5 ~) @3 w; M
   ?name 'trB_MenuItem* d. ?# J. d0 e4 x$ p9 |
   ?itemText "Hello World"                                ;menu項目1標題
+ C% `" i/ X- i: f( \1 l! w% O   ?callback  "println(word)"                     ;選項後的動作(在CIW視窗印出Hello World!!)* P+ \$ F' z7 M6 U7 P/ V6 r  m
   ), L1 L. ^+ k: ~3 }4 z  r  F% I
) ]( v# J  i8 y3 L8 Y( A

# |. [' V8 s$ U' e/ h& _) {( Zprocedure(trSimpleMenu()                                ;產生meun表單的程序
  `: ^( x7 ~9 |let((simpleMenuID)                                     ;宣告區域(local)變數- U4 ~' S! G( `9 I$ [- Z! {( a
word="Hello wodr!!"                                    ;字串變數
4 u' M; D2 A4 A* m1 C% ZsimpleMenuID=hiCreateMenu(                              ;產生一個menu
4 {% V: p* Y/ p" L" I: L1 N& a'simpleMenu                                            ;GLOBAL(ID)7 a4 z9 ^/ N1 m
"Simple Menu"                                          ;標題# E1 n6 m, g: A. Z2 i2 s" u& L0 s
'(trA_MenuItem trB_MenuItem)                           ;LIST(表單的項目)$ U6 a5 n, X) C* O8 `. G; t$ u
)' s7 X. v* X; z& r, g% n
% A+ @" q2 @) D# j3 b
hiDisplayMenu(simpleMenuID)                             ;根據menuID在螢幕顯示
. p8 Z& q. s$ j, g6 _% w/ y+ ?);let
; ^, f7 H3 ^, s! I5 F5 Z6 p) n. A# T9 a);proce
0 L, M( l# p; c! b
遊客,如果您要查看本帖隱藏內容請回復

評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂1 踩 分享分享
14#
發表於 2022-5-24 16:12:10 | 只看該作者
太神啦,谢谢分享啊啊啊啊
5 K9 g* B9 a5 f, f8 g. {3 p
13#
發表於 2015-7-9 17:31:54 | 只看該作者
ic5141  EDIT > Other > modify corner ,不會就按Help 看一下就會設定了。
12#
發表於 2015-5-10 18:01:10 | 只看該作者
正好很需要,超級感謝!
11#
發表於 2015-5-6 16:53:24 | 只看該作者
正好很需要,謝謝分享~
10#
發表於 2014-6-26 17:19:53 | 只看該作者
謝謝分享囉, 來實驗看看
9#
發表於 2014-3-24 14:40:45 | 只看該作者
好不好用,我来试一试,多谢楼主。
8#
發表於 2014-2-17 16:09:04 | 只看該作者
非常感謝  這部分目前需要做測試
7#
發表於 2012-8-23 15:10:01 | 只看該作者
cadence有自带的切角工具嘛
6#
發表於 2012-7-11 10:45:03 | 只看該作者
  謝謝啦謝謝啦 謝謝啦謝謝啦
5#
發表於 2009-7-2 13:38:43 | 只看該作者
好像不錯喔.來試試看囉.謝謝您的方享...............
4#
發表於 2009-6-23 09:03:25 | 只看該作者
正在找这个skill,网上这个资料好少啊,谢谢分享!
3#
發表於 2007-12-13 03:08:16 | 只看該作者
原來還可以這樣用啊.....
% e- I# u* h5 z6 C: i3 p可惜都已經下線出去了,
  ?0 e6 I5 w1 B謝謝大大分享實用的技巧
2#
發表於 2007-12-10 20:30:06 | 只看該作者
那麼勵害,: f4 G3 q5 z& j: Z; C  ~
這可是高手啊,
1 Z/ g5 v, C" P8 V3 g這樣的東西可不是一般人可以做的到的; v- S5 D; p9 ]. e
謝謝分享
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-5 07:33 PM , Processed in 0.134517 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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