球を描画するメソッド
- 題名: 球を描画するメソッド
- 著者: ぴち
- 日時: 2013/09/30 16:23:03
- ID: 31814
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: 球を描画するメソッド
- 著者: ぴち
- 日時: 2013/09/30 16:47:00
- ID: 31815
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: 球を描画するメソッド
- 著者: shu
- 日時: 2013/10/01 8:00:20
- ID: 31817
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: 球を描画するメソッド
- 著者: ぴち
- 日時: 2013/10/01 15:59:01
- ID: 31819
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: 球を描画するメソッド
- 著者: るる
- 日時: 2013/10/10 11:51:19
- ID: 31869
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: 球を描画するメソッド
- 著者: ぴち
- 日時: 2013/10/10 15:39:55
- ID: 31870
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[6]: 球を描画するメソッド
- 著者: jiji
- 日時: 2013/10/11 12:18:59
- ID: 31871
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[7]: 球を描画するメソッド
- 著者: るる
- 日時: 2013/10/11 13:34:49
- ID: 31872
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[8]: 球を描画するメソッド
- 著者: ぴち
- 日時: 2013/10/31 11:29:42
- ID: 31884
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
アンケート結果をビジュアル的に見せようと思っています。
画面を中央で左右に2分割し、「はい」の人数を画面左に赤の球で表示し、
「いいえ」は右に青の球を表示しようと考えました。
はい | いいえ
−−−−−−−−+−−−−−−−−
○○○○○○○○|●●●●●●●●
○○○○○○○○|●●●●●●●●
○○○○○○ |●●●
上記の様なイメージです。
ところが、球を描画するメソッドが見つけられないため、
無理矢理以下の様なコードで球っぽいものを書いてみたのですが、
これを人数分書くのは大変です。
私の探し方がへたくそなだけで、.NETを熟知している方なら
「ぷぷ、1行で書けるのに…」ってな質問なのかも知れませんが、
球を描画するメソッドって無いのですかねぇ〜
----- 以下こんなの書いてみました ----------------------------
Imports System.Drawing.Text
Imports System.Windows.Forms.TextRenderer
Imports System.Drawing.Drawing2D
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Dim canvas As New Bitmap(PictureBox1.Width, PictureBox1.Height)
Dim g As Graphics = Graphics.FromImage(canvas)
Dim gp As GraphicsPath
Dim gb As PathGradientBrush
g.CompositingMode = CompositingMode.SourceCopy
g.Clear(Color.Black)
g.FillEllipse(Brushes.Red, 10, 10, 100, 100)
gp = New GraphicsPath
gp.AddEllipse(14, 14, 90, 80)
'PathGradientBrushオブジェクトの作成
gb = New PathGradientBrush(gp)
'パスグラデーションの中心の色を白にする
gb.CenterPoint = New Point(40, 40)
gb.CenterColor = Color.White
'パス内の点に対応している色を指定する
gb.SurroundColors = New Color() {Color.Red}
g.FillEllipse(gb, 14, 14, 90, 80)
gp = New GraphicsPath
gp.AddEllipse(40, 94, 40, 16)
'PathGradientBrushオブジェクトの作成
gb = New PathGradientBrush(gp)
'パスグラデーションの中心の色を白にする
gb.CenterPoint = New Point(60, 102)
gb.CenterColor = Color.Salmon
'パス内の点に対応している色を指定する
gb.SurroundColors = New Color() {Color.Red}
g.FillEllipse(gb, New Rectangle(40, 94, 40, 16))
'リソースを解放する
gb.Dispose()
g.Dispose()
'PictureBox1に表示する
PictureBox1.Image = canvas
End Sub
End Class