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.
Strona głównaUżytkownik
macko | użytkownik
Zastanawiałem się nad strukturą programu, może po prostu zrobić to tak jak wszystkie projekty na zaliczenie, czyli na odpierdol, byle działało. Ale nie, to w końcu praca dyplomowa, trzeba być poważnym, poza tym chcę się nauczyć czegoś nowego, dodam do założeń nowy punkt: „W łatwy sposób będzie można zmienić wygląd aplikacji, bez konieczności ingerowania w kod (logikę).” Czyli krótko mówiąc trzeba zastosowa...
Architektura 5190 dni, 12 godzin, 15 minut temu 287 źrodło rozwiń
W .NET mamy do dyspozycji wygodny mechanizm do zapisywania ustawień aplikacji. W tym wpisie skupię się na stworzeniu własnego dostawcy ustawień. Domyślnym i jedynym standardowo dostępnym dostawcą, który zajmuje się zapisem ustawień jest LocalFileSettingsProvider. Dostawca ten zapisuje pliki do lokalnego katalogu ustawień danego komputera.
W dzisiejszym wpisie chciałbym rozwinąć temat, który zacząłem we wpisie na temat reguły prawej ręki (lub reguły zegara). Do napisania tego wpisu zainspirował mnie komentarz pod wspomnianym wpisem: „Bardzo ciekawe opisanie backface cullingu, nigdy bym nie wpadł by tak to wyjaśnić :)” Otóż moim celem nie było wtedy opisanie „backface cullingu”, a jedynie wskazanie, w jakiej kolejności podawać krawędzie, by płaszczyzna na scenie była widoczna. Zobaczmy jednak, cóż to jest ten „backface culling”?
Autor: Jakiś czas temu napisałem krótki wstęp do mechanizmów zwanych kontrolerami. Pora omówić je troszkę szerzej, gdyż zacząłem wdrażać w projekt tzw. operacje CRUD (ang. Create, Read, Update, Delete), a do ich zrozumienia niezbędna jest większa wiedza dotycząca klasy Controller.
Czym jest XNA? Idąc za Wikipedią: XNA (akronim rekurencyjny XNA’s Not Acronymed – „XNA nie jest akronimem”[1]) jest zbiorem narzędzi firmy Microsoft pozwalającym na tworzenie gier przeznaczonych dla systemu Windows jak również dla konsoli Xbox 360. Microsoft XNA Studio Express jest bezpłatnym środowiskiem programistycznym bazującym na serii Visual Studio Express. W skład środowiska wchodzi szereg pomocy, szablonów, zestawów startowych i obszerna dokumentacja pozwalająca na szybkie tworzenie gier takich j...
Autor: W niniejszym post'cie chciałbym wspomnieć o ważnej rzeczy, jeżeli chodzi o WPF i grafikę 3D. O mały włos o niej bym zapomniał, w poprzednich wpisach (1, 2) nic na ten temat nie wspominałam, a mianowicie chodzi mi o „Regułę prawej dłoni”! A cóż tu więc chodzi? Mianowicie chodzi tutaj o to, że trójkąty należące do sceny „mają stronę widoczną i niewidoczną”. Podając kolejne punkty trójkąta, który chcemy wyświetlić, musimy podać je w takiej kolejności, by normalna dla płaszczyzny, którą te punkty ...
Autor: Dziś, po kilku dniach szukania i testowania różnych narzędzi, udało mi się usiaść do kodowania, postanowiłem się zabrać za pierwszy punkt moich założeń, czyli za InputProvidery. Ich zadaniem będzie przechwytywanie zdarzeń z różnych wejść (kliknięć myszy, TUIO) i promowanie ich do zdarzeń Windows Touch. Chcę stworzyć następujące providery:Dla pojedynczej myszy, tak n...
Ten wpis jest kontynuacją tematyki związanej z grafiką trójwymiarową opartej o WPF. Zostanie w nim pokazane jak przy pomocy kodu napisanego w C# narysować proste wielościany.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.Poprzedni wypis został zakończony na prezentacji najprostszego obiektu w scenie – czyli trójkąta. Tr...
W niniejszym post'cie chciałbym zaprezentować podstawowe elementy niezbędne do rozpoczęcia przygody z grafiką trójwymiarową opartą o Windows Presentation Foundation (WPF). Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem MeshDiagram3D. Przed przystąpieniem do pisania jakiejkolwiek aplikacji wykorzystującej WPF 3D należy zrozumieć pewne podstawy: potrzebujemy kontrolkę, która zapewni nam możliwość wyś...
Rozszerzalność od dawna jest w modzie: praktycznie żadna poważniejsza aplikacja nie obywa się bez jakiegoś systemu pluginów, czyli "wtyczek" zwiększających jej funkcjonalność. Niektóre robią to przy okazji (acz ze słusznych powodów), inne czynią z elastyczności i rozszerzalności swój główny oręż (patrz np. uniwersalne komunikatory w typie Mirandy). Wszystko to kojarzy się trochę linuksiarsko, ...
Architektura 5221 dni, 22 godziny, 12 minut temu 174 źrodło rozwiń
O Fluent Interface ("płynnym interfejsie"?:) ) jest od jakiegoś czasu dość głośno w światku .NET. Stał się... trendy. Implementują go właściwie wszystkie kontenery IoC, można za jego pomocą skonfigurować NHibernate, coraz więcej innych projektów udostępnia swoje API w ten sposób. Ale dlaczego, czy jest to naprawdę tak fajne? Moim zdaniem: TAK. Fluent Interface jest nawet czymś więcej niż "fajnym bajerem" - pozwala naprawdę bardzo uprościć pracę z naszą biblioteką.
Architektura 5223 dni, 23 godziny, 29 minut temu 172 źrodło rozwiń
UAC, to z j. ang. User Account Controll, czyli technologia wprowadzona w Windows Vista (i dalej utrzymywana w Windows 7) zapobiegająca uruchamianiu aplikacji z podwyższonymi uprawnieniami. Przy uruchamianiu aplikacji, która wymaga zwiększonych uprawnień, użytkownik musi wyrazić jawną zgodę na uruchomienie, a aplikacja powinna zadbać o to by się w odpowiednim momencie o to spytać.
MDI, to z j. angielskiego Multi Document Interface, czyli sposób tworzenia interfejsu aplikacji oparty o wiele dokumentów, które prezentowane są użytkownikowi, jako okna otwierane wewnątrz głównego okna aplikacji. Przykładem wykorzystania takiego interfejsu może być starsza aplikacja Microsoft Excel, w której wewnątrz głównej aplikacji otwierane są poszczególne arkusze (xls). Interfejs ten był kiedyś bardzo popularny w aplikacjach, które pozwalały na jednoczesną pracę nad wieloma dokumentami, teraz częś...
Oryginalny post: Things You Should Never Do, Part IAutor: Joel Spolsky Netscape 6.0 wreszcie dotarł do swojej pierwszej publicznej wersji beta. Wersja 5.0 nigdy nie istniała. Ostatnie istotne wydanie, 4.0, zostało opublikowanie prawie 3 lata temu. Trzy lata to bardzo długi okres w świecie Internetu. Przez cały ten czas Netscape bezsilnie patrzył na to, jak jego udział w rynku spada na łeb, na szyję. To odrobinę lizusowskie z mojej strony, by krytykować ich za tak długą zwłokę w publikacjach. Nie zr...
Autor: Miałem ostatnio okazję tworzyć małą aplikacyjkę korzystającą z Entity Framework jako technologii dostępu do danych przechowywanych z MySQL. Miało być banalnie: ściągamy oficjalny "konektor", instalujemy i wszystko śmiga jak pszczółka maja na polanie pełnej bzu. Oczywiście gdyby tak było to pisanie tego posta nie miałoby sensu:). Dwa problemy....
Bazy danych i XML 5228 dni, 16 godzin, 21 minut temu 275 źrodło rozwiń
Czy zdarza się wam czasem potrzeba wyłączania/hibernowania/usypiania komputera za jakiś czas, np. po wykonaniu jakiegoś długotrwałego zadania? Mnie tak. Jak więc to zrobić? Niektóre aplikacje taką funkcjonalność posiadają, jednak nie wszystkie. Z pomocą może przyjść systemowe polecenie shutdown, ale nie potrafi ono wszystkiego. „Shutdown /s” - wyłączy system, „Shutdown /h” - system zahibernuje, można dodać jeszcze opóźnienie czasowe np. „Shutdown /s /t 600”, by wyłączyć system po 10 min (600 s). Nieste...
Co nowego w SketchFlow, który obecnie trafił do pakietu Expression Studio Ultimate? Nie ma już nic nowego interesującego? A nieprawda mój kolego! Zacznijmy od najbardziej godnej uwagi moim zdaniem nowości, która … nie jest wymieniana przez oficjalną dokumentację. Jednak osobowości takie jak John Papa czy Tim Heuer mówiąc o nowościach w SketchFlow piszą o niej w pierwszej kolejności. Sprawa dotyczy kontrolek mockup. Pewne zamieszanie wynika z tego, że domyślnie są udostępnione jedynie w przykładzie Mockup...
W tym artykule przedstawione zostanie jak można przenieść informacje z DataSet'a (układ i zawartość) do bazy danych opartej o Microsoft SQL Server (również w wersji Express). W tym celu zostaną wykorzystane SQLServer Management Objects (SMO) i SqlBulkCopy. Ze wspomnianym problem spotkałem się już jakiś czas temu (przeczytajcie na devPytaniach: „Jak z DataSet’a wytworzyć bazę danych?”), ale dopiero teraz znalazłem chwilę czasu, aby rozwiązanie opisać.
Bazy danych i XML 5242 dni, 1 godzinę, 44 minuty temu 99 źrodło rozwiń
Autor: Jakiś czas temu przenosiłem aplikację ASP.NET z środowiska developerskiego do testowego i jak często bywa w takich sytuacjach migracja nie obyła się bez pewnych kłopotów. Przy próbie uruchomienia aplikacji użytkownik otrzymywał informację o tym, że nie udało się załadować jednej z bibliotek. Po chwili zauważyłem, że bezpośrednim winowajcą był wyjątek BadImageFormatException. Z podobnym problem już się spotkałem dlatego szybko skojarzyłem, że przyczyną problemu może być próba załadowania 32 bitowej...