 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 30.03.2007, 20:51 Titel: PMedia NiceRender "TeppichWeber" |
|
|
Hehe, dieses Prog is in ca. 10 Mins entstanden, und sollte eigentlich als Aufdruck für unsere T-Shirt-Suche entstehen
Da es aber doch nu etwas größer geworden ist, kann man ja die Motive als Aufdruck nehmen xDD
Warum nur 10 Minuten?
Das Prinzip stand schon vor ca. 2 Jahren, damals hatte ich, noch in Profan, einen Weg gesucht, "runde" Linien zu zeichnen
Da war das noch mit MoveTo und LineTo, k.A. obs die noch gibt, bestimmt mit Relativen Sprüngen, aber diese Schnell-Konvertierung is auch hübsch geworden, find ich
Code: | #include "fbgfx.bi"
OPTION ESCAPE
WINDOWTITLE "PMedia NiceRender \"Teppichweber\""
DIM X AS DOUBLE
DIM Y AS DOUBLE
DIM XS AS DOUBLE
DIM YS AS DOUBLE
DIM R AS INTEGER
DIM G AS INTEGER
DIM B AS INTEGER
DIM CT AS SINGLE
DIM RESET_DEMO AS INTEGER
DIM MAX AS SINGLE
SCREEN 18,32
CLS
RANDOMIZE
'X = RND(1) * 320
'Y = RND(1) * 240
RESET_DEMO = 1
DO
IF RESET_DEMO = 1 THEN
RESET_DEMO = 0
X = RND(1) * 640
Y = RND(1) * 480
MAX = (ABS(320-X) * ABS(240-Y)) * 12
BASR = RND(1) * 255
BASG = RND(1) * 255
BASB = RND(1) * 255
S = RND(1) * 15
END IF
X += XS
Y += YS
'' "Hübscher" Renderer:
FOR xt = x TO (x+S)
FOR yt = y TO (y+S)
R = (BASR + ((TAN(XT/640) + COS(YT/480)) * 255))/2
G = (BASG + ((SIN(YT/480) + TAN(XT/640)) * 255))/2
B = BASB
COL = RGB(R,G,B)
PSET (XT, YT), COL
NEXT
NEXT xt
'SCREENSYNC
IF X < 320 THEN
XS += 0.001
ELSE
XS -= 0.001
END IF
IF Y < 240 THEN
YS += 0.001
ELSE
YS -= 0.001
END IF
CT += 1
IF CT > MAX THEN
CLS
RESET_DEMO = 1
CT = 0
END IF
LOOP UNTIL MULTIKEY(SC_ESCAPE) |
Klaro, man kann auch
Code: | '' "Hübscher" Renderer:
FOR xt = x TO (x+S)
FOR yt = y TO (y+S)
R = (BASR + ((TAN(XT/640) + COS(YT/480)) * 255))/2
G = (BASG + ((SIN(YT/480) + TAN(XT/640)) * 255))/2
B = BASB
COL = RGB(R,G,B)
PSET (XT, YT), COL
NEXT
NEXT xt |
durch
Code: | '' "Schneller" Renderer:
FOR xt = 0 TO 640
FOR yt = 0 TO 480
R = (BASR + ((TAN(XT/640) + COS(YT/480)) * 255))/2
G = (BASG + ((SIN(YT/480) + TAN(XT/640)) * 255))/2
B = BASB
COL = RGB(R,G,B)
PSET (XT, YT), COL
NEXT
NEXT xt |
ersetzen, aber mir gings ja um den Zeichen-(Wisch-) Effekt
Klar, es ist billig, is ja auch ne 10-Min-Produktion eines Einmann-Teams
So, jetz muss ich am Meetpoint weiterproggern  |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 30.03.2007, 21:25 Titel: |
|
|
sieht hübsch aus  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 30.03.2007, 21:26 Titel: |
|
|
Thx  |
|
Nach oben |
|
 |
steff

Anmeldungsdatum: 24.03.2007 Beiträge: 11
|
Verfasst am: 05.04.2007, 21:00 Titel: |
|
|
Cool! |
|
Nach oben |
|
 |
|
|
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.
|
|