ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2018年12月17日(月) 23:58

All times are UTC+09:00




トピックに返信する
ユーザー名:
件名:
メッセージ本文:
こちらにメッセージをご入力ください。60000 字まで入力できます。 

フォントサイズ:
フォントカラー
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: OFF
BBCode を無効にする
URL を自動的にパースしない
クイズ
お手数ですがカタカナで「エービー」と4文字を入力してください。:
答えを正確にご入力ください。答えられるかどうかでスパムボットか否かを判定します。
   

トピックのレビュー - 便利なグラフィック関数
作成者 メッセージ
  記事の件名:   引用付きで返信する
イグトランス様、早速のご指摘ありがとうございます。ご指摘を元に自分の関数集も次のように変更させていただきました。
コード:
Function CircleX(hDC As Long,x As Long,y As Long,r As Long,hRGB As Long,dRGB As Long)As Long
	Dim hR,hG,hB,dR,dG,dB
	Dim i As Long
	Dim Pen As Long,OldPen As Long
	Dim Brs As Long,OldBrs As Long
	hR=GetRValue(hRGB)
	hG=GetGValue(hRGB)
	hB=GetBValue(hRGB)
	dR=GetRValue(dRGB)
	dG=GetGValue(dRGB)
	dB=GetBValue(dRGB)
	For i=0 To r
		Brs=CreateSolidBrush(RGB((hR-dR)/(r)*(i)+dR,(hG-dG)/(r)*(i)+dG,(hB-dB)/(r)*(i)+dB))
		Pen=CreatePen(PS_SOLID,1,RGB((hR-dR)/(r)*(i)+dR,(hG-dG)/(r)*(i)+dG,(hB-dB)/(r)*(i)+dB))
		OldBrs=SelectObject(hDC,Brs)
		OldPen=SelectObject(hDC,Pen)
		Ellipse(hDC,x-(r-i),y-(r-i),x+(r-i),y+(r-i))
		SelectObject(hDC,OldBrs)
		DeleteObject(Brs)
		SelectObject(hDC,OldPen)
		DeleteObject(Pen)
	Next
EndFunction
投稿記事 Posted: 2005年7月18日(月) 00:14
  記事の件名:  Re: 便利なグラフィック関数  引用付きで返信する
RGB値の分解はこういう風にすればできます。
Const GetRValue(rgb) = (rgb And &hff)
Const GetGValue(rgb) = ((rgb >> 8) And &hff)
Const GetBValue(rgb) = ((rgb >> 16) And &hff)

不要でしたらすみません。
投稿記事 Posted: 2005年7月17日(日) 22:28
  記事の件名:  便利なグラフィック関数  引用付きで返信する
球体を描画します。
コード:
Function CircleX(hDC As Long,x As Long,y As Long,r As Long,_
      hR,hG,hB,dR,dG,dB)As Long
   Dim i As Long
   Dim Pen As Long,OldPen As Long
   Dim Brs As Long,OldBrs As Long
   For i=0 To r
      Brs=CreateSolidBrush(RGB((hR-dR)/(r)*(i)+dR,(hG-dG)/(r)*(i)+dG,(hB-dB)/(r)*(i)+dB))
      Pen=CreatePen(PS_SOLID,1,RGB((hR-dR)/(r)*(i)+dR,(hG-dG)/(r)*(i)+dG,(hB-dB)/(r)*(i)+dB))
      OldBrs=SelectObject(hDC,Brs)
      OldPen=SelectObject(hDC,Pen)
      Ellipse(hDC,x-(r-i),y-(r-i),x+(r-i),y+(r-i))
      SelectObject(hDC,OldBrs)
      DeleteObject(Brs)
      SelectObject(hDC,OldPen)
      DeleteObject(Pen)
   Next
EndFunction
hDC
描画するデバイスコンテキストを指定します。
x
中心のX座標を指定します。
y
中心のY座標を指定します。
r
円の半径を指定します。
hR,hG,hB
中心のRGB値を分けて指定します。(RGB値の分解の仕方知らなかったんで)
dR,dG,dB
一番外側ののRGB値を分けて指定します。(RGB値の分解の仕方知らなかったんで)
投稿記事 Posted: 2005年7月17日(日) 21:53

All times are UTC+09:00


ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by KONISHI Yohsuke