/* #TITLE# スターホイール/スターホイール送びん軌跡*/ /* M_TRSW.MAC * 円と円の接点での、びんの出入り軌跡 * created by R.Nakamura on 1990-10-18 * Modify: 1999,10.16 Hide.Tanaka * --------------------------------------------------------- * * 99.10.16: Ver.12 へ対応。 *---------------------------------------------------------- */ /* 初期設定 */ clear(); div = 2; /* 描画分割数 */ dig = 45; /* 描画範囲(角度) */ DEL CURPIC /* 対象ワークのサブモデル名 */ echo "サブモデル名を入力"; sname = gettxt(1); /* 本体直径 */ echo "左側円直径を入力"; d1 = getnum(1); /* SW 直径 */ echo "右側円直径を入力"; d2 = getnum(1); echo "左側円ポケット数を入力"; p1 = getnum(1); echo "右側円ポケット数を入力"; p2 = getnum(1); r1 = d1 / 2; r2 = d2 / 2; r3 = -r1; /* 入力チェック */ if ( r1 <= 0 || r2 <= 0 ) { echo "入力に誤りがあります。"; exit; } CLS 3 LFT 3 LVL <0> LHL <0> CCC <0,0> CCC <0,0> CLS 1 LFT 1 ZOOM <-200,-150> <200,150> SUB [sname] ANG 0 <0,0> CLS 100 /* Main routine */ l = r1 + r2; SUB [sname] for( th1=div; th1<=dig ; th1+=div ) { th2 = (p1 / p2) * th1; th3 = th1 + th2; x2 = -r1 + l * cos(th1) - r2 * cos(th3); y2 = l * sin(th1) - r2 * sin(th3); ANG [th3] } CLS 100 GNT "左側円直径 = " <-160,-50> GNT "右側円直径 = " <-160,-55> GNT "左側円ポケット数 = " <-160,-60> GNT "右側円ポケット数 = " <-160,-65> GNT [d1] <-100,-50> GNT [d2] <-100,-55> GNT [p1] <-100,-60> GNT [p2] <-100,-65> GEOM exit; /* end of file */