Opadanie

0

Jak brzmiałby kod opadania pxów kolor czrny to pustka a inny nie

0

Nie rozumiem zbytnio pytania...

0

Jak to kiedyś Lofix powiedział : Odstaw leki.. lekarz cię w ch.. robi.

0

hehe lofix tak mowi..racja..

ale widzialem taki kod w necie

tyle ze to jest opadanie ziaren piasku...

sypiesz z gory a one opadaja tworzac ladne kupki

0

jak cos ma sapdac to s=(at^2)/2

0

jak cos ma sapdac to..

to nie utonie.. :-)

0

Dobra, wyprodukowałem taki kod, nie napisałeś w jakim języku ma być to trzasnąłem w Pascalu (BP7). Ten kod nie uwzględnia normalnych czynników, czyli jak napisał Ziomber przyśpieszenia ziemskiego, ani oporu ewentualnej atmosfery, i jest tak dość jendokolorowo, ale myślę, że sobie poradzisz z przeróbkami.

uses Graph, crt;

type
    TPunkt = object
        x, y : integer;
        kolor : byte;

        procedure opadaj;
        procedure stworz_punkt;
    end;

var
    grDriver: Integer;
    grMode : integer;
    i : integer;
    punkt : array[0..200] of TPunkt;

procedure TPunkt.stworz_punkt;
begin
    x := random(getmaxx) + 1;
    y := 0;
    kolor := 15;
    putpixel(x, y, kolor);
end;

procedure TPunkt.opadaj;
begin
    if (getpixel(x, y + 1) <> 15) then begin
        putpixel(x, y, 0);
        putpixel(x, y + 1, kolor);
        y := y + 1;
    end;
    if (getpixel(x, y + 1) = 15) or (y = getmaxy - 1) then begin
        TPunkt.stworz_punkt;
    end;
end;

begin
    grDriver := Detect;
    InitGraph(grDriver, grMode,'d:\berl\bp\bgi');

    for i := 0 to 200 do begin
        punkt[i].stworz_punkt;
    end;

    {przeszkadzajki}
    setcolor(15);
    circle(320, 240, 40);
    moveto(30, 200);
    linerel(220, 30);
    moveto(getmaxx - 1, 100);
    linerel(-200, 370);


    {i wlasciwe opadanie}
    repeat
        for i := 0 to 200 do begin
            punkt[i].opadaj;
        end;
    until keypressed;

    closegraph;
end.

//DOPISANE
I weźcie coś zróbcie z tymi cholernymi buźkami, nie można p normalnie napisać, jak jest w tagach <delphi>.

[*Jak buźki Tobie przeszkadzają to je wyłącz (odznacz "Wyświetlaj emoticon w poście") *LKS]

//ok, thx

0

co do mord ale przydalo by sie wyswietlic morde przy tagacz po {} // (* *) a zeby w calym dokumencie tez byly, poprawce :>

0

Jak brzmiałby kod opadania pxów kolor czrny to pustka a inny nie

A nie chodziło czasem o efekt fade? Czyli stopniowego przyciemnianai pixeli? Skoro pisze o kolorze czarnym to prawdopodobnie chodzlo o przyciemnianie az do zera, chyba ze zle zrozumialem "to pustka" (ja zrozumialem jako "to pestka" :) )...

Na dobra sprawe... Czarny kolor to faktycznie jest pustka =). Przywyklismy do rysowania dziur na czarno, pustka w przestrzeni kosmicznej jest czarna.... Pustka w sercu kojarzy nam się z czernią, poza tym wtedy 'czarnowidzimy'...

Nie wiem wiec totalnie o co w tym poscie chodzi, czy o spadanie, czy przyciemnianie, czy jakies filozoficzne rozterki jego autora rozpaczliwie miotająceo się między programowaniem a głębią i pustką otaczającego go świata.. :D

0

Wiem że trudno było zrozumieć moje pierwsze zapytanie ale chodziło mi O:
np.
mamy obrazek w jakiejś tam lini pionowej mamy
0=pustka
1<>pustka

linia wygląda tak

0
1
1
0
0
1
1
1

i chciałbym taki kod w którym fazowo linia zmieniała się tak:

0
0
1
1
0
1
1
1

0
0
0
1
1
1
1
1

mam nadzieję że teraz jest to zrozumiałe ?
i thx za kod jeszcze nie sprawdziłem.

0

0 i 1? Zapisane w bajcie?

Linia db 01100111b

@@:
  mov al, [Linia]
  ;wypisz bity
  ror al
  jmp @b

/* dopisane */
Ups nie zrozumiałem.
W takim razie trzeba tak:

repeat
  //Wypisz linię
  Koniec := True;
  for i := 6 downto 0 do
    if (Linia[i] = 1) and (Linia[i+1] = 0) then
    begin
      Linia[i] := 0;
      Linia[i+1] := 1;
      Koniec := False;
    end;
until Koniec;

1 użytkowników online, w tym zalogowanych: 0, gości: 1