-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: " profesor fir" <f...@g...pl>
Newsgroups: pl.comp.programming
Subject: kulki2d
Date: Tue, 6 Dec 2011 15:15:05 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 83
Message-ID: <jblbhp$7i4$1@inews.gazeta.pl>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1323184505 7748 172.20.26.242 (6 Dec 2011 15:15:05 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 6 Dec 2011 15:15:05 +0000 (UTC)
X-User: fir
X-Forwarded-For: 31.61.130.253
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:193942
[ ukryj nagłówki ](im back - ostatnio mialem zreszta pare zaskakujaco dobrych dni,
mimo zwyklych ciezkich problemow, nabralem troche otuchy i
zaczalem nawet bardziej kojarzyc podstawowe zgadnienie, co ja w
ogole powinienem robic - choc perspektywy nie sa calkiem dobre)
m.in. zapragnalem zrobic sprezyste kulki w 2d i zrobilrm je
czesciowo
http://dl.dropbox.com/u/42887985/no_thing.zip
(spacja mozna przelaczyc grawitacje miedzy 'w dol' a 'do srodka'
aczkolwiek pojawily sie pewne tematy do rozwazenia, chcialbym
zrobic kulki dokladnie precyzyjnie, do wyboru pojawily sie
opcje albo liczyc dokladnie punkty zderzen z rownania kwadratowego
distance(kulka1.x, kulka1.y, kulka2,x, kulka2.y) = r+R
albo liczyc z grubsza (tj co iteracje sprawdzac czy distance < r+R)
za to zagescic np 10 razy krok iteracji (a spokojnie moge np puscic petle
z iteracjami/update'ami pozycji np rzedu 1/10 pixela)
Druga opcja okazala sie w praktyce o wiele lepsza, aczkolwiek i tak
obawiam sie ze sa jakies niedokladnosci;
PYTANIE: CZY KTOS POTRAFI ZNALEZC/PRZEWIDZIEC NIEDOKLADNOSCI W TYM
ALGORYTMIE?
algorytm:
jade po wszystkich kulkach i obliczam nowa pozycje kulki (typu nx=x+vx;
ny=y+vy dla vx, vy rzedu czesci piksela), sprawdzam czy wystapilo zderzenie:
dla kazdej kulki jade (petla zderzen) po wszystkich kulkach jesli distance
miedzy nx ny a jakas kulka jest mniejsza rowna niz r+R (tj 10 pixeli bo
srednica kazdej kulki ma 5 pix) to wymieniam rownolegle do osi zderzenia
skladowe predkosci kulek np -5-> <-2- przed <-2- -5-> po; (tak jest chyba w
fizyce acz nie sprawdzalem), skladowe predkosci zmieniam bez przypisania
kulce nowych wspolrzednych nx, ny bo nie chce dopuscic do sytuacji gdy
jedna kulka wniknelaby w drugą
boje sie ze w niektorych sytuacjach ten 'algorytm' moze jednak nie dzialac
dobrze i wprowadzac bledy, np kulka po nowym kroku moze byc zderzona
z wiecej niz jednna kulka - zmienilem to i odbijam teraz skladowe dla
wszystkich zderzonych ale i tak nie jest dla mnie jasne czy to dziala
bezblednie, bo m,in. wydaje mi sie ze moze dzialac zle jesli kulka zaklinuje
sie miedzy kulkami tj nie bedzie mogla sie poruszyc ani do przodu ani do tylu
tylko bedzie zmienieac i wymieniac wektor predkosci z sasiadami, to moze
dzialac ok fizycznie tj ta predkosc rozprowadzi sie na boki ale nie jestem
pewien, pozatym moga byc inne sytuacje gdy to zadziala cos nie ok
a moim celem byloby zrobienie tego tak by symulacja byla po prostu ok -
dobra
m.in. nie jestem pewien czy w tej wersji programiku to widac ale czasem
jesli kulek bylo duzo a grawitacja dzialala w gol to tworzyly sie
z tych kulek spoczynkowe ale nie realistyczne drzewka, gdzie
gorne kulki opieraly sie na dolnych, realistycznie takie kulki zjechalyby
w dol
kto potrafi znalezc bledy w tym opisanycm wczesniej prostym 'algorytmie'
i jak go poprawic?
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Następne wpisy z tego wątku
- 06.12.11 18:13 M.M.
- 06.12.11 18:37 A.L.
- 06.12.11 18:38 identifikator: 20110701
- 06.12.11 19:20 M.M.
- 06.12.11 19:47 Artur Muszyński
- 06.12.11 20:05 M.M.
- 06.12.11 20:26 Jordan Szubert
- 06.12.11 21:20
- 06.12.11 22:23 A.L.
- 06.12.11 22:23 A.L.
- 07.12.11 04:11 bartekltg
- 07.12.11 04:13 bartekltg
- 07.12.11 04:21 bartekltg
- 07.12.11 13:34 b...@n...pl
- 07.12.11 14:26 A.L.
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-20 Fiat 125p wer. pikup - w PRL moszna było, w III Reczy [pospolitej] nie moszna
- 2024-05-19 Pożar salonu z chińskimi elektrykami
- 2024-05-18 LED
- 2024-05-19 ceny nieruchomości
- 2024-05-18 Szczecin => UX/UI Designer <=
- 2024-05-18 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-18 Warszawa => Software .Net Developer <=
- 2024-05-18 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-18 Ulm => Solution Architect (sichere Kommunikation und IoT-Loesungen <=
- 2024-05-18 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-05-18 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-18 Wrocław => Consultant/Implementer Comarch ERP XL <=
- 2024-05-18 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-05-18 Warszawa => Account Manager (Recruitment Services) <=
- 2024-05-18 Łódź => Salesperson - CRM Systems <=