Bild stimmt mit berechnung nicht überein
Übersicht

![]() |
dominikBetreff: Bild stimmt mit berechnung nicht überein |
![]() Antworten mit Zitat ![]() |
---|---|---|
also ich hab nen bild (32*32) und des soll mehrfach, per zufalls position, in ein gitternetz gezeichnet werden. Die Berechnungen müssen auch alle stimmen weil sich die verschiebung seltsamerweise nur alle (3,8,14,18) positionen (IMMNER Gleich) wiederholt.
Testets am besten ainfach mal, dann wisst ihr was ich mein. lässt sich irgentwie nen bischen schwer erklären. Ach und es verschiebt sich seltsamerweise auch nur in der Y-Richtung. aber des bild is ja eigentlich quadratisch. ??????? !ACHTUNG! geb am anfang net mehr als 20 ein erstens past eh net mehr auf den bildschrim und außerdem kanns sonst nen bischen länger dauern bis sich des gitter aufgebaut hat. Code: [AUSKLAPPEN] Graphics 1024, 768, 32
bild1 = LoadImage("bild1.bmp") grose = Input ("Größe: ") Dim ax(grose), ay(grose), zx(grose), zy(grose) SeedRnd MilliSecs() Cls ;Gitter zeichnen (Aufbaue) ;___________________________________________________ For zr = 1 To grose Text zr*32, 96, zr Text 10, (96)+zr*32, zr Delay 40 Next For zz = 1 To grose + 1 Line 32, (zz*32)+96, 30+(32*grose), zz*32+96 Delay 90 Next For zz = 1 To grose + 1 Line (zz*32), 128, zz*32, 128+(32*grose) Delay 90 Next ;____________________________________________________ SetBuffer BackBuffer() ;Ziele für einzelne Quadrate verteilen For i = 1 To grose zx(i) = Rand(0,32) zy(i) = zy(i)+(32*i)+96 ;Geordnet ; zy(i) = ((Rand(0,grose))*32)+96 ;Zufällig Next ;Anfangspositionen festlegen For i = 1 To grose ax(i) = i*32 ay(i) = 0 Next ;Quadrate auf zielpositionen verteilen Repeat Cls For i = 1 To grose DrawImage bild1, ax(i), ay(i) Next For i = 1 To grose If ay(i) < zy(i) Then ay(i) = ay(i) + 10 Next ;Gitter zeichnen ;___________________________________________________ For zr = 1 To grose Text zr*32, 96, zr Text 10, (96)+zr*32, zr Next For zz = 1 To grose + 1 Line 32, (zz*32)+96, 30+(32*grose), zz*32+96 Next For zz = 1 To grose + 1 Line (zz*32), 128, zz*32, 128+(32*grose) Next ;____________________________________________________ For i = 1 To grose If ay(i) <> zy(i) Then ende = 0 Next Flip Until ende = 1 Or KeyDown(1) WaitKey End PS: des bild muss 32*32 sein. müsst ihr euch selber machen. |
||
m |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] For i = 1 To grose If ay(i) < zy(i) Then ay(i) = ay(i) + 8 Next die zahl die du addierst mus durch 32 teilbar sein ![]() |
||
![]() |
dominik |
![]() Antworten mit Zitat ![]() |
---|---|---|
eigetnlich logisch. danke ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group