eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingkolizja prostokątówRe: kolizja prostokątów
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!.POSTED!not-for-mail
    From: bartekltg <b...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Re: kolizja prostokątów
    Date: Thu, 22 Dec 2011 12:07:46 +0100
    Organization: ATMAN - ATM S.A.
    Lines: 88
    Message-ID: <jcv329$nbf$1@node2.news.atman.pl>
    References: <jcs40l$bt7$1@kushnir.sileman> <jcsrli$df3$1@node2.news.atman.pl>
    <jcti9i$p89$2@kushnir.sileman> <jcuum4$il1$1@node2.news.atman.pl>
    <jcv22e$eh8$1@kushnir.sileman>
    NNTP-Posting-Host: 144-mi3-6.acn.waw.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node2.news.atman.pl 1324552073 23919 85.222.69.144 (22 Dec 2011 11:07:53
    GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Thu, 22 Dec 2011 11:07:53 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111105
    Thunderbird/8.0
    In-Reply-To: <jcv22e$eh8$1@kushnir.sileman>
    Xref: news-archive.icm.edu.pl pl.comp.programming:194483
    [ ukryj nagłówki ]

    W dniu 2011-12-22 11:50, Kicer pisze:
    > bartekltg wrote:
    >
    >> W dniu 2011-12-21 22:15, Kicer pisze:
    >>
    >>
    >>>> Dwa równania na przesunięcie (x i y), wybierasz
    >>>> to z mniejszym wynikiem.
    >>>
    >>> mogę prosić ciutkę jaśniej? jak wyznaczam te dwa równania?
    >>
    >>
    >> Kurde. Brać się do matematyki a nie do programowania!
    >
    > (4, 9)
    > +--+
    > | | prostokąt A; środek to punkt 2, 7; Ha = 4; Wa = 4
    > | |
    > +--+
    > (0, 5) (6,4)
    > ++
    > ||
    > || prostokąt B; środek to punkt 5, 2; Hb = 4; Wb = 2
    > ++
    > (4,0)
    >
    >>
    >> W = suma szerokości / 2
    >> H = suma wysokości /2
    >
    > W = (Wa + Wb) / 2 = 3
    > H = (Ha + Hb) / 2 = 4;
    >
    >>
    >> Wektor od prostokąta A do B
    >> [ X_B - X_A ; Y_B - Y_A ]
    >
    > jak napisales w poście niżej, chodzi o środki, więc:
    >
    > [ 5 - 2; 2 - 7] = [3; -5]


    >>
    >> I teraz szukasz takiego t, aby była kolizja,
    >> czyli albo
    >>
    >> abs(X_B - X_A) * (1-t) = W
    >>
    >> albo
    >>
    >> abs( Y_B - Y_A ) (1-t) = H
    >
    > abs(X_B - X_A) == 3;
    > t = (3 - W)/3 = 0
    >
    > abs(Y_B - Y_A) == 5;
    > t = (5 - H)/5 = 1/5
    >
    >>
    >>
    >> Z obu równań wyznaczasz t (zamieniasz wzorek na t = ...,
    >> nie trzeba rozwiązywać tego numerycznie;)) i bierzesz
    >> to mniejsze. Jeśli początkowo prostokąty były
    >> rozłączne, to t będzie w przedziale (0,1).
    >>
    >
    > wygrywa zatem t = 0

    Aj, późniejszy (minus mi mieszał)

    >
    > [3; -5] * 0 = [0; 0]

    [3; -5] * -1/5 = [-3/5; 1]

    B podskakuje oczko w górę. Zetknął się.


    > wychodzi zatem, ze prostokątów nie trzeba przesuwać.
    >
    > Jesli wezmę drugie t, które wychodzi 1/5, to wygląda sensowniej, bo wektor
    > ma postać:
    > [-3/5; -1], co już by się zgadzało.

    Źle znaki:)

    pzdr
    bartekltg

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: