Posiadają one możliwość rozszerzania ich funkcjonalności poprzez zaprogramowanie specjalistycznych dodatków branżowych - innych programów będą potrzebować architekci, innych elektrycy czy instalatorzy.
Rozszerzenia te potocznie nazywane “nakładkami” można pisać w kilku różnych technologiach programistycznych, które postaram się sklasyfikować.
-
AutoLisp/VisualLisp - technologią dostępną dla kazdego jest “lisp”, jest to skryptowy język programowania interpretowany w CADach.
-
Plusy
-
Pisanie w nim nie wymaga specjalistycznego oprogramowania programistycznego, wystarczy “zwykły” notatnik (chociaż dobrze jakby podświetlał składnię :) )
-
Działa na dużej części CADów, zdażają się różnicę w interpretacji lispa, ale z grubsza można założyć że program napisany na Autocadzie uruchomi się na Intellicadzie czy Zwcadzie
-
-
Minusy
-
Bardzo wolno działa
-
Kodu napisanego w lispie nie jesteśmy w stanie zabezpieczyć przed kradzieżą, ponieważ jest to czysty tekst
-
Okna dialogowe tworzy się w DCL (Dialog Control Language) mają one dość ograniczoną ilość kontrolek i wyglądają mało profesjonalnie
-
-
-
VBA - Visual Basic for Application, jest uproszczona wersja języka Visual Basic. W roku 2007 Microsoft przestał wspierać Autodesk w dystrybucji tej technologii zachęcając twórców nakładek do korzystania z technologii .Net.
Autodesk kontunouwał nieautoryzowane przez MS wsparcie VBA do wersji 2010.
Konkludując, nie piszcie już programów w VBA.
-
ADS - Technologia dostosowana do programowania w języku C
-
Plusy
-
Szybkość działania - programy napisane w C/C++ są najwydajniejsze
-
Używana zarówno w Autocadzie jak i w dużej części “klonów”, powoli ustępuje miejsca swojemu następcy - ObjectARX
-
-
Minusy
-
Wymaga specjalistycznej wiedzy na temat programowania
-
Osobna kompilacja na każdą wersję CAD’a
-
-
-
ObjectARX - biblioteka programistyczna współpracująca z językiem C++, jako następca ADS powiela jego plusy i ograniczenia. W mojej ocenie jest to technologia wspierana przez jak największą liczbę programów CAD, co w przypadku rynku polskiego gdzie “klon” Autocada kosztuje 10-20% “oryginału” ma duże znaczenie.
-
.NET API - w porównaniu do poprzednich technologii jest na pewno technologią łatwiejszą do opanowania dla programisty. Prostszą w tworzeniu efektownych okien dialogowych bądź połączeń z programami zewnętrznymi typu Word, Excel. Programy w niej napisane działają trochę wolniej niż programy napisane w ADS czy ObjectARX. Największą jej wadą jest zasięg działania, AutoCAD obsługuję ją wprawdzie od dawna ale z pozostałymi CADami, już nie jest tak różowo.
Technologie ADS, ObjectArx czy .Net API wymagają specjalistycznego środowiska programistycznego - ale Microsoft udostepnia darmowe wersje Visual Studio Express, co rozwiązuję tą sprawę.
Jeżeli ktoś z Was zastanawia się nad tworzeniem profesjonalnych aplikacji CAD dla architektów, projektantów, instalatorów czy elektryków to polecałbym i chciałby aby jego nakładka miała jak największe grono odbiorców to polecałbym technologię ObjectArx, ewentualnie w połączeniu z ADS na starszych wersjach CADów.
Jeżeli interesuje Was efektowny wygląd programu i głównie “mainstream cadowy” czyli AutoCAD to polecam .Net API.
Dla domowych pasjonatów CADa najlepszym wyborem będzie chyba lisp.