扇型の描き方を教えてください mmhouse 2007/09/02 19:58:01 ├FullBASICでは絵定義を利用します。 白石 和夫 2007/09/02 21:01:21 └サンプルプログラムの 白石 和夫 2007/09/02 21:04:37 └なんと!素早い回答ありがとうございます!... mmhouse 2007/09/02 21:48:48 └ちらつきが気になるときは, 白石 和夫 2007/09/03 18:37:06
扇型の描き方を教えてください mmhouse 2007/09/02 19:58:01 ツリーへ
扇型の描き方を教えてください |
返事を書く ノートメニュー |
mmhouse <ejdyghwgwu> 2007/09/02 19:58:01 | |
はじめまして。
早速ですが、色々探したつもりですが、扇型の描き方が見つかりません。N88やQuickBasicはcircleコマンドの中で定義できたと思いますが・・・ 誰も扇型や弧を描かないはずはないので常識なのでしょうが、わかりません(ToT) お手数ですが、教えてください。 |
├FullBASICでは絵定義を利用します。 白石 和夫 2007/09/02 21:01:21 ツリーへ
Re: 扇型の描き方を教えてください |
返事を書く ノートメニュー |
白石 和夫 <fbdfvqwhki> 2007/09/02 21:01:21 | |
Full BASICでは絵定義を利用します。
次のプログラムの200行以降が扇形を描く絵定義。 この絵定義を利用するプログラム単位には20行のような宣言文を追加しておきます(十進BASICでは省略可) また,角の大きさの単位を度にするために OPTION ANGLE DEGREES を追加します。 中心x,y, 半径r, 開始角a, 終了角bの扇形は, DRAW sector(b-a) WITH ROTATE(a) * SCALE(r) * SHIFT(x,y) で描けます。 10 OPTION ANGLE DEGREES 20 DECLARE EXTERNAL PICTURE sector 30 SET WINDOW -4,4,-4,4 40 SET AREA COLOR 3 50 DRAW sector(45) WITH ROTATE(60) * SCALE(2) * SHIFT(2,1) 60 END 200 EXTERNAL PICTURE sector(a) 210 OPTION ANGLE DEGREES 220 DIM x(0 TO 360), y(0 TO 360) 230 FOR t=0 TO a 240 LET x(t)=COS(t) 250 LET y(t)=SIN(t) 260 NEXT t 270 LET x(a+1)=0 280 LET y(a+1)=0 290 MAT PLOT AREA, LIMIT a+2 :x,y 300 END PICTURE |
└サンプルプログラムの 白石 和夫 2007/09/02 21:04:37 ツリーへ
Re: 扇型の描き方を教えてください |
返事を書く ノートメニュー |
白石 和夫 <fbdfvqwhki> 2007/09/02 21:04:37 | |
サンプルプログラムの
SAMPLE\SECTOR.BAS も扇形の描き方の例になっています。 |
└なんと!素早い回答ありがとうございます!... mmhouse 2007/09/02 21:48:48 ツリーへ
Re: サンプルプログラムの |
返事を書く ノートメニュー |
mmhouse <ejdyghwgwu> 2007/09/02 21:48:48 | |
なんと!素早い回答ありがとうございます!しかも2件も!!戻って覗いてみて良かった!!
今日はじめてやってみた私にはsector.basより示していただいたサンプルの方がわかり易いです。 MAT PLOT LINES に変更し、t=1からにしてx(0)とy(0)を0にしたら、塗りつぶしの無い扇形になりました!! 扇形が転がっているように見せたいのでなんとかなりそうです。ありがとうございました。 ただ、専用命令ではないので少し遅くなりそうですね。 clearで消しながら回してみると、チラついて・・・ 工夫したいと思います。 これからもよろしくお願いします。 |
└ちらつきが気になるときは, 白石 和夫 2007/09/03 18:37:06 ツリーへ
Re: なんと!素早い回答ありがとうございます!... |
返事を書く ノートメニュー |
白石 和夫 <fbdfvqwhki> 2007/09/03 18:37:06 | |
ちらつきが気になるときは,
http://hp.vector.co.jp/authors/VA008683/QA6.htm を参照してください。 要点は,書き換え開始から書き換え終了までの命令群を SET DRAW MODE HIDDEN と SET DRAW MODE EXPLICIT で挟むことです。 |