AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint
Thema durchsuchen
Ansicht
Themen-Optionen

Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

Offene Frage von "bolygon"
Ein Thema von bolygon · begonnen am 17. Apr 2004 · letzter Beitrag vom 17. Apr 2004
Antwort Antwort
bolygon

Registriert seit: 17. Apr 2004
2 Beiträge
 
#1

Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

  Alt 17. Apr 2004, 14:57
Hallo an alle!

Ich möchte gerne wissen, wie man einen Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint mit Delphi 6 erstellen kann.
Ich weiß, dass herkömmlicher Pinsel ist: Canvas.LineTo(x,y) und es gibt verschiedene Moden für den Pinsel, die durch Canvas.Pen.Mode bestimmt werden.

Gibt es vielleicht einen Modus fürs Airbrusch mit Sperkeln?

Danke im voraus!
  Mit Zitat antworten Zitat
mumu

Registriert seit: 28. Okt 2003
Ort: Bamberg
519 Beiträge
 
#2

Re: Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

  Alt 17. Apr 2004, 15:22
nee, da gibt es glaub ich keine methode für.

aber die kannst du dir doch leicht selbst schreiben. die mauskoordinaten beim click bekommst du ja und dann mal du einfach von deiner mauskoordinate aus in alle richtungen punkte und umso weiter du von deiner mauskoordinate weg kommst, umso weniger pixel zeichnest du...
  Mit Zitat antworten Zitat
Benutzerbild von MisterNiceGuy
MisterNiceGuy

Registriert seit: 1. Jul 2003
Ort: Mannheim
919 Beiträge
 
Delphi 7 Personal
 
#3

Re: Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

  Alt 17. Apr 2004, 15:37
Genau, einfach einen bestimmten Bereich um die Mausposition festlegen und dann mit Random ein paar pixel einfärben

ber nicht vergessen der Bereich bei jedem Mousemove neu zu setzen
Jonas
Wenn mich jemand sucht, ich bin im Kühlschrank!

Informationen über das Duale Studium
www.jofre.de
  Mit Zitat antworten Zitat
Alibi

Registriert seit: 15. Aug 2003
Ort: Bispingen
94 Beiträge
 
Delphi 7 Personal
 
#4

Re: Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

  Alt 17. Apr 2004, 15:42
Ich würd das in etwa so machen:
- Dort, wohin geklickt wurde, da sollen in einem bestimmten Radius ja zufällig Pixel gemalt werden (Oder auch nicht).
- Also alle Pixel dieses Kreises durchgehen zufällig den momentanen Pixel füllen oder halt nicht. Je nachdem, wie dicht gesprüht werden soll, gestaltest du den Faktor zufällig, der bestimmt, ob ein Pixel gesetzt werden soll oder nicht. Also meinetwegen if random(100) < sprühfaktor then malPixel;
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning.
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#5

Re: Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

  Alt 17. Apr 2004, 16:36
hi
ich hab mich jetzt mal hingesetzt und einen code ausgearbeitet:

die paintbox hat den namen "PaintBox1" und sollte schon so 400x400 pixel groß sein fürs beispiel

aaalso:
8)
Code:
uses
  ...Math...     // braucht man für Power

procedure TForm1.Button1Click(Sender: TObject);
var
  x_,y_ : Integer;
  x,y: Integer;
  r: Integer;
  abstand: Integer;
  gewichtung: Integer;
begin
  r := 50;     // "Radius"

  x := 150;    //aktuelle Position
  y := 100;
  gewichtung := 100; // wie sehr mit einem "klick" gezeichnet werden soll
 
  Randomize;
  with PaintBox1.Canvas do
    for x_ := -r to r do    // jedes Pixel des Quadrates durchgehen
      for y_ := -r to r do
        // der abstand von mittelpunkt und punkt im kreis ist:
        // round(Power(Sqr(x_)+Sqr(y_),1/2))
        // Satz des Pythagoras!!! (hoch 1/2) = 2te wurzel
        if round(Power(Sqr(x_)+Sqr(y_),1/2)) <= r then
          if random(gewichtung) = 0 then
            Pixels[x_+x,y_+y] := clBlue;
end;
*ganz stolz auf lauter schleifen ohne begin/end...*

mfg
stefan
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#6

Re: Airbrush mit Sperkeln bzw. Airbrush von Microsoft Paint

  Alt 17. Apr 2004, 16:43
hab es noch ein bisschen optimiert!
beispiel siehe anhang


mfg
stefan
Angehängte Dateien
Dateityp: rar spr_hen.rar (161,8 KB, 27x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz