Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Losowe miejsce bez powtarzania...
anonim




Typ: Nie zarejestrowany
Losowe miejsce bez powtarzania...

Mam problem...
Wie ktoś może jak zrobić klony jednego obrazka na formie w losowych miejscach tak, aby się nie pokrywały? :/

08-02-2005 22:34
  
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003


dim LosX as integer,LosY as integer,I as byte I1 as byte
for i=0 to 100
ponownie:
losx=int(rnd*me.width)+1
losy=int(rnd*me.height)+1
picture1(i).left=losx
picture1(i).top=losy
for i1=0 to i
if koliduje(picture1(i),picture1(i1)) then goto ponownie
next
next
'---

Function Koliduje(Co As Object, ZCzym As Object) As Boolean
If Co.Left + Co.Width >= ZCzym.Left Then
If Co.Left <= ZCzym.Left + ZCzym.Width Then
If Co.Top + Co.Height >= ZCzym.Top Then
If Co.Top <= ZCzym.Top + ZCzym.Height Then
Koliduje = True
Else
Koliduje = False
End If
Else
Koliduje = False
End If
Else
Koliduje = False
End If
Else
Koliduje = False
End If
End Function

Powinno działać , jednak będzie wolno rozmieszczał


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

09-02-2005 00:41
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
anonim




Typ: Nie zarejestrowany

"dim LosX as integer,LosY as integer,I as byte I1 as byte
for i=0 to 100
ponownie:
losx=int(rnd*me.width)+1
losy=int(rnd*me.height)+1
picture1(i).left=losx
picture1(i).top=losy
for i1=0 to i
if koliduje(picture1(i),picture1(i1)) then goto ponownie
next
next"
Gdzie to dać i co to to "co" i "zczym"?

09-02-2005 22:46
  
Wszystkich odpowiedzi: 2 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1