| |
/****************************************** * * * Program : ycSetArraySize.il * * Language : Cadence Skill * * Author : YEUNGCHIE * * Version : 21.01.05 * * * ******************************************/ ;;;BindKeys;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; hiSetBindKeys("layout" list( list("Shift<Btn4Down>" "ycSetArraySize(\"v\" 1)" ) list("Shift<Btn5Down>" "ycSetArraySize(\"v\" -1)") list("Ctrl<Btn4Down>" "ycSetArraySize(\"h\" 1)" ) list("Ctrl<Btn5Down>" "ycSetArraySize(\"h\" -1)") ) ) ;;;main;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; procedure(ycSetArraySize(h_v number "tn") prog((sel objs col row ori cmd) unless(sel = geGetSelSet() warn("Please select at least one object .\n") return(nil) ) unless(objs = setof(x sel member(x~>objType list("stdVia" "mosaic"))) warn("Apply to stdVia or mosaic .\n") return(nil) ) foreach(obj objs case(obj~>objType ("stdVia" col = "cutColumns" row = "cutRows" ori = obj~>orient ) ("mosaic" col = "columns" row = "rows" ori = car(obj~>tileArray) ) ) cmd = case(ori (("R0" "R180" "MX" "MY") ;same as R0 case(h_v ("h" ;horizontal strcat("obj~>" col "+=" artMakeString(number)) ) ("v" ;vertical strcat("obj~>" row "+=" artMakeString(number)) ) ) ) (("R90" "R270" "MXR90" "MYR90") ;same as R90 case(h_v ("h" strcat("obj~>" row "+=" artMakeString(number)) ) ("v" strcat("obj~>" col "+=" artMakeString(number)) ) ) ) );case: obj~>orient evalstring(cmd) );foreach: objs return(t) );prog );ycSetArraySize ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
滚轮同时增减 via 和 mosaic