Strona Główna CNC FORUM
Amatorskie maszyny CNC

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy
RejestracjaRejestracja  ZalogujZaloguj  AlbumAlbum
Allegro - największe aukcje internetowe, najniższe ceny! Kup i sprzedaj!

Poprzedni temat «» Następny temat
CNC 3D minimum
Autor Wiadomość
Inf-el 
Specjalista poziom 2



Pomógł: 13 razy
Dołączył: 22 Cze 2004
Posty: 362
Skąd: Szczecin
Wysłany: 2007-03-25, 21:46   CNC 3D minimum

Doznałem chęci i potrzeby stworzenia prostego programu do projektowania 3D dla mojej
maszynki. Jeszcze nie wiem jaki będzie interfejs użytkownika.
Chcę aby program miał następujące możliwości:
- używanie do rysowania myszki, klawiatury, manipulatorka SpaceTravel lub podobnego.
- zastosowanie prowadnic liniowych i płaszczyznowych, przyklejania obiektów do nich i do siebie na wzajem.
- import dxf, stl, cnc, bmp, plt
- export dxf, stl, cnc, bmp, plt
- tworzenie bibliotek gotowych elementów
- używanie skryptów tekstowych

Chciałbym dać użytkownikowi duże możliwości rozbudowy i dostosowania programu do swoich potrzeb i możliwości.

Dołączam aktualny stan prac.
Program przy wyświetlaniu bazuje na OpenGL.
Proszę rozpakować i uruchomić.
Testowałem na Win98, NT4.0, Win2000, XP Pro, Server 2003 , Vista Home Basic

Jeśli program Wam zadziała bez problemów (zawieszanie itp) to proszę o wypowiedzi
o sensowności tego kierunku jazdy.

2007.04.24 - postępy:
- możliwość wczytania chmury punktów
- możliwość wczytania plików binarnych STL
- możliwość wczytania plików g-code (na razie interpretuje tylko G0 i G1)
- poruszanie się klawiszami zbliżanie i oddalanie=(a,z) inne=(x,c,w,s), obroty wokół osi (e,d,v,b)
- skalowanie = < >
- poruszanie sie = myszką z prawym klawiszem
- obracanie widoku = myszka ze środkowym klawiszem
- poruszanie kursora 3D = myszka z lewym klawiszem
- możliwość ustawienia widoku z 3 miejsc xv,xz,yz
- pokazał się kursor 3D (jeszcze surowy)
- więcej przykładów (chmury, stl, g-kody)
- dodałem światło przed kursorem 3D (można je wyłączać klawiszem l)
--------------
- i wreszcie można rysować (jeszcze topornie ale pracuję nad tym)
przesuwamy kursor 3D myszką lub wpisujemy jego współrzędne i zatwierdzamy
klawiszem ` lub przyciskiem V (obraz będzie widoczny od 2 punktu)
Tak wygenerowaną ścieżkę można zapisać do g-code (na razie bez optymalizacji)

Jest jeden błąd: przy ponownym wczytywaniu pliku trzeba pamiętać o zmianie katalogu (stl,cnc,xyz,plt). Nie wiem dlaczego ale nie działa polecenie ustawiające katalog.

Jeśli program się nie uruchamia a inne wykorzystujące opengl tak to proszę
skasować z katalogu cnc3d bibliotekę opengl32.dll.

tlo.jpg
Ekran programu
Plik ściągnięto 349 raz(y) 57,19 KB

cnc3d.zip
1 rozpakować
2 z katalogu cnc3d uruchomić edcnc3d.exe
Pobierz Plik ściągnięto 472 raz(y) 2,31 MB

Ostatnio zmieniony przez Inf-el 2007-04-24, 21:27, w całości zmieniany 31 razy  
 
 
roman_ows 
Znawca tematu


Pomógł: 11 razy
Dołączył: 20 Sie 2005
Posty: 67
Skąd: Poznań
Wysłany: 2007-03-26, 00:34   

Działa-orzełek fruwa i nic nie zakłócało jego lotu.

Pozdrawiam
 
 
x 
Specjalista poziom 1



Pomógł: 9 razy
Dołączył: 29 Mar 2006
Posty: 209
Skąd: okolice Warszawy
Wysłany: 2007-03-26, 09:46   Re: CNC 3D minimum

Inf-el napisał/a:
- w tekstowej części interfejsu chciałbym umożliwić pisanie skryptów
teoretyczny przykład polecenia skryptowego:
narysuj(domek(sredniej_wielkosci,wysokosc=20mm))
Chcę aby skrypty mogły wywoływać inne skrypty.
Program pilnowałby aby nie można było wpisać błędnie lub sprzecznie.
To polecenie skryptowe wydaje się mało konkretne ale: program już wie co to znaczy domek i sredniej_wielkosci z poprzednich skryptów.

Coś mi się kojarzy, że piszesz w Delphi. Jeśli jednak w C/C++, to możesz sobie ułatwić pracę, i wbudować do programu gotowy interpreter języka Lua. To mały, ale sprytny język z prostym interfejsem C/C++.

Tutaj ktoś połączył język lua z toolkitem FLTK - i powstaje przenośne środowisko skryptowe z interfejsem graficznym: MurgaLua

Ja się zainspirowałem Twoim poprzednim programem, i robię sobie coś takiego pod Linuksa (pod Win może też będzie działać, o ile w ogóle będzie działać). Ale podstawowy warunek: uwzględnianie kształtu narzędzia, 16-bitowa skala szarości, i możliwość "nakładania" bitmap na conajmniej dwa sposoby. Na razie mam programik testowy, w fazie "U mnie działa!", który przetwarza jpg->stl i stl->jpg - chciałem go wrzucić do działu "OpenSource" ale nie wiem, czy jest sens.

Jak będę pod Windowsem (mam Me) to popatrzę jak to działa. Albo poczekam na v. 0.0.2.
_________________
"Później doświadczyłem jeszcze jednego zjawiska: gdzieś w połowie roboty okazuje się, że mieliśmy pomysł tylko na tę połowę roboty." - Adam Cebula (wnioski po budowie gołębnika)
 
 
Inf-el 
Specjalista poziom 2



Pomógł: 13 razy
Dołączył: 22 Cze 2004
Posty: 362
Skąd: Szczecin
Wysłany: 2007-03-26, 10:02   Re: CNC 3D minimum

do roman_ows : pod jakim systemem testowałeś ?

x napisał/a:
Coś mi się kojarzy, że piszesz w Delphi.

Tak, niestety piszę w Delphi. Popatrzę sobie na lule może wykorzystam jakieś pomysły

x napisał/a:
Na razie mam programik testowy, w fazie "U mnie działa!", który przetwarza jpg->stl i stl->jpg

Koniecznie się nim podziel.
Może i u mnie zadziała pod SUSE.

Nie wiem czy nasi wybitni zespołowi generatorzy algorytmów zastosują swoją wiedzę w praktyce mimo zdobytych medali.
Może jeszcze kogoś zmotywujemy do pisania programów do konkretnego wykorzystania.
Program to w dzisiejszej dobie tak samo ważne narzędzie jak wiertarka a czasami ważniejsze.
 
 
x 
Specjalista poziom 1



Pomógł: 9 razy
Dołączył: 29 Mar 2006
Posty: 209
Skąd: okolice Warszawy
Wysłany: 2007-03-26, 11:40   

O.K. Wieczorem go wypuszczę, moze jeszcze ktoś będzie się chciał pobawić.

Fajnie, że użyłeś OpenGL. Też się tym ostatnio trochę bawiłem, i nie jest to takie straszne jak wieszczą różni "wtajemniczeni". Z "glutem" zrobienie interaktywnego podglądu jest całkiem łatwe. Trudniej, jeśli chcesz robić edycję, np. "zaznaczyć" jakąś linie, płaszczyznę, czy obiekt - to już trzeba całkowicie zaimplementować w swojej strukturze danych.

Z projektami eee... społecznymi, jest ogólnie słabo. Jeśli chcesz poprowadzić coś takiego, to musisz się przygotować, że wykonasz te 50% podstawowej roboty, i jeśli program będzie dobry i przydatny, to z czasem ktoś się przyłączy. Np. Stallman zabierając się do stworzenia systemu GNU sam napisał gcc, gdb, sporą część Emacs-a i emacs-lisp, oraz bodajże gawk, zanim zaczęli się do niego przyłączać inni. Teraz deweloperów jest wielu, a programów i bibliotek tyle: All GNU Packages. Podobnie było z Linux-em, GTK+, itd.
_________________
"Później doświadczyłem jeszcze jednego zjawiska: gdzieś w połowie roboty okazuje się, że mieliśmy pomysł tylko na tę połowę roboty." - Adam Cebula (wnioski po budowie gołębnika)
 
 
lisow1 
Specjalista poziom 1



Pomógł: 5 razy
Dołączył: 02 Gru 2004
Posty: 265
Skąd: Białystok
  Wysłany: 2007-03-26, 12:16   

u mnie dziaŁa bez problemów na win XP.
Bardzo fajnie to się obraca. Samo kóŁko chyba też się powinno obracać względem pŁaszczyzn.
Bardzo fajny projekt. Moge wesprzeć w testowaniu.
Pozdrawiam.
 
 
x 
Specjalista poziom 1



Pomógł: 9 razy
Dołączył: 29 Mar 2006
Posty: 209
Skąd: okolice Warszawy
Wysłany: 2007-03-26, 17:30   

No niestety, pod Win Me nie działa. Pojawia się okno, ale się nie wypełnia (widać tylko suwaki). Przy uruchomieniu pliku, i przy próbie zrobienia czegokolwiek pojawia się komunikat (w oknie o tytule "Cnc3d") "External exception 80000003". Może dlatego, że mam już nieźle "przechodzonego" tego Me.

Próbowałem pod wine, i jest podobnie. Ale pojawia się komunikat o błędach wine, który może coś wyjaśni.
Cytat:
err:opengl:wgl_initialize_glx glx_version as 1.2 and GLX_SGIX_fbconfig extension is unsupported. Expect problems.
err:opengl:X11DRV_ChoosePixelFormat glXChooseFBConfig returns NULL (glError: 0)
err:opengl:X11DRV_DescribePixelFormat unexpected iPixelFormat(0), returns NULL


A po lekkim "doprofilowaniu":
Cytat:
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (0x40381ff0)->((nil),00000008)
fixme:dc:GdiIsMetaPrintDC 0x1d8
wine: Call from 0x6941a051 to unimplemented function GDI32.dll.GdiDescribePixelFormat, aborting
_________________
"Później doświadczyłem jeszcze jednego zjawiska: gdzieś w połowie roboty okazuje się, że mieliśmy pomysł tylko na tę połowę roboty." - Adam Cebula (wnioski po budowie gołębnika)
 
 
Inf-el 
Specjalista poziom 2



Pomógł: 13 razy
Dołączył: 22 Cze 2004
Posty: 362
Skąd: Szczecin
Wysłany: 2007-03-26, 18:05   

Takie efekty miałem pod kilkoma XP dzisiaj.
Niestety komunikaty nie wiele mi mówią.

A inne programy wykorzystujące opengl pod ME ci działają ?
np vega http://www.vegacnc.com/html/dataview.htm
używa opengl32.dll, glu32.dll, glut32.dll

Czy karta graficzna obsługuje opengl ?

Mogę jeszcze pobawić się w directx (delphix) - byłby wybór, ale jeszcze tego do końca nie rozgryzłem.

Bardzo bym się zdziwił (pozytywnie) gdyby zadziałała emulacja opengl pod linuxem w wine.
Ostatnio zmieniony przez Inf-el 2007-03-27, 09:58, w całości zmieniany 1 raz  
 
 
gaspar 
Specjalista poziom 2



Pomógł: 14 razy
Dołączył: 13 Sty 2006
Posty: 447
Skąd: Stargard Szczec.
Wysłany: 2007-03-26, 20:15   

U mnie chodzi bardzo płynnie.
Laptop, WinXP, PENTIUM III 850Mhz, 376Mb RAM.
Trzymam kciuki za rozwój programu.
_________________
"Wiedza daje pokorę wielkiemu, dziwi przeciętnego, nadyma małego" - Lew Tolstoj
 
 
 
Inf-el 
Specjalista poziom 2



Pomógł: 13 razy
Dołączył: 22 Cze 2004
Posty: 362
Skąd: Szczecin
Wysłany: 2007-03-27, 10:21   

x napisał/a:
Trudniej, jeśli chcesz robić edycję, np. "zaznaczyć" jakąś linie...

Dorobiłem wczoraj kursor 3D, którym można by zaznaczać obiekty. W osi x i y pobiera pozycję z myszki a oś Z zmieniam pokrętłem. Niestety spowalnia to wyświetlanie grafiki.
Mam zamiar zamówić manipulator 3D, SpaceNavigator za około 59$ do użytku domowego (bez faktury na firmę) i go podpiąć do programu.
http://www.3dconnexion.com/products/3a1d.php
Widziałem go w akcji na seminarium w Poznaniu.
Bardzo ładnie się sprawował w programie Google Earth.
Czułem pewien niedosyt spowodowany chyba brakiem dynamiki ale cena jest zachęcająca.
Cieszę się, że program u innych raczej działa. Jeszcze nie wiadomo jak zadziała w Viście.

space.jpg
Nawigator 3D
Plik ściągnięto 4182 raz(y) 4 KB

Ostatnio zmieniony przez Inf-el 2007-03-28, 10:36, w całości zmieniany 3 razy  
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group

sponsorem forum jest www.akcesoria.cnc.info.pl
Informacje na witrynie cnc.info.pl są podawane tylko w celach edukacyjnych oraz hobbystycznych. Jedynie użytkownik wysyłający wiadomość lub plik ponosi pełnoprawną odpowiedzialność za ich treść. Jeżeli wynikną z tego konsekwencje prawne, cnc.info.pl może przekazać wszelkie informacje właściwym organom państwowym na temat danego użytkownika oraz pomóc w jego zlokalizowaniu. Zgodnie z ustawą o ochronie danych osobowych cnc.info.pl nie przekazuje informacji odnośnie użytkowników firmom i osobom prywatnym. Hasła, adresy e-mail oraz numery IP są szyfrowane w bazie danych i jedynie administrator jest w stanie odczytać te informacje. Cnc.info.pl jest przeciwna łamaniu zabezpieczeń oraz łamaniu praw autorskich, jednak niektóre osoby nie przestrzegają naszego regulaminu. Jeżeli zobaczyłeś wiadomość lub plik, który twoim zdaniem jest nielegalny lub narusza twoje dobra osobiste, prosimy o natychmiastowy kontakt:
Administrator

www.akcesoria.cnc.info.plsilniki krokoweŁożyska linioweśruby trapezowe i kulowe
Strona wygenerowana w 0,33 sekundy. Zapytań do SQL: 15