Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Benötige Hilfe bei 2 Grafik Effekten

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
0oFreako0



Anmeldungsdatum: 17.12.2011
Beiträge: 114

BeitragVerfasst am: 14.05.2012, 09:45    Titel: Benötige Hilfe bei 2 Grafik Effekten Antworten mit Zitat

Hi ich hätte 2 Fragen an die Grafik Spezialisten.

Ich wollte von einem Pic was ich in den Speichergeladen habe
die Farbdaten verändern. Wie ich das genau mache ist kein Problem.
Nur wie bekomm ich das Farbmischen hin?

Zb Hab ich ein Pic in Grau nun möchte ich das es Rotanteile enthält.
Wie man es bei Gimp zb mache kann.



Als 2. Wollte ich einen einfachen Blitzalgo schreiben also nur per line erstmal

das ich x,y als ausgangs punkt habe und x2,y2 als endpunkt.
Wie würdet ihr das machen?

Erstmal ein Dot Kordinaten Array das per zufall alles verschiebt so das es aussieht wie ein blitz?

Danke euch im voraus lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 14.05.2012, 10:17    Titel: Antworten mit Zitat

zu 1.
1. Du könntest es mit dem Alpha eines farbwertes einmischen.
2. Du könntest es einfach nach Rot hin verschieben (prozentsatz rot+ grün/blau-)
3. Du könntest deinen neuen Farbwert mit dem aktuellen zusammen addieren/or'en

je nachdem, was genau dein ziel beim mischen ist.
Aber, was genau verstehst du unter "es soll rotanteile enthalten"?


zu 2.
Fahre einfach per satz des pytagoras von vektor1 zu vektor2 und lasse per zufall von dieser fahrt einen ausbruch statfinden.
http://ops.ath.cx/code?id=236


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
0oFreako0



Anmeldungsdatum: 17.12.2011
Beiträge: 114

BeitragVerfasst am: 14.05.2012, 16:39    Titel: Antworten mit Zitat

Zitat:
3. Du könntest deinen neuen Farbwert mit dem aktuellen zusammen addieren/or'en


Was meinst du mit Or'en? Xoren?


Könnte ich es auch mit nem Paletten change hinbekommen? Wobei ich das noch nicht so richtig verstehe wie man mit der Palette gute effecte erzielt traurig


Das mit dem pytagoras ist ne geile sachen.
Wenn ich es richtig verstehe erzeugst du ein Dreieck davon nimmst die obere ecke oder unterere ecke und erzeugst an diese ein neues Dreieck oder irre ich mich da?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 14.05.2012, 16:46    Titel: Antworten mit Zitat

0oFreako0 hat Folgendes geschrieben:
Was meinst du mit Or'en? Xoren?
Wie wäre es mit or?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 14.05.2012, 16:46    Titel: Antworten mit Zitat

ne .. eigentlich habe ich das nicht damit gemeint.

in meinem beispiel fahre ich schlicht von links nach rechts, und erzeuge damit einen blitz.

willst du aber von vektor1 nach vektor2 fahren (x & y angabe), dann must du eine strecke festlegen die der "dot" zurücklegen soll.

