SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD



Podobne dokumenty
INFORMATYKA TECHNICZNA Badanie możliwości wykorzystania języka AutoLISP i środowiska VisualLISP w systemie CAx

INFORMATYKA TECHNICZNA Metody wprowadzania obiektów w programie AutoCAD za pomocą języka AutoLISP

INFORMATYKA TECHNICZNA Badanie możliwości wykorzystania interfejsu automatyzacji OLE w systemie CAx

METODY URUCHAMIANIA PROGRAMÓW JĘZYKA AutoLISP W ŚRODOWISKU AutoCAD

WYKORZYSTANIE PLATFORMY FireMonkey DO AUTOMATYZACJI ZADAŃ GRAFIKI W PROGRAMIE AutoCAD

S Y L A B U S P R Z E D M I O T U

Delphi podstawy programowania. Środowisko Delphi

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

WYKORZYSTANIE PROGRAMU AUTOCAD DO GENEROWANIA PUNKTÓW WĘZŁOWYCH POLILINII

37. Podstawy techniki bloków

WIZUALIZACJA DANYCH ZE STRZELA RAKIETOWYCH Z WYKORZYSTANIEM SYSTEMÓW CAx

Król Łukasz Nr albumu:

KGGiBM GRAFIKA INŻYNIERSKA Rok III, sem. VI, sem IV SN WILiŚ Rok akademicki 2011/2012

TWORZENIE ELEMENTÓW ZNORMALIZOWANYCH W PROGRAMIE AutoCAD

Rysowanie precyzyjne. Polecenie:

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)

Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej.

54. Układy współrzędnych

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Aplikacje w środowisku VBA. Visual Basic for Aplications

NOWOŚCI SOLID EDGE ST7. Przykładowy rozdział

WYKORZYSTANIE PLATFORMY FireMonkey W PROCESIE URUCHAMIANIA I TESTOWANIA UKŁADÓW MIKROPROCESOROWYCH

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

2.2 Opis części programowej

Projektowanie systemów zrobotyzowanych

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wprowadzenie do biblioteki klas C++

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Zagadnienia egzaminacyjne AUTOMATYKA I ROBOTYKA. Stacjonarne I-go stopnia TYP STUDIÓW STOPIEŃ STUDIÓW SPECJALNOŚĆ

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Układy VLSI Bramki 1.0

9. Podstawowe narzędzia matematyczne analiz przestrzennych

Zacznij Tu! Poznaj Microsoft Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska

Wprowadzenie do programowania

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Pakiet programów komputerowych do prognozowania deformacji terenu górniczego - EDBJ-OPN1W

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

PRZEWODNIK PO PRZEDMIOCIE

Programowanie komputerowe. Geodezja i Kartografia I stopień (I stopień / II stopień) akademicki (ogólno akademicki / praktyczny)

dr inż. Jarosław Forenc

Ćwiczenie 3. I. Wymiarowanie

III. Przebieg ćwiczenia. 1. Generowanie i wizualizacja przebiegów oraz wyznaczanie ich podstawowych parametrów

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Ćwiczenie nr 5 Zautomatyzowane tworzenie dokumentacji

Misja #1 Poznajemy Prophio.

Układy współrzędnych GUW, LUW Polecenie LUW

1.3. Tworzenie obiektów 3D. Rysunek 1.2. Dostępne opcje podręcznego menu dla zaznaczonego obiektu

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

ECDL/ICDL CAD 2D Moduł S8 Sylabus - wersja 1.5

Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0

3.4. Opis konfiguracji layoutów.

Programowanie współbieżne i rozproszone

Podstawy programowania. Wprowadzenie

5.2. Pierwsze kroki z bazami danych

Instalacja

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Opis efektów kształcenia dla modułu zajęć

SYSTEMY ZARZĄDZANIA TREŚCIĄ WORDPRESS

POZYSKIWANIE INFORMACJI Z AUTOCADa: ODLEG _DIST, POLE _AREA, ID (współrzędne), LISTA _LIST, STAN _STATUS, _TIME

Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

PRZEWODNIK PO PRZEDMIOCIE

Menu Plik w Edytorze symboli i Edytorze widoku aparatów

Wymagania edukacyjne na ocenę z informatyki klasa 3

