矢印を描画するモジュール

lineと同じ使い方で矢印がかけます。

lineと同じ使い方で矢印がかけます。

#module
;	矢印描画モジュール
;使い方:lineと同じです。
#deffunc arrow_ int x1, int y1, int x2, int y2
	t = sin(deg2rad(15))
	x = double(x2-x1) / 10.0
	y = double(y2-y1) / 10.0
	xx = x * cos(t) - y * sin(t)
	yy = y * cos(t) + x * sin(t)
	line x1, y1, x1+xx, y1+yy
	xx = x * cos(-t) - y * sin(-t)
	yy = y * cos(-t) + x * sin(-t)
	line x1, y1, x1+xx, y1+yy
	line x1, y1, x2, y2
	return

#define global arrow(%1,%2,%3=ginfo_cx,%4=ginfo_cy) arrow_ %1,%2,%3,%4
#global

;	矢印の描画
x = ginfo_winx
y = ginfo_winy
randomize 
arrow rnd(x), rnd(y), rnd(x), rnd(y)
repeat 10
	color rnd(255),rnd(255),rnd(255)
	arrow rnd(x), rnd(y)
loop