eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingnastepny punkt › Re: nastepny punkt
  • Data: 2017-03-12 23:47:03
    Temat: Re: nastepny punkt
    Od: fir <p...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    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

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: