WPF 3D, to zestaw funkcjonalności WPF-a,pozwalający na tworzenie i wyświetlanie grafiki trójwymiarowej (3D). Jednym z głównych celów stawianych WPF 3D jest wsparcie grafiki 3D w dziedzinie interaktywnych interfejsów użytkownika.
Niemal każdy program graficzny ma funkcjonalność: „dopasuj obraz do wielkości strony” (Zoom to fit, Auto-Zoom, itp ...). Zobaczmy jak można zrealizować taką funkcjonalność w programie pokazującym sceny 3D oparte o WPF 3D.
Autor: O tym jak obracać obiekty (lub kamerę) w scenie 3D pisałem już jakiś czas temu w artykułach: „Transformacje i przekształcenia 3D” „Obracamy, przesuwamy, skalujemy? Kamerę (i nie tylko)”. W oparciu o opisane tam rozwiązania i przy pomocy kontrolek typu Slider, tworzona przeze mnie aplikacja (MeshDiagram3D), transformuje kamerę w scenie, przez co sprawia wrażenie transformacji sceny. Nie każdemu jednak spodoba się przesuwanie suwaków (Slider), niektórzy chcieliby pewnie obracać scenę, „łapiąc” za ob...
Autor: W poprzednim wpisie opisany został algorytm, jakim można się kierować przy wypracowywaniu rozwiązania pozwalającego na interakcję myszy ze sceną 3D. W tym wpisie zaprezentowany zostanie gotowy kod w języku C# pozwalający na osiągnięcie założonego celu. Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D.W przygotowani...
Autor: Tym razem nie będzie nic odkrywczego, a wpis ten jest raczej „ku pamięci”, abym nie musiał więcej razy tego szukać (a może jeszcze komuś się przyda ...). Otóż te wpis będzie poświęcony iloczynowi wektorowemu.Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D.Czemu potrzebowałem iloczynu wektorowego? Otóż w aplikacji,...
autor: Pisałem wcześniej, że WPF 3D może być wykorzystane przy budowie interfejsów użytkownika, zastanówmy się więc jak można zapewnić interakcję sceny 3D z użytkownikiem. W tym artykule pokazane będzie jak można wyznaczyć wskazany myszą obiekt w scenie 3D. Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D.Aby zapewnić uży...
W poprzednich wpisach opisane zostały zagadnienia związane z rysowaniem linii w scenach 3D oraz wymienione zostały pewne gotowe rozwiązania pozwalające takie linie rysować. Zastanówmy się jednak chwile i pomyślmy nad rozwiązaniami alternatywnymi, przecież scena 3D wyświetlona na płaskim ekranie jest tylko pewnego rodzaju projekcją trójwymiarowej przestrzeni na płaszczyznę, więc dlaczego nie rysować zwykłych linii bezpośrednio na tej płaszczyźnie? Niniejszy wpis poza prezentacją różnych i niezależnych od ...
W poprzednim artykule opisane zostały zagadnienia związane z rysowaniem linii w scenie 3D opartej o WPF. W tym artykule zostaną opisane gotowe rozwiązania umożliwiające kreślenie linii.
Jednym z problemów, na jakie może napotkać programista tworzący trójwymiarową scenę przy pomocy WPF 3D, jest rysowanie linii. W tym artykule zostanie opisane, dlaczego taki problem może zaistnieć i jak go można rozwiązać.
Czasem zachodzi potrzeba, by element sceny 3D wiedział o swojej obecności w scenie, np. w celu odpowiedniego obrócenia się, by być przodem do kamery. Oczywiście przy jego dodawaniu do sceny można by było przekazać do niego odpowiednie informacje o scenie, ale okazuje się, że każdy element sceny może sam uzyskać odpowiednie informacje, gdyż wszystkie elementy sceny 3D w WPF (i nie tylko sceny 3D) tworzą drzewo wizualne (visual tree). Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wy...
W poprzedniej części zacząłem pisać o przekształceniach i transformatach, w tym wpisie pokazane zostaną przykłady jak można wykorzystać transformaty do poruszania kamerą. Okazuje się, że przekształcanie (w tym obracanie, przesuwanie) wszystkich elementów w scenie może być niewygodne i nieopłacalne (np. ze względów wydajnościowych), dlatego czasem lepiej będzie wykonać przekształcenie dla samej kamery.
Przy prezentacji grafiki 3D ciekawą funkcjonalnością może być umożliwienie użytkownikowi oglądanie sceny 3D z wielu punktów widzenia, obracania elementów sceny itp... W tym wpisie zaprezentowane zostanie jak można taką funkcjonalność stworzyć w WPF 3D. Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D. Efekt oglądania sc...
W poprzedniej części serii poświęconej tematyce WPF 3D, opisane zostały rodzaje materiałów, jakimi można pokrywać figury i bryły w tworzonej scenie 3D, pominięte ciszą zostały natomiast pędzle wykorzystywane do przygotowania odpowiedniego materiału. W tym wpisie wiadomości dotyczące pokrycia figur zostaną uzupełnione i omówione zostaną pędzle, które są elementem wykorzystanego materiału. Wykorzystanie pędzla jest konieczne do przygotowania materiału dla wybranej figury lub bryły w scenie. W odróżnieniu j...
W tym wpisie omówione zostaną materiały (i nie chodzi tutaj o krawiectwo), jakie mogą być wykorzystane pokrywanie figur w scenie 3D.
Tytuł mógłby wskazywać, że omówię technologię lub produkty pozwalające nakręcić video w 3D, jednak niezupełnie o to mi chodzi. W tym wpisie chciałbym się skupić raczej nad rodzajami kamer wykorzystywany w scenach 3D tworzonych w oparciu o WPF 3D.
Do tej pory zapomniałem wspomnieć o jednej ważnej i bardzo podstawowej sprawie dot. WPF 3D, a mianowicie z jakim układem współrzędnych mamy tutaj do czynienia. Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D. Otóż w WPF 3D mamy do czynienia z prawoskrętnym układem współrzędnych. Aby nie brzmiało to zbyt tajemniczo...
Ten wpis jest kontynuacją tematyki związanej z WPF 3D, w którym przedstawiony zostanie ważny element każdej sceny, a mianowicie światło.W WPF 3D światło(Light) jest elementem każdej sceny i tak jak każdy element sceny jest umieszczone w scenie jako zawartość (Content) obiektu...
W jednym z poprzednich wpisów napisałem czym jest ten „WPF 3D”, dzisiaj przedstawione zostaną kolejne podstawy, a mianowicie omówione zostanie (w skrócie) czym jest grafika 3D.Uwaga: jeżeli już wcześniej jakkolwiek programowałeś grafikę 3D (lub co więcej, uważasz się za eksperta w tej kwestii), lepiej zatrzymaj się już teraz i nie czytaj dalej ... te podstawy mogą porazić ;) Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień z...
Autor: Ten wpis rozpoczyna nową serię moich wpisów na blogu dotyczących WPF 3D. Będzie to mały kurs i wstęp do tej technologi, dla ludzi jej nie znających. Postaram się systematycznie publikować nowe wpisy z tej serii. Ten wpis będzie wprowadzeniem do tego tematu. Następne wpisy będą bardziej szczegółowe - ten będzie takim bardzo krótkim wprowadzeniem. Elementy 3D, a elementy 2DElementy 3D bezproblemowo współgrają z innymi elementami aplikacji. Elementy 3D mogą być bezproblemowo wyświetlane na powierzch...
Autor: Na tym blogu wpisy na temat WPF 3D pojawiają się już od jakiegoś czasu, jednak do tej pory nie napisałem słowa wstępu wprowadzającego do owego „WPF 3D”. Chciałbym dzisiaj się poprawić i właśnie pewnego rodzaju wstępniak do WPF 3D.