PRZEWODNIK PO PRZEDMIOCIE

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2016/2017

Makropolecenia w PowerPoint Spis treści

Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT Podstawy projektowania parametrycznego i nieparametrycznego

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Ćwiczenie nr 4 INSTRUKCJA LABORATORYJNA

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE. QuIDE Quantum IDE PODRĘCZNIK UŻYTKOWNIKA

Ćwiczenia nr 7. TEMATYKA: Krzywe Bézier a

TWORZENIE BLOKÓW I ATRYBUTÓW DLA PODANEGO PRZYKŁADU RYSUNKU ZESTAWIENIOWEGO. SPORZĄDZENIE LISTY ATRYBUTÓW

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski

Atrybuty bloki z atrybutami, wyciągi atrybutów.

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Programowanie obiektowe

Programowanie komputerowe Computer programming

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Technologie informacyjne - wykład 12 -

Symulacja działania sterownika dla robota dwuosiowego typu SCARA w środowisku Matlab/Simulink.

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II

Specjalnościowy Obowiązkowy Polski Semestr 5

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

ODWZOROWANIE SYTUACJI TAKTYCZNEJ WOJSK OPL Z WYKORZYSTANIEM SYSTEMU CAx

Język programowania PASCAL

KONFIGURACJA SIECIOWA SYSTEMU WINDOWS

Podstawy MATLABA, cd.

Moduł Grafika komputerowa i multimedia 312[01].S2. Ćwiczenia Podstawy programu Autocad 2011 Prosta

1. Dostosowanie paska narzędzi.

Projektowanie baz danych za pomocą narzędzi CASE

Wdrożenie modułu płatności eservice. dla systemu Zen Cart

biegle i poprawnie posługuje się terminologią informatyczną,

Transkrypt:

Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Streszczenie: W referacie przedstawiono możliwości wykorzystania języka programowania AutoLISP oraz interfejsu automatyzacji OLE w procesie automatyzacji zadań grafiki. Przeanalizowano możliwości pomiaru kątów w przestrzeni trójwymiarowej. METHODS FOR MEASURING ANGLES IN AutoCAD Abstract: The paper presents examples of the use of AutoLISP programming language and OLE interface to automate the graphic tasks in AutoCAD. The abilities to measure angles in 3-dimentional space are analyzed. Słowa kluczowe: AutoLISP, Visual LISP, OLE, pomiar kąta, AutoCAD Keywords: AutoLISP, Visual LISP, OLE, angle measuremet, AutoCAD 1. WPROWADZENIE W programie AutoCAD istnieją możliwości programowania czynności związanych z obsługą danych, automatyzacją zadań grafiki oraz wykonywaniem i dzieleniem informacji o rysunku z innymi aplikacjami. Tworzenie aplikacji dla programu AutoCAD w środowisku Windows jest możliwe za pomocą wbudowanych narzędzi programistycznych (np. środowisko programowania Visual LISP oparte na języku AutoLISP) i języków programowania ogólnego zastosowania (Delphi czy C++) [1-3]. W przypadku projektowania elementów, pomiar kątów jest możliwy za pomocą standardowych poleceń znajdujących się w: menu (Narzędzia Zapytania Kąt), wstążce (karta Narzędzia główne panel Narzędzia menu rozwijalne Zmierz Kąt), pasku narzędzi (Zapytania Narzędzia pomiarowe Kąt). W przypadku pomiaru położenia kątowego obiektów, które nie mają punktów wspólnych, standardowe polecenia program AutoCAD nie pozwolą użytkownikowi na uzyskanie wyniku pomiaru kąta (patrz poniższy rysunek). Pomiar kąta pomiędzy liniami [1] i [2]: Rys. 1. Pomiar kąta dla obiektów niewspółpłaszczyznowych 815

