Skocz do zawartości

Featured Replies

Napisano

Cześć,

 

Dostałem do rozwiązania problem od którego zależy czy dostanę pracę. Mam model 3d w stl jako siatkę trójkątów, którego grubość wynosi 0. Potrzebuje wydobyć z tego modelu sam jego obrys(żółty obrys na screen'ie), a dokładnie same obrysy wewnątrz modelu(zębodoły). Jestem automatykiem, nie znam się na 3d, więc mam 2 pytania:

1. Czy jest taka możliwość aby oprogramowanie narysowało mi sam obrys modelu? Albo podało współrzędne punktów na obrysie?

2. Oprogramowanie w jakiś sposób dochodzi do tego, jak narysować sam obrys. Czy ktoś wie w jaki sposób jest to wyliczane, bądź czy ktoś ma pomysł jak mogę to wyliczyć ? Wiem, że po konwersji jestem wstanie wydobyć współrzędne każdego małego trójkąta.

Jeśli to się uda, to będę musiał stworzyć aplikację do robota który będzie wycinał model po takich właśnie obrysach.

 

Pozdrawiam

  • Odpowiedzi 9
  • Wyświetleń 1,6k
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Napisano

Hej

 

1. Podstawowe pytanie. Chcesz do tego podejść jako programista czy po prostu w aplikacji 3d?

2. Masz to robić w maxie, czy masz dowolnośc?

 

Genralnie to czego potrzebujesz to można by googlac jako "extract borders lines from 3d model" albo podobnie.

 

W 3d maxie to kilka klików:

1. zaznaczasz obiekt, klikasz prawym, wybierasz convert to edit poly

2. naciskasz "3" na klawiaturze -> wchodzisz w tryb edycji bordersów

3. przeciagasz prostokąt selekcji nad całym obiektem -> zaznaczają się same obrysy.

4. Na panelu po prawej szukasz sekcji Edit Borders, w niej klikasz "create shape from selection"

 

No i program tworzy ci obiekt spline w którym masz same obrysy.

Napisano
  • Autor

Dziękuje za cenne wskazówki.

 

1. Muszę podejść do tematu jako programista. Docelowo należy napisać program który sam, na podstawie modelu w STL i bez pomocy człowieka, przekaże współrzędne otworów do robota (masowa produkcja).

 

2. Korzystam z aplikacji 3d, aby mieć podgląd modelu oraz w celu sprawdzenia poprawności wyników z programu. Ciekawi mnie także sposób, w jaki taka aplikacja znajduje obrys. Środowisko które będzie mi do tego służyło jest całkowicie dowolne.

 

Pozdrawiam

Napisano
Prawdopodobnie C++.

 

No to z grubsza każda biblioteka która pozwoli sprawdzić, czy krawędź należy tylko do jednego trójkąta, da ci możliwość zdobycia informacji które potrzebujesz.

Napisano
  • Autor

Myślałem żeby samemu napisać taki program, ale rzeczywiście, taka biblioteka na pewno już jest. Mam tylko nadzieję że nie będę miał problemu z optymalizacją, to w końcu 70 000 trójkątów.

Napisano

W naszym świecie 70000 trójkątów to śmieszna ilość.

Nie znam c++ wiec nie będę szukał konkretnych rozwiazań dla ciebie.

 

Myślę że szukając "cpp stl model border extraction" dostaniesz odpowiedź jakiej potrzebujesz.

Napisano
  • Autor

Witam ponownie,

 

udało mi się napisać program, będę musiał go zoptymalizować ponieważ obliczenia trwają ponad 8 minut, ale nie o to chciałem zapytać.

 

Wynikiem w moim programie jest tablica punktów tworzących obrys modelu, teraz potrzebuje nanieść te współrzędne na pierwotny model, po to, aby sprawdzić wizualnie czy rzeczywiście znalazłem odpowiednie punkty. Zastanawiam się w jakim formacie najprościej zapisać współrzędne x,y,z, aby następnie odtworzyć je w środowisku 3d.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności