Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Parametryczne modele w skrypcie

28 views
Skip to first unread message

Sebastian Biały

unread,
Oct 19, 2014, 12:15:42 PM10/19/14
to
Witam grupę.

Jestem programista, stąd od razu muszę usprawiedliwić skrzywienie jakie
stoi u podstaw tego pytania :P

Mam nastepujący problem: chcę zaprojektować obudowę. Obudowa będzie
wystepowała w kilku(nastu) wariantach: miała lub nie otwory, kilka
rozmiarów, różne sposoby mocowania itd.

Z drugiej strony to jest ciągle ta sama obudowa tylko nieco rózna, 90%
cech jest identycznych, choć niekoniecznie wymiarów bezwzględnych.

Patrze na to jak programista i najbardziej by mi pasowało opisanie
calości projektu obudowy za pomocą języka opisu projektu. Wyobrażam
sobie to tak:

...
element tylna_scianka( var szerokosc, var czy_ma_otwory_na_glosnik )
{
sciana sciana_boczna( szerokosc, szerokosc, 1mm )
if ( czy_ma_otwory_na_glosnik )
{
sciana_boczna.wytnij( otwory( szerokosc / 2, szerkosc / 2, 30mm )
}
}
...

Coś takiego - język opisujący krok po kroku budowanie brył, interakcje,
operacje boolowskie itd. Całośc można "uruchomic" dostając bryłę i
wyeksportować do jakiegoś formatu zjadliwego dla wykonawcy. Wykonawca
nie musi wiedzieć z czego powstał.

Pytanie: czy istnieje jakiś standardowy język opisu tego typu rzeczy? De
facto poszukuje języka opisującego bryły, ale interesuje mnie w środku
"programowanie" a nie tylko sam opis. Najbliższy jaki znam to język
PovRay - spełnia wszelkie założenia dotyczące programowania. Niestety
jest od również daleki od rzeczywistych problemów inzynierskich...

PS. Programow do rysowania z gatunku CAD nie chcę tykac, ponieważ jestem
przekonany że opis tekstowy ma w moim wypadku wiele zalet o ktorych
ciezko mi tutaj mówić bez ujawnienia szczegółów projektu. Dla
ciekawskich: płytka drukowana umieści głośnik (podczas autoroutingu) w
róznych miejscach, idealnie gdyby projekt obudowy automatycznie to
uwzględniał, podobnie mocowania, otwory itd.

2P

unread,
Oct 20, 2014, 6:56:54 AM10/20/14
to
Wprawdzie piszesz, że programów CADowskiech nie chcesz się dotykać, ale ja zasugeruję takie programy zawierające języki skryptowe, które umożliwią Ci opis obudowy w sposób "informatyczny" i wygenerowanie w ten sposób modelu 3D:

1. AutoCAD lub tzw. zamienniki: ZwCAD, BricsCAD itp.
Programujesz w LISP, VisualLISP, VBA, .NET efektem będzie bryła w CADzie. Przy czym trochę CADa musisz jednak znać.

2. Sketchup (również wersja FREE) - programowanie w Ruby - efekt bryła w 3D.
Choć prawdę powiedziawszy ten program jest tak genialnie prosty, że narysujesz zapewne wszystkie wersje obudów szybciej, bez zabawy w Ruby.

Pozdrawiam
=2P=

Sebastian Biały

unread,
Oct 20, 2014, 1:04:17 PM10/20/14
to
On 2014-10-20 12:56, 2P wrote:
> 1. AutoCAD lub tzw. zamienniki: ZwCAD, BricsCAD itp.
> Programujesz w LISP, VisualLISP, VBA, .NET efektem b�dzie bry�a w CADzie. Przy czym troch� CADa musisz jednak zna�.

Kiepsko. Lisp jest nieczytelny bez 30 lat praktyki, pozosta�e dwa s�
tylko na niszowďż˝ platformďż˝.

> 2. Sketchup (r�wnie� wersja FREE) - programowanie w Ruby

Jeszcze gorzej. Znalezienie programisty Ruby to jak trafienie si�demki w
du�ego lotka.

Innymi s�owy bieda a� piszczy. Ale wcale sie nie dziwi�, podobna bieda
jest w DTP :). Trudno ...

> �e narysujesz zapewne wszystkie wersje obud�w szybciej, bez zabawy w Ruby.

Niestety moja "obudowa" posiada kraw�dzie opisane
matematyczno-parametrycznie (funkcjami) i narysowanie tego r�cznie
traktowa� bym jako mierny �art.

Lukasz Kozicki

unread,
Oct 20, 2014, 5:46:20 PM10/20/14
to
W dniu 2014-10-20 19:04, Sebastian Biały pisze:
> On 2014-10-20 12:56, 2P wrote:
>> 1. AutoCAD lub tzw. zamienniki: ZwCAD, BricsCAD itp.
>> Programujesz w LISP, VisualLISP, VBA, .NET efektem będzie bryła w
>> CADzie. Przy czym trochę CADa musisz jednak znać.
>
> Kiepsko. Lisp jest nieczytelny bez 30 lat praktyki, pozostałe dwa
> są tylko na niszową platformę.

Zaraz zaraz, napisałeś że jesteś programistą? Jaki problem nauczyć
się jeszcze jednego języka? AutoLISP wcale nie jest taki trudny.
Nie jestem programistą a napisałem kilka prostych procedur w
LISPie w mniej niż 3 lata od początków pracy z AutoCAD'em.

> Niestety moja "obudowa" posiada krawędzie opisane
> matematyczno-parametrycznie (funkcjami) i narysowanie tego ręcznie
> traktował bym jako mierny żart.

Może wystarczy zbudować odpowiedni blok dynamiczny z
"constraints-ami" (przykro mi, ale nawet nie wiem jak to
zostało przetłumaczone na j.polski. - więzy? ograniczenia? )

Pozdr,
--
ŁK

JD

unread,
Oct 21, 2014, 1:28:20 AM10/21/14
to
W dniu 2014-10-20 23:46, Lukasz Kozicki pisze:
> Może wystarczy zbudować odpowiedni blok dynamiczny z
> "constraints-ami" (przykro mi, ale nawet nie wiem jak to
> zostało przetłumaczone na j.polski. - więzy? ograniczenia? )


Więzy. Nie tylko w autocadzie się to tak tłumaczy.

--
Pozdrawiam
JD

2P

unread,
Oct 21, 2014, 3:31:03 AM10/21/14
to
Wg mnie LISP nie jest taki trudny a bardzo logiczny. Sam napisałem kilka skryptow mimo że zawodowym programista nie jestem.

Ale OK. To kolejna propozycja.
Pisz program w czym chcesz. Na wyjsciu programu stworz plik tekstowy w formacie DXF lub skrypt polecen AutoCADa zawierajacy komendy rysunkowe ze wspolrzednymi.

Nie można sobie wyobrazic prostrzej metody.

=2P=

Sebastian Biały

unread,
Oct 21, 2014, 12:36:30 PM10/21/14
to
On 2014-10-20 23:46, Lukasz Kozicki wrote:
>> Kiepsko. Lisp jest nieczytelny bez 30 lat praktyki, pozosta�e dwa
>> sďż˝ tylko na niszowďż˝ platformďż˝.
> Zaraz zaraz, napisa�e� �e jeste� programist�? Jaki problem nauczy�
> si� jeszcze jednego j�zyka?

Nie ma po co siďż˝ uczyďż˝. Znam lispa. Ale ludzie obok mnie nie. Troche
kiepsko wybiera� j�zyk funkcyjny do zagadnie� kt�re s� �atwiejsze do
wyra�enia w jezyku imperatywnym.

>> Niestety moja "obudowa" posiada kraw�dzie opisane
>> matematyczno-parametrycznie (funkcjami) i narysowanie tego r�cznie
>> traktowa� bym jako mierny �art.
> Mo�e wystarczy zbudowa� odpowiedni blok dynamiczny z
> "constraints-ami" (przykro mi, ale nawet nie wiem jak to
> zosta�o przet�umaczone na j.polski. - wi�zy? ograniczenia? )

Dalej chcia�bym aby by�o to budowane z algorytmu.

Sebastian Biały

unread,
Oct 21, 2014, 12:39:37 PM10/21/14
to
On 2014-10-21 09:31, 2P wrote:
> Pisz program w czym chcesz. Na wyjsciu programu stworz plik tekstowy w formacie DXF

Robie tak teraz ale brakuje mi CSG (Constructive Solid Geometry). Jak
ju� wspomnialem PovRay to ma, a napisanie samodzielnie jest do��
k�opotliwe. bez tego zrobienie otworu na srubk� jest powaznym wyzwaniem.

2P

unread,
Oct 22, 2014, 8:20:07 AM10/22/14
to
Jeśli wynikiem działania skryptu masz plik tekstowy poleceń AutoCADa (nie DXF) możesz operować na bryłach. Nie najłatwiejsze ale możliwe.
Ułatwić zadanie może wplecenie w taki skrypt poleceń naprawdę podstawowych funkcji LISPa operujących na danych rysunkowych.

Lukasz Kozicki

unread,
Oct 22, 2014, 11:21:09 AM10/22/14
to
W dniu 2014-10-21 18:39, Sebastian Biały pisze:
> On 2014-10-21 09:31, 2P wrote:
>> Pisz program w czym chcesz. Na wyjsciu programu stworz plik tekstowy w
>> formacie DXF
>
> Robie tak teraz ale brakuje mi CSG (Constructive Solid Geometry). Jak
> już wspomnialem PovRay to ma, a napisanie samodzielnie jest dość
> kłopotliwe. bez tego zrobienie otworu na srubkę jest powaznym wyzwaniem.

Może w takim razie warto zainteresować się programem Pro/Engineer
(czy raczej jego następcą - PTC)? AutoCAD ma IMHO nędzne możliwości
operowania na bryłach. Wprawdzie z Pro/E miałem do czynienia dobre
12 lat temu (i nie ja na nim pracowałem) - ale już wtedy możliwości
parametryzacji danych geometrycznych wyglądały dość imponująco.

Inny program jaki mi przychodzi do głowy to I-DEAS (obecnie bodajże
Siemens PLM) - moja Żona kilkanaście lat temu ćwiczyła modelowanie
w nim elementów obudowy maszyn. W tym rodzaju prac miał już wówczas
IMHO większe możliwości niż AutoCAD nawet obecnie.

Pozdrawiam,
ŁK







0 new messages