eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingnastepny punkt › Re: nastepny punkt
  • X-Received: by 10.157.67.140 with SMTP id t12mr3028241ote.7.1489364111463; Sun, 12
    Mar 2017 17:15:11 -0700 (PDT)
    X-Received: by 10.157.67.140 with SMTP id t12mr3028241ote.7.1489364111463; Sun, 12
    Mar 2017 17:15:11 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder1.iad
    1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.c
    om!nntp.giganews.com!n21no309159qta.1!news-out.google.com!15ni13194itm.0!nntp.g
    oogle.com!w124no2734889itb.0!postnews.google.com!glegroupsg2000goo.googlegroups
    .com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Sun, 12 Mar 2017 17:15:11 -0700 (PDT)
    In-Reply-To: <2...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=37.47.33.232;
    posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
    NNTP-Posting-Host: 37.47.33.232
    References: <0...@g...com>
    <oa4g7g$b9j$1@node2.news.atman.pl>
    <b...@g...com>
    <2...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <c...@g...com>
    Subject: Re: nastepny punkt
    From: fir <p...@g...com>
    Injection-Date: Mon, 13 Mar 2017 00:15:11 +0000
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: quoted-printable
    Lines: 65
    Xref: news-archive.icm.edu.pl pl.comp.programming:210311
    [ ukryj nagłówki ]

    W dniu niedziela, 12 marca 2017 23:47:04 UTC+1 użytkownik fir napisał:
    > W dniu niedziela, 12 marca 2017 23:23:35 UTC+1 użytkownik fir napisał:
    > > W dniu niedziela, 12 marca 2017 22:57:05 UTC+1 użytkownik bartekltg napisał:
    > > > On 12.03.2017 22:46, fir wrote:
    > > > > szukam dosyc prostego algorytmu
    > > > >
    > > > > mam punkt int x,y np 0,0
    > > > > i chce znalezc nastepny punkt
    > > > > w kierunku jakiegos dowolnego punktu
    > > > > int dist_x, dist_y, tak jak gdybym
    > > > > rysowal linie prostą
    > > > >
    > > > > jak wzynaczyc ten przylegly punkt?
    > > > >
    > > >
    > > > Algorytm Bresenhama
    > > >
    > > raczej fragment bressenhama ale jaki
    > > dokladnie?
    >
    > w sumie to chyba bedzie cos takiego
    >
    > int2 NextPointTowards(int x, int y, int dest_x, int dest_y)
    > {
    > int2 n = {x, y};
    >
    > int dx = dest_x - x;
    > int dy = dest_y - y;
    >
    > int sx = sign(dx);
    > int sy = sign(dy);
    >
    > if(sx==0) n.y += sy;
    > else if(sy==0) n.x += sx;
    > else
    > {
    > float m = fabs(((float)dy)/dx);
    >
    > if( m < 0.5) n.x += sx;
    > else if( m > 2.0) n.y += sy;
    > else { n.x += sx; n.y += sy; }
    > }
    >
    > return n;
    >
    > }
    >
    > mozna by wywalic dzielenie zastepujac ifem ale nie wiedomo czy if szybszy
    >
    > pozatym w dzialaniu to chyba nie zastpi bresenhama (trzebby sprawdzic) choc mw o to
    mi chodzi bo taka procedura jest jaby bardziej ogolna

    zrobilem testy i okazalo sie ze to nie dziala dobrze

    http://minddetonator.htw.pl/compact.jpg

    gorna linia to normalne a dolna dolna linia to wynik generowania tych punktow
    wyzej

    teraz pytaine czy da sie to przepisac tak by generowalo porzadna linie (tez biorac za
    helper tylko punkt docelowy) czy tez trzeba uzyc wersji na floatach

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: