Temat: 1-4 plan blitter convex poly filler

No i stało się! Matki krzyczą, dzieci płaczą, amigowcy pomstują. tongue Wrzucam fillera dla DOWOLNEGO wielokąta wypukłego. Jedyne o czym trzeba pamiętać, to żeby współrzędne były podawane w kierunku przeciwnym do ruchu wskazówek zegara. Procedura nie musi nawet sortować wierzchołków, wystarczy, że wyznaczy sobie yMin i yMax. Dane określające wielokąt wyglądają np. tak:

pentaCoords                    
    dc.w    5-1 - ilość wierzchołków - 1
    dc.w    100,0 - wierzchołki
    dc.w    0,100
    dc.w    130,199
    dc.w    260,190
    dc.w    319,80
    dc.w    100,0 - wierzchołek zamykający, taki sam jak pierwszy

Edit: Tak naprawdę, to można podawać współrzędne również w kierunku zgodnym z ruchem wskazówek zegara, ale sugeruje przeciwny... smile

Ostatnio edytowany przez Tomasz Wachowiak (2015-03-28 03:15:15)

Post's attachments

TriangFi.zip 12.36 kb, liczba pobrań: 10 (od 2015-03-28) 

Tylko zalogowani mogą pobierać załączniki.

2

Odp: 1-4 plan blitter convex poly filler

No to teraz poprosimy o szybki glenz vector z dużo faces wink

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

Odp: 1-4 plan blitter convex poly filler

Można w ramach ćwiczeń i glenza zrobić. smile Efekt jest w zasadzie bardzo prosty do realizacji. Trzeba ściany na różnych planach wyrysować i odpowiednio kolory w palecie ustawić.

4

Odp: 1-4 plan blitter convex poly filler

Czekamy ! smile

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

Odp: 1-4 plan blitter convex poly filler

Zanim zabiorę się za wektory, potrzebuję jeszcze obcinania wielokątów. Ktoś może zajmował się już tematem, czy będę musiał sam przysiąść i sobie napisać? smile

6

Odp: 1-4 plan blitter convex poly filler

Tomasz Wachowiak napisał/a:

Jedyne o czym trzeba pamiętać, to żeby współrzędne były podawane w kierunku przeciwnym do ruchu wskazówek zegara. Procedura nie musi nawet sortować wierzchołków, wystarczy, że wyznaczy sobie yMin i yMax.

Podobnie jak mam u siebie:) Też wyznaczam min i max bez sortowania tylko chyba kierunek mam zgodny z zegarem;)

Tomasz Wachowiak napisał/a:

Zanim zabiorę się za wektory, potrzebuję jeszcze obcinania wielokątów. Ktoś może zajmował się już tematem, czy będę musiał sam przysiąść i sobie napisać?

Clippingu nie mam więc nie poratuje. Chętnie zobaczę rezultat. Twoje kody traktuje edukacyjnie, parę pomysłów i wniosków dla siebie już wyniosłem. (choć i tak jestem z wydajnością jeszcze sporo za Wami hehe)

Maciek - https://demozoo.org/sceners/44663/
--------
Atari 65XE + Ultimate 1MB + Stereo + SIO2SD | Atari 520STE + 4MB + UltraSatan | Atari Falcon 030 + CT60e + 14MB ST + 256MB TT + 68882  + CF + Netusbee | Amiga 500 + 1MB + Gotek | Amiga 600 + 2MB Chip + 8MB Fast + CF

Odp: 1-4 plan blitter convex poly filler

Fajnie jest po tylu latach przypominać sobie stare rzeczy, szczególnie assemblera (zawsze miałem słabość do Motoroli tongue). Przy okazji można wiele rzeczy zrobić lepiej (jednak doświadczenie znacznie większe) no i sporo rzeczy wynieść - cały czas 4 planowe wypełnianie na blitterze zaproponowane przez Cypriana robi na mnie wielkie wrażenie.
Edit: W wolnym czasie usiądę w takim razie do obcinania wielokątów. Zadanie nie jest zupełnie banalne, kilka rzeczy muszę sobie przemyśleć. Oczywiście najlepszy dla naszych potrzeb będzie algorytm wymyślony przez Sutherlanda-Hodgmana, ale warto uprościć go do postaci prostokąta obcinającego (oryginalnie jest to dowolny wielokąt) i tylko dla wielokątów wypukłych.

Ostatnio edytowany przez Tomasz Wachowiak (2015-03-30 11:28:53)