Dla obiektów leżących na jednej płaszczyźnie lub obiektów mających wspólne punkty, w przypadku pomiaru kątów w przestrzeni trójwymiarowej można wykorzystać metodę wskazywania dwóch linii lub wskazanie wierzchołka i punktów końcowych mierzonego kąta. Rys. 2. Metody pomiaru kąta Rys. 3. Wynik pomiaru kąta po wskazaniu 2 linii Rys. 4. Wynik pomiaru kąta po wskazaniu wierzchołka i 2 punktów końcowych W referacie przeanalizowano możliwość wykorzystania nowo utworzonych poleceń języka AutoLISP oraz programu z wykorzystaniem interfejsu typu klient-serwer do pomiaru dowolnych kątów w przestrzeni trójwymiarowej. 2. POMIAR KĄTÓW Z WYKORZYSTANIEM JĘZYKA AutoLISP AutoLISP jest specjalną odmianą języka programowania LISP (List Processing) pracującą w środowisku programu AutoCAD. Język AutoLISP pozwala na przetwarzanie zmiennych liczbowych, tekstowych i list, umożliwia obsługiwanie plików i wprowadzanie obiektów używając do tego celu interpretera graficznego programu AutoCAD. Ogromną zaletą języka AutoLISP jest możliwość tworzenia poleceń, które w sposób automatyczny wprowadzają obiekty, np. na podstawie wyników z bazy danych czy danych zawartych w plikach tekstowych. Programy języka AutoLISP tworzone są w środowisku Visual LISP, które posiada własny edytor i kompilator [7, 8]. Rys. 5. Wybrane elementy środowiska Visual LISP 816

Język programowania AutoLISP i środowisko Visual LISP programu AutoCAD zostały wykorzystane do opracowania nowych poleceń, które umożliwiają pomiar dowolnych kątów w przestrzeni trójwymiarowej programu AutoCAD [4,5]. Nowo opracowane polecenia o1 i o2 umożliwiają pomiar kątów, bazując na obiektach typu linia lub punktach charakterystycznych, takich jak wierzchołek i ramiona badanego kąta. Oba polecenia w procesie wyznaczania kąta wykorzystują obliczany iloczyn skalarny oraz długości wektorów definiujących dany kąt. Rys. 6. Działanie poleceń o1 i o2 w procesie pomiaru kąta Kod programu o1.lsp pokazany jest na poniższym rysunku. Rys. 7a. Kod programu o1.lsp 817

Rys. 7b. Kod programu o1.lsp Powyższy program działa w następujący sposób: tworzone jest nowe polecenie programu AutoCAD o1, które nie posiada żadnych parametrów wejściowych, do zmiennej prosta przywiązywany jest zbiór wskazań pierwszej linii (następuje także sprawdzenie, czy zbiór wskazań nie jest zbiorem pustym, jak również sprawdzenie, czy należy on do obiektu typu linia, w przeciwnym razie następuje automatyczne zakończenie działania programu), 818

w procesie sprawdzania, czy zbiór wskazań jest linią, wykorzystywane jest polecenie assoc które przeszukuje listę asocjacji definiowaną przez zmienną ent_dxf, która to z kolei jest definiowana przez wykorzystanie polecenia entget zwracającego listę zawierającą dane zmiennej entity, czyli wskazanego do zbioru wskazań obiektu typu linia (przepływ danych pokazany jest na poniższym rysunku), Rys. 8. Lista zawierająca dane uzyskane za pomocą funkcji entget poprzez sprawdzanie 10. i 11. kodu DXF zmiennej dana definiowane są współrzędne X,Y oraz Z początkowego i końcowego punktu pierwszej linii definiującej kierunek badanego kąta, w ten sam sposób definiowane są współrzędne drugiej linii definiującej badany kąt, następną operacją jest zdefiniowanie długości wektorów definiujących badany kąt, w następnym fragmencie kodu programu definiowany jest iloczyn skalarny wektorów definiujących badany kąt, ostatnia operacja powoduje wyznaczenie kąta poprzez wykorzystanie funkcji trygonometrycznych. Kod programu o2.lsp pokazany jest na poniższym rysunku. Rys. 9a. Kod programu o2.lsp 819

Rys. 9b. Kod programu o2.lsp Powyższy program działa w następujący sposób: tworzone jest nowe polecenie programu AutoCAD o2, które nie posiada żadnych parametrów wejściowych, funkcja (vl-load-com) pozwala na wywołanie funkcji pozwalających na programowanie obiektowe, do zmiennej globalnej _acad_ przypisywany jest dokument programu AutoCAD, natomiast do zmiennej _model_ przestrzeń modelu aktywnego rysunku, poprzez wykorzystanie polecenie getpoint definiowane są współrzędne X,Y oraz Z początkowego i końcowego punktu kąta oraz jego wierzchołka, operacje matematyczne powodujące wyznaczenie kąta są identyczne jak w programie o1.lsp. 3. POMIAR KĄTÓW Z WYKORZYSTANIEM INTERFEJSU AUTOMATYZACJI OLE Automatyzacja pomiaru kątów możliwa jest między innymi za pomocą wykorzystania interfejsu automatyzacji OLE. Przez pojęcie automatyzacji OLE (OLE Automation) definiuje się możliwość programowego sterowania obiektami innego programu oraz protokół, za pomocą którego dany program może uzyskać dostęp do obiektu znajdującego się w innym programie. Aby można było korzystać z metod i obiektów interfejsu, używając programu zewnętrznego, niezbędne jest nawiązanie połączenia z serwerem OLE programu AutoCAD 2013. Uzyskanie połączenia z serwerem OLE dla programów pisanych w Delphi przedstawiono w module PolaczAutoCAD. W module tym procedura PolaczZACAD pozwala uzyskać dostęp do uruchomionego obiektu aplikacji. Zmodyfikowany kod modułu PolaczAutoCAD, który umożliwia dostęp do interfejsu automatyzacji w wersji 2013 programu AutoCAD, przedstawia się następująco [1, 3]: 820

Rys. 10. Kod modułu PolaczAutoCAD Do wyznaczania kąta w przestrzeni trójwymiarowej można wykorzystać funkcje bazujące na definiowaniu kierunków wektorów u i v, których początek i koniec znajdują się w odpowiednich punktach wskazanych przez użytkownika. Uzyskanie kierunku zgodnego ze wskazanym odbywa się poprzez obliczenie kąta zgodnie z poniższą zależnością: arccos u v u v Po uruchomieniu programu Kąt 3D [6], na ekranie pojawia się okno, które pozwala użytkownikowi na wskazanie linii definiujących wektory lub początkowych i końcowych punktów wektorów kierunku. Na podstawie tak zdefiniowanych danych, program wyznacza rzeczywiste wartości kąta w przestrzeni trójwymiarowej. 821

4. WNIOSKI Rys. 11. Działanie programu Kąt 3D W referacie przeanalizowano możliwość wykorzystania nowo utworzonych poleceń języka AutoLISP oraz programu z wykorzystaniem interfejsu typu klient-serwer do pomiaru dowolnych kątów w przestrzeni trójwymiarowej. Opracowanie takich funkcji i programów ma praktyczne znaczenie w przypadku tworzenia aplikacji korzystających z pomiaru kierunków definiowanych przez dowolne wektory. Wyżej wymienione funkcje mogą być wykorzystane w procesie uzyskiwania dostępu do obiektów serwera automatyzacji, jakim jest program AutoCAD. Z wykorzystaniem tych modułów programowych można wprowadzać i edytować dowolne obiekty rysunkowe. W referacie przedstawiono przykład wykorzystania systemu CAx w procesie automatyzacji zadań grafiki z wykorzystaniem języka AutoLISP i środowiska Visual LISP [2, 7, 8], a także interfejsu automatyzacji OLE [1, 3]. LITERATURA [1] Czyżycki W., Lisowski E.: Automatyzacja zadań grafiki za pomocą Delphi, Helion, 2002. [2] Dudek M.: AutoLISP. Praktyczny kurs, Helion, 1997. [3] Warchulski J., Warchulski M.: Przykłady automatyzacji zadań grafiki w programie AutoCAD, XIV Międzynarodowa Szkoła Komputerowego Wspomagania Projektowania, Wytwarzania i Eksploatacji, Jurata 10-14 maja 2010, Materiały konferencyjne, s. 515-522. [4] Warchulski J., Warchulski M.: Program o1.lsp, Wojskowa Akademia Techniczna, Warszawa, 2013. [5] Warchulski J., Warchulski M.: Program o2.lsp, Wojskowa Akademia Techniczna, Warszawa, 2013. [6] Warchulski J., Warchulski M., Bużantowicz W.: Program Kąt 3D.exe, Wojskowa Akademia Techniczna, Warszawa, 2013. [7] http://forum.cad.pl/autocad.html [8] http://www.kojacek.republika.pl 822