くるくる回る色を教えて。
投稿者 ぼく  (小学生)
投稿日時
2008/10/15 02:33:38
はいはい、初心者で馬鹿な消防(ではないと思うが)は外で元気に遊んでな。
投稿者 ぼく  (小学生)
投稿日時
2008/10/15 02:54:04
ニセの馬君に用はないよ。
out of 眼中だ。
やま先生、お願いしまーす。
out of 眼中だ。
やま先生、お願いしまーす。
投稿者 サラダ  (社会人)
投稿日時
2008/10/15 05:22:37
>ニセの馬君に用はないよ。
なるほど。自分がキチガイと気づいたか。
なるほど。自分がキチガイと気づいたか。
投稿者 n  (社会人)
投稿日時
2008/10/15 08:52:47
「色を回転させる」ってのがよくわからん。
色を順番に変化させるのかと思ったけど、どうやら赤一色みたいだし。
とりあえず、描画処理はOnPaintでやったほうがいいかな。
色を順番に変化させるのかと思ったけど、どうやら赤一色みたいだし。
とりあえず、描画処理はOnPaintでやったほうがいいかな。
投稿者 ぼく  (小学生)
投稿日時
2008/10/15 09:07:58
nさん>ども。
例えば、青1~青10とか。シンプルに。
400万色使えるはずなのに、50色くらいしか現状は使えないのだ。
for i=0 to 10
color(i)
next
みたいな感じでできないかなぁ?
自分で探すのも時間がかかるので。(マテ)
例えば、青1~青10とか。シンプルに。
400万色使えるはずなのに、50色くらいしか現状は使えないのだ。
for i=0 to 10
color(i)
next
みたいな感じでできないかなぁ?
自分で探すのも時間がかかるので。(マテ)
投稿者 マラ  (小学生)
投稿日時
2008/10/15 09:57:25
結局何がしたいのかわかんねーよ
>400万色使えるはずなのに、50色くらいしか現状は使えないのだ。
50色て。システムカラーだけでももう少しあるだろ。
もっと使いたきゃARGB指定すりゃよかろーもん。
>例えば、青1~青10とか。シンプルに
自分でリスト作るしかないな。
それと、コード書くならタグで囲え、見辛いから。
>400万色使えるはずなのに、50色くらいしか現状は使えないのだ。
50色て。システムカラーだけでももう少しあるだろ。
もっと使いたきゃARGB指定すりゃよかろーもん。
>例えば、青1~青10とか。シンプルに
自分でリスト作るしかないな。
それと、コード書くならタグで囲え、見辛いから。
投稿者 n  (社会人)
投稿日時
2008/10/16 01:07:29
ごめん、赤一色じゃなくって赤と黒みたいだね。
Colorクラスの各プロパティを使おうとすると限りはある。
50よりは多いけど。
同系色で少しずつ色を変えたいなら、マラさんの言うようにARGB指定かリストを作るしかないね。
Color.FromArgbでできるんじゃない?
Colorクラスの各プロパティを使おうとすると限りはある。
50よりは多いけど。
同系色で少しずつ色を変えたいなら、マラさんの言うようにARGB指定かリストを作るしかないね。
Color.FromArgbでできるんじゃない?
投稿者 ぼく  (小学生)
投稿日時
2008/10/16 06:55:04
ありました。helpに。
ども。(^^)
ども。(^^)
投稿者 じぇい  (社会人)
投稿日時
2008/10/16 07:24:09
Math クラスには PI というフィールドがあるのだが。。。
http://msdn.microsoft.com/ja-jp/library/system.math.pi(VS.80).aspx
Pen クラスは、IDisposable だなぁ。。。
http://msdn.microsoft.com/ja-jp/library/system.drawing.pen(VS.80).aspx
SinCos って、なんのためにあるんだろう?って、クラス変数か!!しかも public (笑)
赤と黒が、交互じゃないの?0度から10度まで1度ずつを一瞬で描画するんだ。ふ~ん。。。
http://msdn.microsoft.com/ja-jp/library/system.math.pi(VS.80).aspx
Pen クラスは、IDisposable だなぁ。。。
http://msdn.microsoft.com/ja-jp/library/system.drawing.pen(VS.80).aspx
SinCos って、なんのためにあるんだろう?って、クラス変数か!!しかも public (笑)
赤と黒が、交互じゃないの?0度から10度まで1度ずつを一瞬で描画するんだ。ふ~ん。。。
投稿者 ぼく  (小学生)
投稿日時
2008/10/16 07:39:18
いやぁ。ジェイサン。ども。
functionの練習用です。ぼくは、基礎構築の段階なんです。基礎ばかりだとつまらないので、たまに上のランクをやったりします。
三角関数、アふぃん変換は勉強終了しました。
次の基礎構築はクラス。
functionの練習用です。ぼくは、基礎構築の段階なんです。基礎ばかりだとつまらないので、たまに上のランクをやったりします。
三角関数、アふぃん変換は勉強終了しました。
次の基礎構築はクラス。
投稿者 ぼく  (小学生)
投稿日時
2008/10/16 22:26:26
うへぇ~。。がーーん!むずかしぞ!ARGBめ
VisualBasic2008(無料版)
Dim g As Graphics = e.Graphics
' Transparent red, green, and blue brushes.
Dim trnsRedBrush As New SolidBrush(Color.FromArgb(&H78FF0000))
Dim trnsGreenBrush As New SolidBrush(Color.FromArgb(&H7800FF00))
Dim trnsBlueBrush As New SolidBrush(Color.FromArgb(&H780000FF))
' Base and height of the triangle that is used to position the
' circles. Each vertex of the triangle is at the center of one of
' the 3 circles. The base is equal to the diameter of the circle.
Dim triBase As Single = 100
Dim triHeight As Single = CSng(Math.Sqrt((3 * (triBase * _
triBase) / 4)))
' Coordinates of first circle
's bounding rectangle.
Dim x1 As Single = 40
Dim y1 As Single = 40
' Fill 3 over-lapping circles. Each circle is a different color.
g.FillEllipse(trnsRedBrush, x1, y1, 2 * triHeight, 2 * triHeight)
g.FillEllipse(trnsGreenBrush, x1 + triBase / 2, y1 + triHeight, _
2 * triHeight, 2 * triHeight)
g.FillEllipse(trnsBlueBrush, x1 + triBase, y1, 2 * triHeight, _
2 * triHeight)
ん\form1_paintイベント内
VisualBasic2008(無料版)
Dim g As Graphics = e.Graphics
' Transparent red, green, and blue brushes.
Dim trnsRedBrush As New SolidBrush(Color.FromArgb(&H78FF0000))
Dim trnsGreenBrush As New SolidBrush(Color.FromArgb(&H7800FF00))
Dim trnsBlueBrush As New SolidBrush(Color.FromArgb(&H780000FF))
' Base and height of the triangle that is used to position the
' circles. Each vertex of the triangle is at the center of one of
' the 3 circles. The base is equal to the diameter of the circle.
Dim triBase As Single = 100
Dim triHeight As Single = CSng(Math.Sqrt((3 * (triBase * _
triBase) / 4)))
' Coordinates of first circle
's bounding rectangle.
Dim x1 As Single = 40
Dim y1 As Single = 40
' Fill 3 over-lapping circles. Each circle is a different color.
g.FillEllipse(trnsRedBrush, x1, y1, 2 * triHeight, 2 * triHeight)
g.FillEllipse(trnsGreenBrush, x1 + triBase / 2, y1 + triHeight, _
2 * triHeight, 2 * triHeight)
g.FillEllipse(trnsBlueBrush, x1 + triBase, y1, 2 * triHeight, _
2 * triHeight)
ん\form1_paintイベント内
投稿者 ぼく  (小学生)
投稿日時
2008/10/16 23:13:07
成功!!勉強は小1時間!!
色が回転できました~(^^)
&H78ff0000
ここをいじくると、グリグリ色が回転できました。!!ははあはーこりゃ面白い!
色が回転できました~(^^)
&H78ff0000
ここをいじくると、グリグリ色が回転できました。!!ははあはーこりゃ面白い!
投稿者 n  (社会人)
投稿日時
2008/10/16 23:35:35
Color.FromArgb(Int32, Int32, Int32, Int32)
あ、はんどあせんぶらーな人には必要ないか。
あ、はんどあせんぶらーな人には必要ないか。
投稿者 ぼく  (小学生)
投稿日時
2008/10/17 00:36:57
n?さん
&H78123456
これを直接いじると16進数のX乗で処理しなければならず計算処理が余分に必要かと。
intでちょっとやってみます。(^^)
&H78123456
これを直接いじると16進数のX乗で処理しなければならず計算処理が余分に必要かと。
intでちょっとやってみます。(^^)
投稿者 ぼく  (小学生)
投稿日時
2008/10/17 00:51:22
でけた。(^^@)
VisualBasic2008無料版
Option Strict On
'10/16_org
Public Class Form1
'色の回転例
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim i As Integer = &H78FF0000
Dim ii As Integer
For ii = 0 To 10
Dim Brush As New SolidBrush(Color.FromArgb(i + ii * 10))
e.Graphics.FillEllipse(Brush, 100 + ii * 10, 100, 200, 200)
Next
i = &H7800FF00
For ii = 0 To 25
Dim Line As New Pen(Color.FromArgb(i + ii * 10))
e.Graphics.DrawLine(Line, 100, 320 + ii * 5, 300, 320 + ii * 5)
Next
Dim line1 As New Pen(Color.FromArgb(78, 255, 0, 0))
e.Graphics.DrawLine(line1, 100, 500, 300, 500)
End Sub
End Class
VisualBasic2008無料版
Option Strict On
'10/16_org
Public Class Form1
'色の回転例
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim i As Integer = &H78FF0000
Dim ii As Integer
For ii = 0 To 10
Dim Brush As New SolidBrush(Color.FromArgb(i + ii * 10))
e.Graphics.FillEllipse(Brush, 100 + ii * 10, 100, 200, 200)
Next
i = &H7800FF00
For ii = 0 To 25
Dim Line As New Pen(Color.FromArgb(i + ii * 10))
e.Graphics.DrawLine(Line, 100, 320 + ii * 5, 300, 320 + ii * 5)
Next
Dim line1 As New Pen(Color.FromArgb(78, 255, 0, 0))
e.Graphics.DrawLine(line1, 100, 500, 300, 500)
End Sub
End Class
投稿者 ぽく  (小学生)
投稿日時
2008/10/17 10:18:16
だーから特殊コード使えっつの。
学習能力の無いハゲだな。
ついでに一つ技術提供してやる。
URL貼ったってどうせニセ(笑)とか言って見ねぇだろうからキーワードだけ教えてやるよ。
アンマネージリソースの解放
Dispose
Using
学習能力の無いハゲだな。
Option Strict On
'10/16_org
Public Class Form1
'色の回転例
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim i As Integer = &H78FF0000
Dim ii As Integer
For ii = 0 To 10
Dim Brush As New SolidBrush(Color.FromArgb(i + ii * 10))
e.Graphics.FillEllipse(Brush, 100 + ii * 10, 100, 200, 200)
Next
i = &H7800FF00
For ii = 0 To 25
Dim Line As New Pen(Color.FromArgb(i + ii * 10))
e.Graphics.DrawLine(Line, 100, 320 + ii * 5, 300, 320 + ii * 5)
Next
Dim line1 As New Pen(Color.FromArgb(78, 255, 0, 0))
e.Graphics.DrawLine(line1, 100, 500, 300, 500)
End Sub
End Class
ついでに一つ技術提供してやる。
URL貼ったってどうせニセ(笑)とか言って見ねぇだろうからキーワードだけ教えてやるよ。
アンマネージリソースの解放
Dispose
Using
投稿者 ぼく  (小学生)
投稿日時
2008/10/17 18:59:35
どうやったんだ?、色の書き込み。
もうちょっと詳しく説明四郎。
聖風じゃないのか?
天草四郎=聖風君?
もうちょっと詳しく説明四郎。
聖風じゃないのか?
天草四郎=聖風君?
投稿者 るしぇ  (社会人)
投稿日時
2008/10/18 04:53:40
。。。
くるくるってこういうことじゃなかったんだ。。。
くるくるってこういうことじゃなかったんだ。。。
Private Const m_StepMax As Integer = 100
Private Const m_StepWidthMax As Integer = 200
Private m_Step As Integer
Private m_StepWidth As Integer
Private m_Count As Integer
Private m_Revers As Boolean
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
With Me.Timer1
.Enabled = Not .Enabled
End With
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim green As Integer = m_Step * m_Count
Dim Brush As SolidBrush
Dim g As Graphics = Me.CreateGraphics
If green > 255 Then green = 255
If green < 0 Then green = 0
Brush = New SolidBrush(Color.FromArgb(255, green, 0))
Me.Refresh()
g.FillEllipse(Brush, CInt(100 + (m_StepWidth / 2) * (m_StepMax - m_Count)), 100, m_StepWidth * (m_Count - 1), 200)
Brush.Dispose()
g.Dispose()
If m_Revers Then
m_Count -= 1
Else
m_Count += 1
End If
If m_Count > m_StepMax OrElse m_Count < 0 Then m_Revers = Not m_Revers
End Sub
Private Sub Kurukuru_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
m_Step = CInt(255 / m_StepMax)
m_StepWidth = CInt(m_StepWidthMax / m_StepMax)
End Sub
投稿者 ぼく  (小学生)
投稿日時
2008/10/18 07:24:02
なるほど。3Dみたいに回ってますね。
現状、質問したいことは、山ほどあるんですが。::
1 カッコ悪い質問(恥?)
変数Aに0を入れる。Bに0を入れる
A=0
B=0
縦長になる。横で入れたい(笑)
2 描画した絵とかグラフィックスを記憶したい、あるいは、記憶したものを、すぐにformのbackgroundイメージで使いたい。
現状、質問したいことは、山ほどあるんですが。::
1 カッコ悪い質問(恥?)
変数Aに0を入れる。Bに0を入れる
A=0
B=0
縦長になる。横で入れたい(笑)
2 描画した絵とかグラフィックスを記憶したい、あるいは、記憶したものを、すぐにformのbackgroundイメージで使いたい。
投稿者 るしぇ  (社会人)
投稿日時
2008/10/19 01:08:09
でたニセ質問だ。
変数AもBも使ってねぇ(笑)
しかも描画を決定してる変数1つだぞ、数違う。
Constに0入れると0割りで入らん。
他のStep関連の変数は0入れると描画しない。
偽testか?
とりあえず縦長になるのは描画領域の幅を変更
してるからだろ?高さ変更しろ。
ぼく (小学生)のプログラムに足し算と引き算と掛け算と割り算追加しただけなんだから質問しないで解析四郎。
こんなノリがいいのか?疲れる脳。
>2
描画した絵なんて大量のデータ記憶するのバカ?
100Step刻んだら100画像覚えていないと描画できないのか?
描画を決定してる変数1つ覚えろ。1とか2とか3だ、それだけ。
あとはfunctionだ、すぐあそべる。
イメージ使いたいならPictureBox
クルクル回さず絵を描け。
もう1時間でできた。あとは放っておく、以上。
変数AもBも使ってねぇ(笑)
しかも描画を決定してる変数1つだぞ、数違う。
Constに0入れると0割りで入らん。
他のStep関連の変数は0入れると描画しない。
偽testか?
とりあえず縦長になるのは描画領域の幅を変更
してるからだろ?高さ変更しろ。
ぼく (小学生)のプログラムに足し算と引き算と掛け算と割り算追加しただけなんだから質問しないで解析四郎。
こんなノリがいいのか?疲れる脳。
>2
描画した絵なんて大量のデータ記憶するのバカ?
100Step刻んだら100画像覚えていないと描画できないのか?
描画を決定してる変数1つ覚えろ。1とか2とか3だ、それだけ。
あとはfunctionだ、すぐあそべる。
イメージ使いたいならPictureBox
クルクル回さず絵を描け。
もう1時間でできた。あとは放っておく、以上。
投稿者 ぼく  (小学生)
投稿日時
2008/10/19 01:18:30
違う質問だったんですが・・・
なんか時間が止まってない?ココ。
クルクルプログラムは批判してませんので。
いろいろ方法がてんこ盛り
GraphicsPath.AddArc(single,single,single,single,single,single)
いろいろ難しい。Basicは難しい。C#とかC++と一緒のレベルだ。
なんか時間が止まってない?ココ。
クルクルプログラムは批判してませんので。
いろいろ方法がてんこ盛り
GraphicsPath.AddArc(single,single,single,single,single,single)
いろいろ難しい。Basicは難しい。C#とかC++と一緒のレベルだ。
投稿者 るしぇ  (社会人)
投稿日時
2008/10/19 02:54:30
批判されてるなんて思ってないよ?
ずっと同じようなキャラだから、そっちの表現のほうが理解しやすいのかと
思ってマネしただけ。ちゃんと質問には答えてるでしょ?
> 違う質問だったんですが・・・
なら尚更分からないです。
このスレッドには変数A,Bが出てくるプログラムが無いと思いますが?
縦長ってのがボクの書いたサンプルの画像で無いならどの縦長?
>2 描画した絵とかグラフィックスを記憶したい
これもボクのサンプルで描いた画像を保存する質問として回答しましたが
違う質問なら答えようが無いね。別スレッドで一から説明してください。
ずっと同じようなキャラだから、そっちの表現のほうが理解しやすいのかと
思ってマネしただけ。ちゃんと質問には答えてるでしょ?
> 違う質問だったんですが・・・
なら尚更分からないです。
このスレッドには変数A,Bが出てくるプログラムが無いと思いますが?
縦長ってのがボクの書いたサンプルの画像で無いならどの縦長?
>2 描画した絵とかグラフィックスを記憶したい
これもボクのサンプルで描いた画像を保存する質問として回答しましたが
違う質問なら答えようが無いね。別スレッドで一から説明してください。
投稿者 鍵  (社会人)
投稿日時
2008/10/19 06:15:18
>A=0
>B=0
>縦長になる。横で入れたい(笑)
もしやとは思いますが・・・
こういう意味ではないですよね?^^;
>B=0
>縦長になる。横で入れたい(笑)
もしやとは思いますが・・・
Dim A As Integer : Dim B As Integer
A = 0 : B = 0
こういう意味ではないですよね?^^;
投稿者 ぼく  (小学生)
投稿日時
2008/10/19 06:30:27
それです。
なにせ無料版なんでbasicしか使えない。
コロンでおkですか。アりがと。
なにせ無料版なんでbasicしか使えない。
コロンでおkですか。アりがと。
そこで、今度は色を回転させたいんです。
Public Class Form1
Public x, y As Integer
Public CL As Pen
Public X1, Y1 As Integer '描画位置
Public Function SinCos(ByVal nagasa As Integer, ByVal kakudo As Integer) As Integer
x = CInt(nagasa * Math.Cos(kakudo * 3.14159 / 180))
y = CInt(nagasa * Math.Sin(kakudo * 3.14159 / 180))
Return x And y
End Function
Public Sub Line()
CL = New Pen(Color.Black)
For i As Integer = 0 To 10
SinCos(100 + i * 20, i * 10)
X1 = 100 + i * 20
Y1 = 100 + i * 10
If i > 5 Then
CL = New Pen(Color.Red)
End If
Me.CreateGraphics().DrawLine(CL, X1, Y1, X1 + x, Y1 + y)
Next
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Line()
End Sub
End Class
ね。
CLのとこ。