PDA

View Full Version : رنگ کردن یک پیکسل فرم



reza_Nazem
جمعه 13 مهر 1386, 23:09 عصر
سلام دوستان

من می خوام یک برنامه برای رسم توابع ریاضی بنویسم برای همین دنبال این هستم که بتونم یک پیکسل را روی فرم به یک رنگ خاص در بیاورم


هم اکنون نیازمند یاری سبزتان هستیم

Alireza_Salehi
شنبه 14 مهر 1386, 05:21 صبح
ابتدا یک شی از کلاس Graphics ایجاد کنید و بعد با استفاده از متد CreateGraphics فرم شی Graphics مربوط به فرم را در اختیار دارید ،


Dim gph As System.Drawing.Graphics
gph = Me.CreateGraphics()


حالا با متد هایی که با Draw شروع می شوند انواع ترسیمات پایه را می توانید انجام دهید


gph.DrawArc(...)
gph.DrawLine(...)
gph.DrawPie(...)
...

reza_Nazem
شنبه 14 مهر 1386, 05:23 صبح
دوست عزیز این توایع برای ترسیم خط و منحنی هستند در حالی که من فقط یک پیکسل رو می خوام رنگ کنم

amirsajjadi
شنبه 14 مهر 1386, 12:55 عصر
شما برای رسم توابع ریاضی به جای اینکه پیکسل پیکسل تابع رو رسم کنید میتونید از تابع Curve استفاده کنید هم سرعتش نسبت به راه قبلی بالاتره و هم دقت رسمش

Dim a As Graphics = Me.CreateGraphics
Dim arr() As Point = New Point() {New Point(10, 10), New Point(50, 100), New Point(100, 100)}
a.DrawCurve(Pens.Blue, arr)

saeed_rezaei
شنبه 14 مهر 1386, 22:59 عصر
سلام.
یه متد داریم با عنوان setpixel که می تونه رنگ یه پیکسل رو تغییر بده. اما مهم اینه که این متد، در کلاس bitmap قرارداره و می تونه تصاویر رو تحت تاثیر قرار بده. نمی دونم صراحتا برای فرم جواب می ده یا نه.

__siavash__
شنبه 14 مهر 1386, 23:51 عصر
در واقع باید یه بیضی به ارتفاع و پهنای 1 رسم کنی !!!


Drawing a Single Pixel
The following example demonstrates graphics methods for changing the color of a single pixel on a form at run time. The Visual Basic 6.0 example uses the PSet method. The Visual Basic 2005 example uses the DrawEllipse method with the Height and Width parameters set to 1.
Note In Visual Basic 6.0, the default unit of measurement is twips; in Visual Basic 2005 it is pixels.


' Visual Basic 6.0
Private Sub Form_Paint()
Me.DrawWidth = 1
PSet (1000, 1000), vbRed
End Sub



' Visual Basic 2005
Private Sub Form1_Paint8(ByVal sender As Object, ByVal e As _
System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint

e.Graphics.DrawEllipse(Pens.Red, 70, 70, 1, 1)
End Sub