自分自身のための ものづくり / 自分自身のためのものづくりメモ

突っ込みなどがありましたら掲示板にお願いします。

* 画面に十字線を引く

 基板の穴開け補助に必要だったので、やっつけで製作。HSP3用。

 スーパーインポーズできるMSXとかよりも、ビデオキャプチャカード搭載のWindowsマシンの方が多いだろう。カメラを斜めに配置することによる縦横比のゆがみを、ウィンドウをリサイズすることで簡単に補正できるのが魅力。

 カーソルキーで位置を移動。Enterを押しながらだと高速移動。
 作業に使うには、USB接続のテンキーを繋ぐと便利。

#packopt name "CrossHair"

wait_ms = 50

id_xhair = 1
id_yhair = 2

*init_window
	title "CrossHair"
	width 128, 128, 0,0

	dispx = ginfo_dispx
	dispy = ginfo_dispy
	center_x = dispx /2
	center_y = dispy /2
	hair_width = 1 // 太らせ幅 (1なら計3ドット幅)
	mag = 1

	input center_x, 64, 24
	input center_y, 64, 24
	input mag, 64, 24

	bgscr id_xhair, dispx, hair_width *2 +1, ,0, center_y -hair_width, dispx, hair_width *2 +1
	bgscr id_yhair, hair_width *2 +1, dispy, ,center_x -hair_width, 0, hair_width *2 +1, dispy
	gsel id_xhair, 2
	color 0,255,0
	boxf 0,0, dispx, hair_width*2
	gsel id_yhair, 2
	color 0,255,0
	boxf 0,0, hair_width*2, dispy
	

*mainloop
	stick stk, 15+32
	if stk&32 {
		mag = 4
	} else {
		mag = 1
	}
	if stk&1 : center_x -=mag
	if stk&4 : center_x +=mag
	if stk&2 : center_y -=mag
	if stk&8 : center_y +=mag
	gsel id_xhair
	width ,, 0, center_y -hair_width
	gsel id_yhair
	width ,, center_x -hair_width
	await wait_ms
	goto *mainloop

	stop

#HSP #電子工作

create : 2006/07/26 (Wed)
update : 2006/07/27 (Thu)