Am besten lässt du einfach den Dot von V1 zu V2 fahren, und auf dieser strecke lässt du den DOT gelegentlich ausbrechen. die ausbrüche kann man dann variabel gestalten., bzw immer wieder zu V2 dirigieren (ähnlich wie ich die sparks in meinem beispiel grundsätzlich nach rechts fahren lasse, obwohl sie eigentlich frei beweglich sind.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
0oFreako0



Anmeldungsdatum: 17.12.2011
Beiträge: 114

BeitragVerfasst am: 15.05.2012, 10:56    Titel: Antworten mit Zitat

Hab das ganze Prinzip verstanden mit den Blitz algo lächeln

Kurze Frage aber noch wie schaffe ich es per Dots eine diagonale linie hinzubekommen so das der dot dort lang geschoben wird.
So das ich Xstart,ystart - xend,yend verwenden kann.

Bei einer Quadratischen diagonale ist es ja kein problem nur wenn länge und breite verschieden sind gibts probleme traurig

Hat jemand ne Lösung?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 15.05.2012, 13:24    Titel: Antworten mit Zitat

hätte da noch ein Beispiel einer einfachen Line Routine
Code:

Sub myline (x1 as integer, y1 as integer, x2 as integer, y2 as integer)
    dim as double x,y
   
    dim dy as double
    dim dx as double
   
    if (x2-x1) >= (y2-y1) then
        y = y1
        dy = (y2-y1+.0000001) / (x2-x1+.0000001)

        for x = x1 to x2
            pset(x, y)
            y += dy
        next x
    else
        x = x1
        dx = (x2-x1+.0000001) / (y2-y1+.0000001)

        for y = y1 to y2
            pset(x, y)
            x += dx
        next y
    end if
end sub

_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Muttonhead



Anmeldungsdatum: 26.08.2008
Beiträge: 565
Wohnort: Jüterbog

BeitragVerfasst am: 15.05.2012, 14:58    Titel: Antworten mit Zitat

im englischen Forum war vor nicht langer Zeit was dazu zu lesen.
Hab mich da auch verewigt, mal nach "lightning bolt" oder so suchen

Mutton
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 15.05.2012, 16:15    Titel: Antworten mit Zitat

Eternal_pain hat Folgendes geschrieben:
hätte da noch ein Beispiel einer einfachen Line Routine

Bäääh, Linien Zeichnet man doch nicht mit Doubles. Bresenham funktioniert komplett mit Integer-Arithmetik und ist dadurch im Schnitt schneller und weniger anfällig für arithmetische Ungenauigkeiten.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 15.05.2012, 20:43    Titel: Antworten mit Zitat

Linie zwischen 2 Punkten zeichnen: http://ops.ath.cx/code?id=237
Hab zwar schon etwas vereinfacht, aber muss dennoch etwas angepast werden, da es einen eigenen Image-Type nutzt.

Aber der Algo ist funktionell.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
0oFreako0



Anmeldungsdatum: 17.12.2011
Beiträge: 114

BeitragVerfasst am: 16.05.2012, 11:12    Titel: Antworten mit Zitat

Thx @all dank euch hab ich nun meinen Effekt umsetzen können.

Da der GFX Thread ja schon offen ist wollte ich einen old school effekt umsetzen wo in ein Rechteck mit Farbverlauf erzeugt wird zb von gelb nach rot und dieses dann animiert so weiter verläuft. Kriegt man das hin indem man sagen wir mal ein Rechteck mit verschiedenen graustufen erzeugt und darüber eine Paletten Rotation legt?

Da ich mit der Palette irgentwie noch nicht so klar komme versuch ich mich gerade anderes dran.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 16.05.2012, 12:50    Titel: Antworten mit Zitat

Was ist denn an einem indizierten Fabrmodus mit Palette so schwer zu verstehen?
- Du hast eine feste Anzahl (z.B. 256) an Farben, oder besser gesagt Farbindizes.
- Diese Farbindizes lassen sich bestimmten Farben zuordnen, z.B. 0 zu schwarz, 1 zu blau, 2 zu grün, ...
- Die Palette kann verändert werden, ohne den Bildschirm komplett neu zu zeichnen. Änderst du also z.B. Paletteneintrag 2 von grün zu rot, werden alle Stellen im Bild, die Farbe 2 referenzieren, ihre Farbe von grün zu rot wechseln, ohne dass du diese Stellen explizit neu zeichnen müsstest.

Konkret heißt das: Zeiche dein Rechteck z.B. mit den Farben 1 bis 100. Weise zu Beginn dem Farbindex 1 gelb zu, und überblende bis zu Farbindex 100 zu rot (also einfach den Grünanteil gegen 0 gehen lassen). Im zweiten Frame rotierst du dann diese Palettenindizes um 1, d.h. Farbindex 1 erhält die Farbe von Farbindex 2, Farbindex 2 die von 3, etc...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz