Entwickler-Ecke

Multimedia / Grafik - Wie kann ich einen einfachen Punkt aufs Form zeichnen?


fkress - Do 15.01.09 16:51
Titel: Wie kann ich einen einfachen Punkt aufs Form zeichnen?
Hi
habe ne aufgabe bekommen, die lautet : zeichne einen Kreis.
Es soll keine vordefinierte funktion verwendet werden ( sowie DrawCircle oder ähnliches).
Es sollen nur die berechnete Koordinaten von (x,y) zum sezten verwendet werden.

Bsp. Ein kreis oder eine linie zeichnen.
die berechnungsroutinen habe ich alle, nur stelle ich mich etwas blöd an dies auf das nakte from zu zeichnen.

kann mir einer mal nen tip geben?

gruß fkress


AdrianK - Do 15.01.09 16:56

hallo :),

hier findest du was du suchst: http://openbook.galileocomputing.de/visual_csharp/visual_csharp_17_001.htm#mj18eac60c9b37a8c3f59ce07af708671b

Beispiel-Line zeichnen:

C#-Quelltext
1:
2:
3:
private void Form1_Paint(object sender, PaintEventArgs e) { 
  e.Graphics.DrawLine(new Pen(Brushes.Red, 6), 1220120200); 
}


fkress - Do 15.01.09 17:07

Hallo Adrian
danke für die SCHNELLE Antwort aber das "e.Graphics.DrawLine" habe ich auch bereits gefunden und das darf nicht verwendet werden.
Ich suche so etwas wie SetPixel(x,y).

gruss
frank

user profile iconAdrianK hat folgendes geschrieben Zum zitierten Posting springen:
hallo :),

hier findest du was du suchst: http://openbook.galileocomputing.de/visual_csharp/visual_csharp_17_001.htm#mj18eac60c9b37a8c3f59ce07af708671b

Beispiel-Line zeichnen:

C#-Quelltext
1:
2:
3:
private void Form1_Paint(object sender, PaintEventArgs e) { 
  e.Graphics.DrawLine(new Pen(Brushes.Red, 6), 1220120200); 
}


AdrianK - Do 15.01.09 17:14

wie wärs damit, ist das erlaubt? Zeichnet ja nur einen Punkt...

C#-Quelltext
1:
2:
3:
private void Form1_Paint(object sender, PaintEventArgs e) { 
  e.Graphics.FillRectangle(brush, x, y, 11); 
}


fkress - Do 15.01.09 17:37

Hi :lol:
Jep genau so etwas hatte ich gemeint. :!: :wink:

:beer:

danke :flehan: Adrian

gruss
frank

user profile iconAdrianK hat folgendes geschrieben Zum zitierten Posting springen:
wie wärs damit, ist das erlaubt? Zeichnet ja nur einen Punkt...

C#-Quelltext
1:
2:
3:
private void Form1_Paint(object sender, PaintEventArgs e) { 
  e.Graphics.FillRectangle(brush, x, y, 11); 
}


miniC# - Do 15.01.09 21:31

hallo,

keine ahung, ob es dir nun jetzt schon selbst bekannt ist, aber die methode SetPixel(int x, int y, Color color) gibt es wirklich, sie ist eine Methode der System.Drawing.Bitmap klasse. hier müsstest du beim zeichnen aber für antialaising und refresh selbst sorgen ;).

gruß,
miniC'


Greenberet - Do 15.01.09 21:48

user profile iconminiC# hat folgendes geschrieben Zum zitierten Posting springen:
hallo,

keine ahung, ob es dir nun jetzt schon selbst bekannt ist, aber die methode SetPixel(int x, int y, Color color) gibt es wirklich, sie ist eine Methode der System.Drawing.Bitmap klasse. hier müsstest du beim zeichnen aber für antialaising und refresh selbst sorgen ;).

gruß,
miniC'

Oder...
Er ruft über PInvoke die WinAPI SetPixel methode auf :P