CNC 3D minimum
-
Autor tematu - Specjalista poziom 2 (min. 300)
- Posty w temacie: 7
- Posty: 573
- Rejestracja: 22 cze 2004, 18:41
- Lokalizacja: Szczecin
- Kontakt:
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.
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.
- Załączniki
-
- Ekran programu
- tlo.jpg (57.19 KiB) Przejrzano 2553 razy
-
- cnc3d.zip
- 1 rozpakować
2 z katalogu cnc3d uruchomić edcnc3d.exe - (2.31 MiB) Pobrany 1449 razy
Ostatnio zmieniony 24 kwie 2007, 22:27 przez Inf-el, łącznie zmieniany 31 razy.
Tagi:
-
- Specjalista poziom 1 (min. 100)
- Posty w temacie: 5
- Posty: 243
- Rejestracja: 29 mar 2006, 23:24
- Lokalizacja: Laski, gm. Izabelin
Re: CNC 3D minimum
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++.Inf-el pisze:- 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.
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.
-
Autor tematu - Specjalista poziom 2 (min. 300)
- Posty w temacie: 7
- Posty: 573
- Rejestracja: 22 cze 2004, 18:41
- Lokalizacja: Szczecin
- Kontakt:
Re: CNC 3D minimum
do roman_ows : pod jakim systemem testowałeś ?
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.
Tak, niestety piszę w Delphi. Popatrzę sobie na lule może wykorzystam jakieś pomysłyx pisze:Coś mi się kojarzy, że piszesz w Delphi.
Koniecznie się nim podziel.x pisze:Na razie mam programik testowy, w fazie "U mnie działa!", który przetwarza jpg->stl i stl->jpg
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.
-
- Specjalista poziom 1 (min. 100)
- Posty w temacie: 5
- Posty: 243
- Rejestracja: 29 mar 2006, 23:24
- Lokalizacja: Laski, gm. Izabelin
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.
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.
-
- Specjalista poziom 1 (min. 100)
- Posty w temacie: 5
- Posty: 243
- Rejestracja: 29 mar 2006, 23:24
- Lokalizacja: Laski, gm. Izabelin
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.
Próbowałem pod wine, i jest podobnie. Ale pojawia się komunikat o błędach wine, który może coś wyjaśni.
A po lekkim "doprofilowaniu":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
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (0x40381ff0)->((nil),00000008)
fixme:dc:GdiIsMetaPrintDC 0x1d8
wine: Call from 0x6941a051 to unimplemented function GDI32.dll.GdiDescribePixelFormat, aborting
-
Autor tematu - Specjalista poziom 2 (min. 300)
- Posty w temacie: 7
- Posty: 573
- Rejestracja: 22 cze 2004, 18:41
- Lokalizacja: Szczecin
- Kontakt:
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.
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 27 mar 2007, 10:58 przez Inf-el, łącznie zmieniany 1 raz.
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 1
- Posty: 1714
- Rejestracja: 13 sty 2006, 16:41
- Lokalizacja: Stargard
- Kontakt:
U mnie chodzi bardzo płynnie.
Laptop, WinXP, PENTIUM III 850Mhz, 376Mb RAM.
Trzymam kciuki za rozwój programu.
Laptop, WinXP, PENTIUM III 850Mhz, 376Mb RAM.
Trzymam kciuki za rozwój programu.
https://www.instagram.com/cncworkshop.pl/
Obróbka CNC - frezowanie & toczenie
Obróbka CNC - frezowanie & toczenie
-
Autor tematu - Specjalista poziom 2 (min. 300)
- Posty w temacie: 7
- Posty: 573
- Rejestracja: 22 cze 2004, 18:41
- Lokalizacja: Szczecin
- Kontakt:
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.x pisze:Trudniej, jeśli chcesz robić edycję, np. "zaznaczyć" jakąś linie...
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.
- Załączniki
-
- Nawigator 3D
- space.jpg (4 KiB) Przejrzano 11164 razy
Ostatnio zmieniony 28 mar 2007, 11:36 przez Inf-el, łącznie zmieniany 3 razy.