eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingcircle midpoint + windowing, reverse, REAKTYWACJARe: circle midpoint + windowing, reverse, REAKTYWACJA
  • Data: 2015-10-22 17:11:38
    Temat: Re: circle midpoint + windowing, reverse, REAKTYWACJA
    Od: firr <p...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu czwartek, 22 października 2015 00:36:10 UTC+2 użytkownik Radoslaw Jocz
    napisał:
    > On Wednesday, 21 October 2015 08:42:31 UTC+1, firr wrote:
    > >
    > > tak czy owak to z zolwiem wydaje mi sie ciekawa metoda ale nie mam sily w tym
    teraz podlubac mam wazniejsze sprawy na glowie
    > >
    > > co do wyjasnien algorytmow to chwile zastanowailem sie jak wyjasnic zwyklego
    bressenhama, nie mam czasu sie wczytywac
    > > w tego klasycznego bressenhama
    > >
    >
    > Masz na mysli linie prosta jesli chodzi o bresenhama czy okrag?
    > Zakladam ze poprostu myslisz o midpoint a mowisz bresenham, bo o okregach mowimy.
    >
    > Wyjasnienie dzialania modpointa jest proste. Mam 10 slajdow z wyprowadzeniami
    analitycznymi ale nie chce mi sie tego tutaj przepisywac.
    >
    > Podstawowa idea dzialania midpointa polega na rownaniu okregu i inkrementacjach x i
    y. Zmienna decyzyjna opiera sie na rownaniu okregu
    > i sluzy jedynie do sprawdzenia czy promien r jest w miare dobrze zachowany w danym
    punkcie p(x,y)
    >
    > ponadto w przypadku x++; zwiekszamy promien dla x++; y--; zminiejsza sie promien
    > przyrosty zmiennej decyzyjnej d sa oparte na odpowiednim wyprowadzeniu analitycznym

    >
    > startujac od dwolnego punkty p(x,y) mozna by zainicjowac d = x^2+y^2-r^2,
    > jednak nie jest to dokladnie to samo gdy startuje sie od x=0; y=r; d = 1-r
    > bo w midponcie d jest inkrementowane skokowo na podstawie poprzedniej wartosci,
    itd, wiec w konsekwencji beda drobne roznice w porownaniu z orginalnym midpointem
    >
    > wczesniej zastanawialem sie nad tym czy dalo by rade analitycznie wyprowadzic dane
    d = f(x,y)
    > aby szybko zainicjalizowac d identycznie jak jest w orginalnym midpoincie
    > i rysowac identycznie co do piksela startujac od dowolnego punktu,
    > ale mysle ze to niemozliwe
    >
    > ponadto przydalo by sie nawet wiecej
    > mial by powiedzmy dane poczatkowe:
    > x = x0, r
    >
    > trzeba by wyznaczyc
    > y0 = f(x0, r)
    > d0 = f(x0, y0, r)
    > mysle ze takim rozumowaniem niewiele mozna by zdzialac.
    >
    >
    > uwazam wiec ze w przypadku rysowania okregu lub wycinka okregu z okienowaniem
    > powinno sie najwyzej 1 raz inicjowac zmienna d dla danego okregu,
    > mozna startowac od dowolnego punktu ale dobrze gdy to jest tylko 1 raz dla danego
    okregu, dzieki temu cwiartki i oktety bedz wzajemnie idealnie dopasowane,
    >
    > mozna to zrobic tak jak mowilem juz kiedys wczesniej wyznaczyc zakresy dla kazdej
    cwiartki i oktetu i znalezc minimalny konieczny i wystarczajacy zakres dziedziny
    funkcji ktora jest konieczna do narysowania wszystkich punktow okregu przez odbicia,
    >
    > wtedy bedzie 1 petla i znany z gory zakres od-do
    > w petli sa sprawdzenia czy dany punkt jest jest
    > mozliwy do narysowania dla danego odbicia (jest 8 mozliwych odbic)
    > 8 sprawdzen czy jest w oknie ) + (8 dodatkowo dla wycinka czy jest w zakresie katow
    np podanych parami liczb, dx1, dy1, dx2, dy2 lub w inny sposob)
    >
    > nie jest to mozliwa najszybsza metoda ale wystarczjaco dokladna i szybka
    > dla duzych promieni,
    > ponadto ma 2 wazne cechy
    > 1. wszystkie rysowane oktety danego okregu sa idealnie symetryczne wzgledem siebie
    > 2. rozpoczecie rysowania pierwszego widocznego punktu nie wymaga iteracji petli bo
    punkt startowy rozny od P(0,r) jest obliczony (w przeciwienstwie do orginalnego
    midpointa)

    mowilem o liniach, okregi juz mnie troche znudzily ;c
    Jak lubisz sie zajmowac takimi rzeczami i nie masz co robic to moze napisz procedure
    do wydajnego rysowania beziera (kubicznego tj przez 4 punkty) albo/oraz procedure do
    rysowania/renderowania wypelnionego ksztaltu
    zrobionego z paru/nastu bezierow (czego mozna by uzyc do np rysowania czegos w stylu
    fontow true type) - lub jeszcze jakies inne potencjalnie przydatne procedury tego
    rodzaju

    jest to ciekawy temat moim zdaniem warty pobawienia sie jak ktos ma czas, sam
    ostatnio robie inne rzeczy i nei mam wlasnie tego czasu ale do ew dyskusji moge sie
    właczyc

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: