/*#TITLE# 2本のストリングの間に2分割線を引くマクロ */ /* パイジョンのDXF Data 処理用 */ /* 2012.11.29 kita */ clear(); MENU/OFF max_pic = 63; n_pic = 0; /* 検索対象Pic */ kensaku_pic = array(max_pic+1); for(i=1;i<=max_pic;i+=1){ PIC [i] n = getitm(1,5); /* 5: Item Type String */ if(n==0){kensaku_pic[i]=0;} else {kensaku_pic[i]=1;n_pic+=1;} } echo n_pic; getany(1); nn = 0; for(i=1;i<=max_pic;i+=1){ if(kensaku_pic[i] == 0){continue;} PIC [i] ACT/REL MSTR /* Stringマスク */ ACT/ALL ALL n_act = #CURACTCNT; /* ACTIVE LIST要素数 */ for(j=1;j<=n_act;j+=1 ) { /*CLA/REG */ /* system レジスターの内容を消去する */ VER [actlst(j)] /* if(vtype(#VERXHTLIN) == 5){echo "Stop"; getany(1);continue;}*/ /* if(#VERXHTLIN != 4){ continue;}*/ CLS [#VERCLS] LFT [#VERLFT] ITM/BRK [actlst(j)] max_id = #CURMAXID; flg_id = 0;id0 = 0; id1 = 0; for(k=0;k<=3;k+=1){ id = max_id-k; VER [idptr(id)] /* echo id; getany(1);*/ if(#VERLEN > 1 && flg_id == 0){id0 = id; flg_id = 1;} else if(#VERLEN > 1 && flg_id == 1){id1 = id;} } if(id0 == 0 || id1 == 0){ continue;} LADV [idptr(id0)] [idptr(id1)] DEL [idptr(max_id)] [idptr(max_id-1)] [idptr(max_id-2)] [idptr(max_id-3)] } } MENU/ONN exit;