AutoCAD Automatyzacja zadan grafiki za pomoca Delphi

background image

Wydawnictwo Helion

ul. Chopina 6

44-100 Gliwice

tel. (32)230-98-63

e-mail: helion@helion.pl

PRZYK£ADOWY ROZDZIA£

PRZYK£ADOWY ROZDZIA£

IDZ DO

IDZ DO

ZAMÓW DRUKOWANY KATALOG

ZAMÓW DRUKOWANY KATALOG

KATALOG KSI¥¯EK

KATALOG KSI¥¯EK

TWÓJ KOSZYK

TWÓJ KOSZYK

CENNIK I INFORMACJE

CENNIK I INFORMACJE

ZAMÓW INFORMACJE

O NOWOŒCIACH

ZAMÓW INFORMACJE

O NOWOŒCIACH

ZAMÓW CENNIK

ZAMÓW CENNIK

CZYTELNIA

CZYTELNIA

FRAGMENTY KSI¥¯EK ONLINE

FRAGMENTY KSI¥¯EK ONLINE

SPIS TREŒCI

SPIS TREŒCI

DODAJ DO KOSZYKA

DODAJ DO KOSZYKA

KATALOG ONLINE

KATALOG ONLINE

AutoCAD. Automatyzacja zadañ

grafiki za pomoc¹ Delphi

Autorzy: Wojciech Czy¿ycki, Edward Lisowski

ISBN: 83-7197-682-8

Format: B5, stron: 254

Zawiera CD-ROM

Obecnie dokumentacja techniczna jest u¿ywana i przetwarzana najczêœciej w formie

elektronicznej. Do zapisu konstrukcji stosuje siê ró¿norodne programy CAD. Mo¿liwoœci

wyboru jednego spoœród nich s¹ du¿e, jednak¿e dla osi¹gniêcia wydajnej pracy

programy te trzeba odpowiednio dostosowaæ do okreœlonych potrzeb. Jednym ze

sposobów takiego dostosowania jest opracowanie specjalistycznych aplikacji

pozwalaj¹cych na automatyzacjê procesu projektowania, np. w AutoCAD-zie. Program

ten ma wbudowany interfejs automatyzacji OLE, który pozwala oddzia³ywaæ w sposób

programowy na proces tworzenia rysunku.
Ksi¹¿ka powsta³a w wyniku opracowania przez autorów (na potrzeby w³asne i innych

u¿ytkowników) aplikacji do wspomagania projektowania w AutoCAD-zie. Jest ona

adresowana do in¿ynierów, studentów i innych u¿ytkowników tego programu. Ksi¹¿ka

zawiera wiele kodów, które mo¿na bezpoœrednio uruchomiæ i wykorzystaæ w swojej

pracy projektowej. U¿ycie wiêkszoœci kodów znajduj¹cych siê na p³ycie CD wymaga

jedynie przeprowadzenia instalacji. U¿ytkownik posiadaj¹cy pewne umiejêtnoœci

programowania w Delphi mo¿e je rozbudowaæ lub adaptowaæ do swoich celów.
Nawet zaawansowane aplikacje przedstawione w ksi¹¿ce s¹ ³atwe do uruchomienia

i bezpoœredniego u¿ycia. Bardzo przydatne dla projektanta mog¹ byæ programy do

automatycznego rysowania po³¹czeñ wpustowych w po³¹czeniu z automatycznymi

obliczeniami, wspomagaj¹ce rysowanie oznaczeñ po³¹czeñ spawanych czy

automatyzuj¹ce generowanie elementów po³¹czeñ œrubowych.
Ksi¹¿ka adresowana jest do in¿ynierów, studentów i innych u¿ytkowników

posiadaj¹cych wiedzê na temat programu AutoCAD. U¿ycie wielu programów

za³¹czonych na p³ycie CD wymaga jedynie przeprowadzenia instalacji. Praca zawiera

kod wielu programów do bezpoœredniego wykorzystania. U¿ytkownik posiadaj¹cy

pewne umiejêtnoœci programowania w Delphi mo¿e programy te rozbudowaæ lub

adaptowaæ do swoich celów.
W podrêczniku zamieszczono te fragmenty kodów programów, które wymagaj¹

wyjaœnieñ (komentarza), kompletny kod przedstawionych programów znajduje siê na

za³¹czonej do pracy p³ycie CD.

background image

Przedmowa ...................................................................................... 5

Rozdział 1. Wstęp ............................................................................................... 7

Automatyzacja........................................................................................................... 7
Struktura klienta automatyzacji................................................................................. 8
Klasy i obiekty .......................................................................................................... 9

Rozdział 2. Interfejs automatyzacji OLE programu AutoCAD 2000 .................. 11

Obiekty interfejsu automatyzacji OLE.................................................................... 13
Kolekcja Blocks ...................................................................................................... 13
Obiekt Block ........................................................................................................... 14
Obiekt ModelSpace ................................................................................................. 15

Nawiązanie połączenia z serwerem OLE i ustawienia początkowe ................................17
Translacja współrzędnych ................................................................................................18
Metody generowania podstawowych elementów rysunku...............................................18

Wybrane metody modyfikacji obiektów ................................................................. 38
Wybrane składniki obiektu Document i kolekcji Documents ................................ 48

Kolekcja Dictionaries, obiekty Dictionary i XRecord .....................................................53
Kolekcja DimStyles i obiekt DimStyle ............................................................................57
Kolekcja Layers i obiekt Layer ........................................................................................58
Kolekcja Linetypes i obiekt Linetype ..............................................................................60
Kolekcje Groups i SelectionSets oraz obiekty Group i SelectionSet...............................61
Kolekcja TextStyles i obiekt TextStyle............................................................................65
Kolekcja UserCoordinateSystems i obiekt UCS..............................................................68
Obiekt Utility...................................................................................................................69
Ustalanie aktywnych właściwości obiektu Document .....................................................75

Paski menu i paski narzędziowe ............................................................................. 76

Kolekcja MenuGroups i obiekt MenuGrup......................................................................76
Kolekcje MenuBar i PopUpMenu oraz obiekt PopUpMenuItem ....................................76
Kolekcja Toolbars oraz obiekty Toolbar i ToolbarItem...................................................78

Rozdział 3. Przykłady aplikacji ......................................................................... 83

Przygotowanie dokumentu — dodawanie warstw i typów linii ............................. 83
Generowanie składników rysunkowych ................................................................. 86

Rysowanie otworów według zadanych współrzędnych...................................................86
Umieszczanie składników na ustalonej warstwie ............................................................89

Bloki składników..................................................................................................... 92
Atrybuty bloków ..................................................................................................... 97
Kreskowania............................................................................................................ 98
Działania na obiektach rysunku ............................................................................ 103
Rysunki 3D............................................................................................................ 109

background image

4

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

Linia śrubowa — krzywe sklejane ........................................................................ 117
Generowanie powierzchni 3D............................................................................... 121

Rozdział 4. Zdarzenia ..................................................................................... 127

Dostęp do obsługi zdarzeń — biblioteki typów.................................................... 127

Importowane biblioteki typów .......................................................................................127
Nawiązanie połączenia z obiektami interfejsu OLE

przy użyciu modułu importowego ...............................................................................129

Obsługa zdarzeń programu AutoCAD .................................................................. 130

Rozdział 5. Aplikacje dla mechaników............................................................ 139

Oznaczenia połączeń spawanych .......................................................................... 139
Elementy połączeń śrubowych.............................................................................. 157
Obliczenia i rysowanie połączenia wpustowego .................................................. 179
Dobór i generowanie rysunków profili zamkniętych prostokątnych

na podstawie obliczeń wytrzymałościowych...................................................... 190

Przetwarzanie informacji zapisanych w tabelce rysunku ..................................... 194
Automatyzacja rysowania schematów pneumatycznych i hydraulicznych .......... 196

Literatura ......................................................................................................... 201

Polskie Normy....................................................................................................... 202

Dodatek A Wykaz metod, zdarzeń i właściwości interfejsu

automatyzacji OLE programu AutoCAD 2000............................... 203

Dodatek B Programy na płycie CD................................................................... 24

Skorowidz......................................................................................................... 251

background image

W tym rozdziale przedstawiono zaawansowane programy wykorzystujące techniki pro-
gramowania obiektowego, korzystające z klas i dziedziczenia, posługujące się relacyj-
nymi bazami danych i językiem

SQL. Podjęte zadania dotyczą automatyzacji:

¨ oznaczania i generowania symboli połączeń spawanych,
¨ połączeń śrubowych przy zastosowaniu dziedziczenia do opisu rodzin elementów,
¨ obliczenia i rysowania połączenia wpustowego,
¨ doboru i generowania rysunków profili zamkniętych prostokątnych na podstawie

obliczeń wytrzymałościowych, wyznaczanie linii wpływowej ugięć dla dobranej belki,

¨ przetwarzania informacji zapisanych w tabelce rysunku z automatycznym przesłaniem

ich do arkusza kalkulacyjnego MS Excel,

¨ rysowania schematów pneumatycznych i hydraulicznych.

Oznaczenia połączeń spawanych

Przy projektowaniu konstrukcji spawanych niezbędne jest określenie wielu parametrów
dla złącza oraz narysowanie odpowiedniego symbolu na rysunku. W konstrukcji, w której
występuje wiele różnego typu spoin, zautomatyzowanie procesu opisu złącza spawanego
może znacznie ułatwić wykonanie dokumentacji rysunkowej. Symbol oznaczenia bu-
duje się z różnych składników zdefiniowanych w przedmiotowej normie. Zautomaty-
zowanie opisu spoin zrealizowano programowo w ten sposób, że użytkownik w oknie
dialogowym wybiera właściwości i parametry spoiny. W trakcie tej czynności w oknie
pojawia się automatycznie rysunek symbolu spoiny z oznaczeniami, które użytkownik
wprowadza. Po interaktywnym uzgodnieniu oznaczenia złącza spawanego skompono-
wany symbol jest generowany w programie AutoCAD we wskazanym miejscu na ak-
tywnym rysunku. Symbole oznaczeń mogą być również wyeksportowane do pliku

wmf.

Program nazwano

PolSpaw, formatkę tego programu przedstawiono na rysunku 5.1.

Umieszczono na niej następujące komponenty:

¨ przyciski z ikonami

,

¨ grupy przycisków

,

¨ znaczniki

,

¨ okienka edycji

,

¨ przyciski zmiany wartości

,

background image

140

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

Formatka

(Form1:TForm)

Obramowanie

podglądu spoiny
(Panel1:TPanel)

Podgląd spoiny

(Image1:TImage)

Etykieta

wymiaru

wzdłużnego

spoiny

(Label2:TLabel)

Etykieta wymiaru

poprzecznego spoiny

(Label1:TLabel)

Okienko edycji

wymiaru

wzdłużnego

spoiny

(Edit2:TEdit)

Okienko edycji

wymiaru

poprzecznego

spoiny

(Edit1:TEdit)

Obramowanie

obszaru wyboru

rodzaju spoiny

(Form1:TForm)

Przyciski wyboru

rodzaju spoiny

SpeedButton1..15:

TSpeedButton

Etykieta okienka

technologii

(Label4:TLabel)

Okienko wyboru technologii

(ComboBox1:TComboBox)

Etykieta okienka

nr poz.

(Label3:TLabel)

Wybór położenia linii

identyfikacyjnej
(RadioButton1:

TRadioButton)

Wybór położenia wymiaru

(RadioGroup2:

TRadioGroup)

Wybór kształtu lica spoiny

(RadioGroup3:

TRadioGroup3)

Wybór spoiny dookólnej

(CheckBox1:TCheckBox)

Wybór spoiny

wyk. w montażu

(CheckBox2:TCheckBox)

Obramowanie

elementów wyboru

znaków dodatkowych

(GroupBox:

TGroupBox)

Wybór znaku

dodatkowego dolnego

(RadioGroup4:

TRadioGroup4)

Okienko wprowadzania nr

pozycji

(Edit3:TEdit)

Przyciski zmiany nr poz.

(UpDown1:TUpDown)

Wybór programu CAD

(RadioGroup5:

TRadioGroup)

Dialog zapisu pliku WMF

(SaveDialog1:TSaveDialog)

Przycisk

zamknięcia

programu

(Button2:TButton)

Przycisk zapisu

do pliku WMF

(Button3:TButton)

Przycisk uruchamiania procedury

rysowania w programie CAD

(Button1:TButton)

Rysunek 5.1. Formatka programu PolSpaw

¨ obramowania grup

,

¨ ramkę

,

¨ etykiety tekstowe

,

¨ ilustrację

,

¨ dialog zapisu

,

¨ przyciski bez ikon

.

Opracowano także wymienione niżej moduły:

¨ OznaczFrm do obsługi formatki i interaktywnego ustawiania właściwości spoiny,

background image

Rozdział 5.

K

Aplikacje dla mechaników

141

¨ SpoinaSpaw do przechowywania ustawień spoiny i aktualizacji podglądu oznaczenia

na formatce,

¨ RysSpoina do zgromadzenia procedur rysowania oznaczenia spoiny w programach

CAD.

Komponentom zgromadzonym na formatce programu

PolSpaw nadano odpowiednie

ustawienia. Tabela 5.1 zawiera zestawienie tych ustawień, które są różne od ustawień
domyślnych komponentów.

Tabela 5.1.
Ustawienia komponentów programu PolSpaw

Właściwości

Zdarzenia

Obiekt

Nazwa

Wartość

Nazwa

Metoda

Caption

Oznaczenie spoiny

OnCreate

FormCreate

BorderStyle

bsSingle

OnDestroy

FormDestroy

biMaximize

False

Form1

Autosize

False

Panel1

BevelOuter

byLowered

Image1

Align

alClient

Label1

Caption

Wymiar
charakterystyczny
przekroju
poprzecznego spoiny

Label2

Caption

Wymiar
charakterystyczny
przekroju wzdłużnego
spoiny

Label3

Caption

Nr pozycji

Label4

Caption

Metoda spawania

Text

OnChange

Edit1Change

Edit1

MaxLength

3

Text

OnChange

Edit2Change

Edit2

MaxLength

5

Edit3

Text

0

Associate

Edit3

OnChange

Edit3Change

UpDown1

Max

999

Button1

Caption

Rysuj

OnClick

Button1Click

Button2

Caption

Zakończ

OnClick

Button2Click

background image

142

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

Tabela 5.1.
Ustawienia komponentów programu PolSpaw — ciąg dalszy

Właściwości

Zdarzenia

Obiekt

Nazwa

Wartość

Nazwa

Metoda

Button3

Caption

Zapisz WMF

OnClick

Button3Click

CheckBox1

Caption

Dookólna

CheckBox2

Caption

W montażu

Text

OnChange

Edit3Change

ComboBox1

Style

csDropDownList

GroupBox1

Caption

Znaki dodatkowe

GroupBox2

Caption

Rodzaj spoiny

Caption

Linia identyfikacyjna

OnClick

RadioGroup1Click

Items.Strings

powyżej linii odn.

poniżej linii odn.

RadioGroup1

ItemIndex

0

Caption

Położenie znaku

OnClick

RadioGroup2Click

Items.Strings

powyżej linii odn.

poniżej linii odn.

RadioGroup2

ItemIndex

0

Caption

Kształt lica

OnClick

RadioGroup3Click

Items.Strings

brak

płaska

wklęsła

wypukła

usunięcie nadlewu

usunięcie karbów

RadioGroup3

ItemIndex

0

Caption

Znaki dodatkowe

OnClick

RadioGroup4Click

Items.Strings

brak

pełny przetop

podkładka

RadioGroup4

ItemIndex

0

background image

Rozdział 5.

K

Aplikacje dla mechaników

143

Tabela 5.1.
Ustawienia komponentów programu PolSpaw — ciąg dalszy

Właściwości

Zdarzenia

Obiekt

Nazwa

Wartość

Nazwa

Metoda

Caption

Wybierz program

OnClick

RadioGroup5Click

Items.Strings

AutoCAD

interCAD

RadioGroup5

ItemIndex

0

DefaultExt

wmf

SaveDialog1

Filter

*.wmf|*.wmf

Hint

Spoina brzeżna —
przetop całkowity

OnClick

SpeedButton1Click

SpeedButton1

GroupIndex

1

Hint

Spoina brzeżna —
przetop częściowy

OnClick

SpeedButton1Click

SpeedButton2

GroupIndex

1

Hint

Spoina I

OnClick

SpeedButton1Click

SpeedButton3

GroupIndex

1

Hint

Spoina grzbietowa

OnClick

SpeedButton1Click

SpeedButton4

GroupIndex

1

Hint

Spoina V

OnClick

SpeedButton1Click

SpeedButton5

GroupIndex

1

Hint

Spoina 1/2 V

OnClick

SpeedButton1Click

SpeedButton6

GroupIndex

1

Hint

Spoina Y

OnClick

SpeedButton1Click

SpeedButton7

GroupIndex

1

Hint

Spoina 1/2 Y

OnClick

SpeedButton1Click

SpeedButton8

GroupIndex

1

Hint

Spoina U

OnClick

SpeedButton1Click

SpeedButton9

GroupIndex

1

Hint

Spoina 1/2 U (J)

OnClick

SpeedButton1Click

SpeedButton10

GroupIndex

1

background image

144

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

Tabela 5.1.
Ustawienia komponentów programu PolSpaw — ciąg dalszy

Właściwości

Zdarzenia

Obiekt

Nazwa

Wartość

Nazwa

Metoda

Hint

Spoina pachwinowa

OnClick

SpeedButton1Click

SpeedButton11

GroupIndex

1

Hint

Spoina otworowa
podłużna

OnClick

SpeedButton1Click

SpeedButton12

GroupIndex

1

Hint

Spoina otworowa
okrągła

OnClick

SpeedButton1Click

SpeedButton13

GroupIndex

1

Hint

Bezotworowa
punktowa

OnClick

SpeedButton1Click

SpeedButton14

GroupIndex

1

Hint

Bezotworowa liniowa

OnClick

SpeedButton1Click

SpeedButton15

GroupIndex

1

Obsługa elementów formatki umieszczona jest w module

OznaczFrm.

!"#

!

$%#&'()*+*%)'

,-&.,/

"#-0,"#

"#10,"#

#" -0,#"

2" -0,2"

2" 10,2"

*-0,*

+-0,+

!#-0,!#

34-0,34

-0,

3410,34

10,

!#10,!#

"#50,"#

6-0,6

4" -0,4"

3450,34

3470,34

background image

Rozdział 5.

K

Aplikacje dla mechaników

145

50,

-0,

!#50,!#

!#70,!#

#" 10,#"

"#-0,"#

"#10,"#

"#50,"#

"#70,"#

"#80,"#

"#90,"#

"#:0,"#

"#;0,"#

"#<0,"#

"#-=0,"#

"#--0,"#

"#-10,"#

"#-50,"#

"#-70,"#

"#-80,"#

"#12.0,4>/

2" -2.0,4>/

2" 12.0,4>/

.0,4>/

!#-2.0,4>/

-.0,4>/

1.0,4>/

!#12.0,4>/

5.0,4>/

"#52.0,4>/

!#72.0,4>/

!#52.0,4>/

"#-2.0,4>/

"#-2.0,4>/

.0,4>/

-0,-

0,

!0,!

*?#?

,-@"#12.0,4>/

?@,

,-@2" -2.0,4>/

!"!#!$%&

@20&2" -@2

,-@2" 12.0,4>/

!"!#!&

@#0&2" 1@2

,-@.0,4>/

0&,@&%&"'

@0&+-@"

@A0&+-@A

background image

146

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

@!0&+-@6

4" -@+@3.'@'/%

"&

!0&,!@

!@!%0&A%BC!!$,C!

!@%.$%#,#/

..!@!.''//,"#/@0&,#

"#-@2..!@!.''//

,"#/

"#-@0&,#

"#-@2."#-/

!@

-@, 0&''1@, 0&''!$

-@.-/1@.-/

,-@!#-2.0,4>/

%(&&

!#-@++ &=

@3+0&,#

@3+0&

,-@-.0,4>/

)

@D*0&-@,

,-@1.0,4>/

)

@D0&1@,

,-@!#12.0,4>/

!#1@++ &=

@D20&,#

@D20&

,-@5.0,4>/

!%&*%

.,+.5@, /E=/.4" -@, FE''/

@!0&,#

@!0&

@$*0&,+.5@, /

@,0&.4" -@, -*.''4" -@, /G-/

,-@"#52.0,4>/

"%%(

6-@ #

@6,.6-@$/

,-@!#72.0,4>/

%

background image

Rozdział 5.

K

Aplikacje dla mechaników

147

@D0&!#7@++

,-@!#52.0,4>/

$

@D0&!#5@++

,-@"#-2.0,4>/

&! +,

!0&,?@

?@

.$H+.?//!!

!@!#>

!@

?@!

,-@"#-2.0,4>/

&)

&"#-@D20&-

&"#1@D20&1

&"#5@D20&5

&"#7@D20&7

&"#8@D20&8

&"#9@D20&9

&"#:@D20&:

&"#;@D20&;

&"#<@D20&<

&"#-=@D20&-=

&"#--@D20&--

&"#-1@D20&-1

&"#-5@D20&-5

&"#-7@D20&-7

&"#-8@D20&-8

@!4("%

,-@.0,4>/

0+

%

!0&,!@

!@!%0&A%BC!!$,C!

!@%.$%#,#/

0&=

%)

F#

IJ,"#

.IJ,"#/@

!@.''IJ@$/

0&#

+./

!@

@

background image

148

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

% "

#. *.?@ $//

@

Ustawienia uproszczonego symbolu spoiny przechowywane są w polach klasy

zdefiniowanej w module

SpoinySpaw. Klasa

zawiera również metody automa-

tycznego rysowania podglądu symbolu spoiny. Sekcja

!

modułu

SpoinySpaw

przedstawia się następująco:

(&%-'*&!&

&!&&!"%

"&

,&.,(/

(0,(6

30,

"0,

D20+

20"

#0"

== 3+ D, D2D20+

*0+

3+0"

D*0

D0

!0"

D20"

=D2#0+

$*0+

,0

D0+

D0+

"%"

!D2

!2

!#

!!

!3+

!D

!$*,

!D

!D

))

D2.H#0+/

2.H#0"/

#.H#0"/

*.H#0+/

3+.H#0"/

D*.H#0/

D.H#0/

!.H#0"/

background image

Rozdział 5.

K

Aplikacje dla mechaników

149

D2.H#0"/

=D2#.H#0+/

$*.H#0+/

,.H#0/

D.H#0+/

D.H#0+/

?!. 2220#4/

*>D2

!0,6

D20+D2D2

20"22

#0"##

D0+DD

!0"!!

*0+**

D20"D2D2

=D2#0+=D2#=D2#

3+0"3+3+

D*0D*D*

D0DD

$*0+$*$*

,0,,

D0+DD

!4(

@@@

@

Procedury rysowania symbolu spoiny w programie AutoCAD zgromadzone są w klasie

"

zdefiniowanej w module

RysSpoina.

!

"%% $,+,

%."%%*

$+,*(&/01,

*?#??3

2%-+,'"% *+,

,?&

== ==3+D2=D2#,* D

D2%0#4

*%%+%D20+

?4>03H

*

!4?

!2?

!D2?

!D2?

!D2?

background image

150

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

!#>

!0,?

$&'3'

,?@"!

*0&10&G-0&5@83+0&-K5L

D20& D0&1LM=@:-LL3.@D*/

D20&3+

@3+

%+0&-

%+0&G-

@D2

%D20&-

%D20&G-

%(&**

@D2&@3+

=D2#0&%D2L.3+M=@-L/

D20&=

=D2#0&%D2L=@-L"%%!

D20&%+L3+

*%

.@,FE''/.@$*E=/

,0&G*0&

,0&=*0&=

!

*D?&)%!!

D>

(#>

>,3

&

3+>.$/&)%"

?@3@?.$/

&

?20&?@3@+.$/

?@?630&?2

?@?63@0&!

,?@

background image

Rozdział 5.

K

Aplikacje dla mechaników

151

"3

H+.?/

*&)%!,+,"!

,?@*

"%3$"%

=E =$

%0&- D0& D

$%

%0&G- D0&%L.G D/

D20&%D2LD2

!%&!&

%0&.. =G =/KN.N. =G =/MN.=G=///

=E=45.

%0&1L*G%

,?@!#>

&%

!4?

,?@!4?

2*20H

"%

$!( ).$

0&7LML.3.@D*/M3.@D//

D0&1LML3.@D*/

2*20&H?.I=1J6#4/"$

2*20&?@@*.'2OPOP2'/

=0&2*2I=J=0&2*2I-J

2*20&?@@*.'2OPOQP24#'/

=0&2*2I=J=0&2*2I-J

*

?@?3.1. ==/1. ==//

!2?

?@?3.1. ==/1. =M%L=//$

%(&

?4>0&?@?3.1. =M%L-K1L=M%+L3+/

1. =M%L=M%+L3+//

?4>@3,0&'A+$'

!D2?

%D2E=$!

?@?, .@D*1. =M DGL

.3.@D*/M-@8/=M-@-L=D2#//

?@?, .@D1. =M DM1L=M-@-L=D2#//

$!

?@?, .@D*1. =M DGL

.3.@D*/M-@8/=M-@-L=D2#G//

?@?, .@D1. =M DML

.3.@D*/G-@8/=M-@-L=D2#G//

!D2?%

!D2?%

background image

152

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

@2$%

?@?.1. ==/-K5L/

@#*!

?@?3.1. ==/1. ==M1L//

?@?3.1. ==M1L/1. =G%LL.*K-1/

=M1LGL.*K9///

?@?3.1. ==M/1. =G%LL.*K-1/

=M1LGL.*K9///

%%

.@,FE''/.@$*E=/

?@?3.1. =M%L=/1. =M%L

.ML.*K7//=ML.*K7///

?@?3.1. =M%L=/1. =M%L

.ML.*K7//=GL.*K7///

%E=*%

.@,FE''/

?@?, .@,1. =M%L.M/=M,GK1//

@$*E=&

?@?, .+,.@$*/1. =M%L.M/

=M*G/-@7L/

.@,FE''/

?@?, .@,1. =M%L

.ML3.@,//=M,GK1//

@$*E=&

?@?, .+,.@$*/1. =M%L

.MML3.+,.@$*///=M*G/-@7L/

?@!

.'*2#2#P'M

R-5M'2QP#SPT3'MR-5M

R-5M'#OQU@'I4%J=/

,?@!2?

"%

?@?3.1. ==/1. =MK.*K17/L

.%M*K17/=MK.*K17/L.%M*K17///

?@?3.1. ==/1. =MK.*K17/L

.%G*K17/=MK.*K17/L.%G*K17///

?@?3.1. =MK.*K17/L.%M*K17/

=MK.*K17/L.%M*K17//1. =MK.*K17/L

.%G*K17/=MK.*K17/L.%G*K17///

,?@!D2?

&

D2+

67&%

?@?.1. =M DGK7=MD2M=D2#/

1. =M DGK7=M=D2#//

?@?.1. =M DMK7=MD2M=D2#/

1. =M DMK7=M=D2#//

D2*

background image

Rozdział 5.

K

Aplikacje dla mechaników

153

&

?@?.1. =M DG=M=D2#/

1. =M DG=M=D2#MD2//

?@?.1. =M DG=M=D2#MD2/

1. =M DM=M=D2#MD2//

?@?.1. =M DM=M=D2#/1. =M DM=M=D2#MD2//

?@?.1. =M DG=M=D2#/1. =M DM=M=D2#//

@D2

-04'"

?@?.1. =M DG=@1L=MD2M=D2#/

1. =M DG=@1L=M=@8LD2M=D2#//

?@?.1. =M DM=@1L=MD2M=D2#/

1. =M DM=@1L=M=@8LD2M=D2#//

@D2%)

?@??.1. =M DG=@:L=M=D2#M=@8LD2/

=@8L5K1L*1L*/

?@??.1. =M DM=@:L=M=D2#M=@8LD2/

=@8L*5K1L*/

?@??.1. =M DG=@:L=M=D2#M=@8LD2/

=@8L=*K1/

?@??.1. =M DM=@:L=M=D2#M=@8LD2/

=@8L*K1*/

10D2+'").

50D2+'6

70D2+' "

804'8

?@?.1. =M DGKN.5/=MD2M=D2#/

1. =M D=M=D2#//

?@?.1. =M D=M=D2#/

1. =M DMKN.5/=MD2M=D2#//

904'9:8

?@?3.1. =M DGK1=MD2M=D2#/

1. =M DGK1=M=D2#//

?@?3.1. =M DGK1=M=D2#/

1. =M DGK1ML.*K7/=MD2M=D2#//

:04';

?@?3.1. =M D=M-K5LD2M=D2#/

1. =M D=M=D2#//

?@?3.1. =M DGN.5/=MD2M=D2#/

1. =M D=M=D2#M-K5LD2//

?@?3.1. =M D=M=D2#M-K5LD2/

1. =M DMKN.5/=MD2M=D2#//

;04'9:;

?@?3.1. =M DGK1=MD2M=D2#/

1. =M DGK1=M=D2#//

?@?3.1. =M DGK1=M=D2#M-K5LD2/

1. =M DGK1ML.*K7/=MD2M=D2#//

<04'<

background image

154

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

?@?3.1. =M D=M-K7LD2M=D2#/

1. =M D=M=D2#//

@D2

?@??.1. =M D=MD2M=D2#/5K7L*1L*/

?@??.1. =M D=MD2M=D2#/5K7L=*/

-=04'9:<

?@?3.1. =M DG5K;L=MD2M=D2#/

1. =M DG5K;L=M=D2#//

@D2

?@??.1. =M DG5K;L=MD2M=D2#/

5K7L5K1L*1L*/

?@??.1. =M DG5K;L=MD2M=D2#/

5K7L=*K1/

--04'*

?@?3.1. =M DGK1=MD2M=D2#/

1. =M DGK1=M=D2#//

?@?3.1. =M DGK1=M=D2#/

1. =M DMK1=M=D2#//

?@?3.1. =M DMK1=M=D2#/

1. =M DGK1=MD2M=D2#//

-10D2*'

-50D2*'!

-70'"

?@?.1. =M D=MD2K1M=D2#/K1/

-804'"%

?@?3.1. =M DG5K7L=M7K9LD2M=D2#/

1. =M DM5K7L=M7K9LD2M=D2#//

?@?3.1. =M DG5K7L=M1K9LD2M=D2#/

1. =M DM5K7L=M1K9LD2M=D2#//

?@?.1. =M D=MD2K1M=D2#/K1/

,?@!D2?

%

@D

=0"

-0

?@?3.1. =M DGL.*K9/=MD2/

1. =M DML.*K9/=MD2//

@D2

?@??.1. =M D=MD2MD2K1/:K9L*--K9L*/

?@??.1. =M D=MD2MD2K1/*K98K9L*/

10

?@?3.1. =M DGK1=MD2/

1. =M DMK1=MD2//

?@?3.1. =M DMK1=MD2/

1. =M DMK1=MD2GD2K1//

?@?3.1. =M DMK1=MD2GD2K1/

1. =M DGK1=MD2GD2K1//

?@?3.1. =M DGK1=MD2GD2K1/

background image

Rozdział 5.

K

Aplikacje dla mechaników

155

1. =M DGK1=MD2//

,?@!D2?

$

@D2FE--%**

@D

=0"

-04

?@?3.1. =M DGK1=M=D2#M-@1LD2/

1. =M DMK1=M=D2#M-@1LD2//

104%

@D2

?@??.1. =M D=M=D2#M:K7LD2/K18K7L*:K7L*/

?@??.1. =M D=M=D2#M:K7LD2/K1*K75K7L*/

504

@D2

?@??.1. =M D=M=D2#M5K7LD2/K1*K75K7L*/

?@??.1. =M D=M=D2#M5K7LD2/K1

8K7L*:K7L*/

704%$*!"

?@?3.1. =M DGK1=M=D2#M8K7LD2/

1. =M DMK1=M=D2#M8K7LD2//

?@?.1. =M D=M=D2#M8K7LD2MD2K7/K7/

8043"$==

?@?3.1. =M D=M=D2#M<K7LD2/

1. =M D=M=D2#M9K7LD2//

@D2

?@??.1. =M DM-K7L=M=D2#M9K7LD2/K7*1L*/

?@??.1. =M DG-K7L=M=D2#M9K7LD2/K7*1L*/

?@??.1. =M DM-K7L=M=D2#M9K7LD2/K7=*/

?@??.1. =M DG-K7L=M=D2#M9K7LD2/K7=*/

%*& &

@D

=0"

-04

?@?3.1. =M DG.K1GK1L.*K7//=M=D2#

M5K1LD2L.*K7//1. =M DG.K1G5K1LL.*K7//

=M=D2#MD2K1L.*K7///

104%

@D2

?@??.1. =M DGK1M5K1LL.*K7/

=M=D2#M5K1LD2L.*K7//K1*5K1L*/

?@??.1. =M DGK1M5K1LL.*K7/

background image

156

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

=M=D2#M5K1LD2L.*K7//K1*K1*/

504

@D2

?@??.1. =M DGK1MK1L.*K7/

=M=D2#MD2K1L.*K7//K1=*K1/

?@??.1. =M DGK1M-K1LL.*K7/

=M=D2#M-K1LD2L.*K7//K15K1L*1L*/

704%$*!"

?@?3.1. =M DG.K1GK1L.*K7//

=M=D2#M5K1LD2L.*K7//1. =M DG

.K1G5K1LL.*K7//=M=D2#MD2K1L.*K7///

?@?.1. =M DGK1M8K7LL.*K7/

=M=D2#M8K7LD2L.*K7//K7/

8043"$

?@?3.1. =M DG.K1G1LL.*K7//

=M=D2#M1LD2L.*K7//1. =M DG

.K1G8K7LL.*K7//=M=D2#M8K7LD2L.*K7///

@D2

?@??.1. =M DGK1ML.*K7/

=M=D2#M5K1LD2L.*K7//K75K7L*:K7L*/

?@??.1. =M DGK1M5K1LL.*K7/

=M=D2#MD2L.*K7//K75K7L*:K7L*/

?@??.1. =M DGK1ML.*K7/

=M=D2#M5K1LD2L.*K7//K7*K78K7L*/

?@??.1. =M DGK1M5K1LL.*K7/

=M=D2#MD2L.*K7//K7*K78K7L*/

@

Rysunek 5.2.
Okno programu
PolSpaw przy pracy
w programie AutoCAD

background image

Rozdział 5.

K

Aplikacje dla mechaników

157

Elementy połączeń śrubowych

Przy projektowaniu urządzeń często stosuje się połączenia gwintowe. Istnieje wiele ich
odmian przystosowanych do różnych zastosowań. Korzystna jest automatyzacja wyko-
nywania rysunków i doboru tych elementów. Mając na uwadze określoną firmę czy też
projektowanie konkretnych urządzeń, można programowo przygotować selekcję ele-
mentów, preferując ich unifikację. Przedstawiony w tym punkcie przykład dotyczy au-
tomatycznego generowania rysunków elementów połączeń śrubowych wraz z atrybu-
tami przechowującymi informacje o ich oznaczeniach.

Przy budowie programu

PolaczGwint do opisu elementów połączeń śrubowych zasto-

sowano podejście obiektowe z wykorzystaniem

dziedziczenia i metod abstrakcyjnych.

Dzięki tym technologiom uzyskano większe możliwości programu w zakresie komple-
tacji połączenia.

Przedstawiony przykład dotyczy elementów połączeń śrubowych, takich jak:

¨ śruby z łbem sześciokątnym z gwintem na całej długości lub częściowym opisanych

w normach [33], [32],

¨ śruby z łbem walcowym opisane w normie [34],
¨ nakrętki zwykłe i zmniejszone opisane w normach [35], [36],
¨ podkładki okrągłe zgrubne i dokładne opisane w normach [38], [39],
¨ podkładki sprężyste zwykłe i lekkie opisane w normach [40], [41],
¨ gwinty zewnętrzne i wewnętrzne opisane w normie [37].

Przedstawiony program może być rozszerzany o inne elementy i modyfikowany do współ-
pracy z różnymi programami CAD.

Program do połączeń śrubowych nazwano

PolaczGwint i zbudowano go z następujących

modułów:

PGwintFrm, RysSruby, RysNakr, RysGwint, RysPodkl, które opracowano do

rysowania danego typu elementu.

Formatkę programu

PolaczGwint przedstawiono na rysunku 5.3. Umieszczono na niej

komponent

, w którym zdefiniowano odpowiednio cztery zakładki dla wy-

różnienia grup elementów. Rysunek 5.3 przedstawia zakładkę dla elementów typu śruba
i zgromadzone odpowiednie komponenty, jak

,

, itp., służące do wy-

selekcjonowania elementu o określonych wymiarach. Dla pozostałych elementów przy-
gotowano analogiczne zakładki i umieszczono na nich odpowiednie komponenty.

W dolnej części formatki poza obszarem komponentu

umieszczono kom-

ponenty

oraz

,

i

wspólne dla wszystkich zakładek,

pozwalające na wybór sposobu rysowania elementu.

Wymiary i inne dane elementów zgromadzono w plikach relacyjnych baz danych z roz-
szerzeniem

db (Paradox), natomiast dostęp do tych danych zrealizowano za pomocą ję-

zyka SQL obsługiwanego przez komponent

#$

.

background image

158

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

Wybór widoku elementu

(RadioGroup1:TRadioGroup)

Etykieta wyboru

powłoki

(Label3:TLabel)

Rysowanie osi

(CheckBox1:TCheckBox)

Okno wyboru powłoki

(ComboBox2:TComboBox)

Rysowanie

wskazanego elementu

(Button1:TButton)

Element pobierający

dane

o elemencie z tabeli

BD (Query2:TQuery)

Element pobierający dane

o elemencie z tabeli BD

(Query1:TQuery)

Element pośredniczący

w przekazywaniu danych

(DataSource1:TDataSource)

Okno wyświetlania

rysunku elementu

(Image1:TImage)

Formatka

(Form1:TForm)

Panel, obramowanie rysunku

(Panel1:TPanel)

Karty z zakładkami

(PageControl1:

TPageControl)

Tabela z nazwami elementów

(DBTable1:TDBTable)

Etykieta tabeli

(Label1:TLabel)

Grupa przycisków radiowych

wyboru rodzaju gwintu

(RadioGroup2:TRadioGroup)

Grupa przycisków

rad. wyboru elementu

(RadioGroup3:

TRadioGroup)

Etykieta wyboru długości

(Label2:TLabel)

Okno wyboru

długości

(ComboBox1:

TComboBox)

Etykieta wyboru

wytrzymałości

(Label4:TLabel)

Okno wyboru

wytrzymałości

(ComboBox3:

TComboBox)

Wybór klasy dokładności

(RadioGroup4:TRadioGroup)

Rysunek 5.3.

Formatka programu PolaczGwint

Tabela 5.2.
Ustawienia komponentów umieszczonych na zakładce Śruby formatki programu PolaczGwint

Właściwości

Zdarzenia

Obiekt

Nazwa

Wartość

Nazwa

Metoda

Button2

Caption

&Zakończ

OnClick

Button2Click

CheckBox1

Caption

&Rysuj osie

ComboBox1

ComboBox2

Text

Items.Strings

Fe-Zn

Fe-Cd

Fe-Fg

Fe-Ox

ComboBox3

Caption

Widok

Items.Strings

z &góry

z &boku

RadioGroup1

ItemIndex

0

background image

Rozdział 5.

K

Aplikacje dla mechaników

159

Tabela 5.2.
Ustawienia komponentów umieszczonych na zakładce Śruby formatki programu PolaczGwint
— ciąg dalszy

Właściwości

Zdarzenia

Obiekt

Nazwa

Wartość

Nazwa

Metoda

Caption

Rodzaj gwintu

OnClick

RadioGroup3Click

Items.Strings

&zwykły

&drobnozwojowy

RadioGroup2

ItemIndex

0

Caption

Rodzaj śruby

OnClick

RadioGroup4Click

Items.Strings

Łeb
&sześciokątny

&Cała
gwintowana

Łeb &walcowy

RadioGroup3

ItemIndex

0

Caption

Klasa dokł.

OnClick

RadioGroup5Click

Items.Strings

I

II

III

ItemIndex

0

RadioGroup4

Columns

3

Columns[0].FieldName

Nazwa

OnClick

DBGrid1CellClick

DataSource

DataSource1

dgEditing

False

DBGrid1

dgColumn- Resize

False

Query1

Query2

DataSource1

DataSet

Query1

Obsługę formatki programu

PolaczGwint i dostęp do zgromadzonych danych zrealizo-

wano w module

PGwintFrm. Procedury do wykonywania rysunków śrub, nakrętek,

gwintów i podkładek umieszczono odpowiednio w modułach:

RysSruby, RysNakr,

RysGwint i RysPodkl. Przedstawione zostaną przykładowe moduły PolaczGwint i Rys
Sruby. Moduły dotyczące rysowania pozostałych elementów zbudowano podobnie jak
moduł

RysSruby; dostępne są one na płycie CD załączonej do książki.

background image

160

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

Kod modułu

PGwintFrm:

*

"4",4 !

!#4!*2!$2!

$%#&'()*+*%)'

,-&.,/

2" -0,2"

!#-=0,!#

3450,34

4" 10,4"

!#--0,!#

!#-10,!#

!#-50,!#

+-0,+

*-0,*

*10,*

+10,+

*50,*

+50,+

*70,*

+70,+

!#<2.0,4>/

!#82.0,4>/

!#-12.0,4>/

"52.#0,#/

!#-52.0,4>/

"12.#0,#/

.0,4>/

*-0,*

,4-0,,4

,410,,4

,450,,4

,470,,4

#-0,#

V#-0,V#

V#10,V#

"-0,"

"#-0,"#

!#10,!#

!#-0,!#

"10,"

34-0,34

"50,"

"70,"

!#50,!#

3410,34

4" -0,4"

3470,34

4" 50,4"

3490,34

!#<0,!#

background image

Rozdział 5.

K

Aplikacje dla mechaników

161

!#90,!#

!#80,!#

4" 90,4"

34;0,34

34-=0,34

4" ;0,4"

!#:0,!#

!#;0,!#

34--0,34

34-10,34

!#70,!#

*-.0,4>/

!#12.0,4>/

.0,4>/

!#:2.0,4>/

!#92.0,4>/

!#;2.0,4>/

!#52.0,4>/

"-2.#0,#/

!#72.0,4>/

"#-2.0,4>/

#!0%

#!*0% "

#!

!;1-=-)"

!;1-=8

!;15=1

!;1-77

!;1-98

!=1=-5

!D=1=-5

!;1==8

!;1==9

!;1==;

-0,-

$,4#0

!0,!

,.0/0#4&3*$%"

(&&%"*%"

>%"?@A%"B

*.'.'/FE=

0&.*.'.'/M-*.'/'/G1/

!#0&,./

..'%>PW#XPS@'IJ//

!#0&=

,-@#!

background image

162

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

.V#-@?6/.V#-@"$.'$'/@?FE''/

#!0&V#-@"$.'$'/@?

*.' '#!/FE=& %

#!*0&.#!-*.' '#!/G-/9:C9D

#!*0&#!9:

.*.' '#!/FE=/.*.'.'#!/FE=/

#!*0&#!*M'/'%)%*

,-@.0,4>/

%$

&"

!0&,!@

!@!%0&A%BC!!$,C!

!@%.$%#,#/

!#-@++ 0&!@!+.''/

!#-@++ 0&="

!@

#!0&'-=' )%" 9E

*-@.-/

,-@*-.0,4>/

%&"&!

V#-@?60&

V#-@V3@&!*3

V#-@V3@?.'L('M$,4/

*-@?6*@,4+

=0!#5@2.*-/

-0!#8@2.*-/

10!#9@2.*-/

50!#:@2.*-/

!"% $

*-@?6*@,4+ &1

4" 1@40&

4" 1@40&,#

,-@!#92.0,4>/

!#<@++ 0&!#9@++

!#1@++ 0&!#9@++

V#-@4!)%$

V#-@?60&

!#9@++ &=%)'F0

V#-@V3I=J0&.'L(XX2X'

I'Y")C=1=-5Y''$''YX XY'J/

background image

Rozdział 5.

K

Aplikacje dla mechaników

163

V#-@V3I=J0&.'L(XX2X'

I'Y")C=1=-5Y''$''YX XY'J/

V#-@?60&,#

V#-@3.'$'#!IJ/&&

V#-@4!)%$

!#-5@2.!#9/

"5@2."5@#I=J/

,-@!#:2.0,4>/

&G

!#;@+@

!#:@++ &=

!#;@+@?.'ZD#4'/

!#;@+@?.'Z2P'/

!#;@+@?.'ZD2P'/

!#;@+@?.'Z322'/

!#;@++ 0&=

!#;@2.!#:/

,-@!#;2.0,4>/

#!

V#-@4

V#-@?60&

! "

.!#:@++ &=/.!#;@++ &=/

!#-=@H40&

!#--@H40&

V#-@V3I=J0&'L(Y")*22DC;1==8Y'

+7@*#@3.');1==8@4'/

!

.!#:@++ &=/.!#;@++ &-/

!#-=@H40&,#

!#--@H40&,#

!#-=@++ &=%

V#-@V3I=J0&'L(Y")*22C;1==9Y'

&

V#-@V3I=J0&'L(Y")*22C;1==9Y'M

'DD#'

+7@*#@3.');1==9@4'/

!#:@++ &-

!#-=@H40&

!#--@H40&

!#;@++ &=

V#-@V3I=J0&'L(Y")*2DC;1==;Y'

V#-@V3I=J0&'L(Y")*23C;1==;Y'

background image

164

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

+7@*#@3.');1==;@4'/

V#-@?60&,#

V#-@3.'$'#!*IJ/

V#-@4

,-@!#12.0,4>/

0#4

!*&

!#<@++ 0&!#1@++

!#9@++ 0&!#1@++

V#-@4

V#-@?60&

" %%))"

!#7@++

=0

0&-@9 0&-9=

-0

0&5 0&5<

10

0&8 0&81

"%&&666%

0&8 0&81

!#1@++ &=

V#-@V3I=J0&.'L(XX2X'M

'E&XF&X'

I$,4'$''YX XY' J/

V#-@V3I=J0&.'L(XX2X'

I$,4'$''YX XY'J/

V#-@?60&,#

V#-@3.'$'#!IJ/

V#-@4

,-@!#52.0,4>/

""%% &)"

!#5@++

=0$,40&'Y")#4C;1-=-Y'

-0$,40&'Y")#4C;1-=8Y'

10$,40&'Y")#4C;15=1Y'

$)"

!#5@++

=0+-@*#@3.');1-=-@4'/

-0+-@*#@3.');1-=8@4'/

10+-@*#@3.');15=1@4'/

background image

Rozdział 5.

K

Aplikacje dla mechaników

165

!#1@2.!#5/

!#7@2.!#5/

"-@2."-@#I=J/

,-@!#<2.0,4>/

""%% &

!*&

!#1@++ 0&!#<@++

!#9@++ 0&!#<@++

V#-@4

V#-@?60&

,BH

.!#<@++ &=/..!#-1@++ &=/

.!#-1@++ &-//

V#-@V3I=J0&.'L(XX2X'

I$,4'$''YX XY'J/

,BH "&

.!#<@++ &-/..!#-1@++ &=/

.!#-1@++ &-//

V#-@V3I=J0&.'L(XX2X'

I$,4'$''YX XY'J/

+

.!#<@++ &=/.!#-1@++ &1/

V#-@V3I=J0&.'L(XX2X'M

'X#'I$,4'$''YX XY''-'J/

+ "&

.!#<@++ &-/.!#-1@++ &1/

.'$2S2#42T2'M

'2P@'/

!#<@++ 0&=

V#-@?60&,#

V#-@3.'$'#!IJ/

V#-@4

,-@!#72.0,4>/

%))"%))

!#7@++ &=

4" 5@+@

4" 5@+@, 0&.'8@98@;9@;;@;-=@<-1@<'/

!#7@++ &-

4" 5@+@

4" 5@+@, 0&.'8@98@;;@;-=@<-1@<'/

!#7@++ &1

4" 5@+@

4" 5@+@, 0&.'5@97@;8@;'/

!#1@++ &-

.'[#4#42T22P@'/

background image

166

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

!#1@++ 0&=

,4" ./@$FE'4" 5'

4" 5@, 0&4" 5@+I=J

!#1@2.!#7/

,-@"-2.#0,#/

%*%&)") )

) "%"*+"HC

&! ).%

0+

.4" 5@, FE'7@9'/.4" 5@, FE'8@9'/

.4" 5@, FE';@;'/.V#-@"$.''/@?E81/

.-@*-@?6*@,4+ &=/

4" 5@+@

4" 5@+@, 0&.'7@98@9;@;'/

.'E81#P\U07@98@9;@;'/

))"

V#1@?60&V#1@V3@

!#5@++ %)""%66

10V#1@V3@?..'#(X'M

'#F&X#E&X'

I'Y")++C##4Y'V#-@"$.'3 '/@?

V#-@"$.'3'/@?J//

%*)" 6

V#1@V3@?..'#(X'M

'#F&X#E&X'

I'Y")+C##4Y'V#-@"$.'3 '/@?

V#-@"$.'3'/@?J//

V#1@?60&,#4" -@+@V#1@

0&=V#1@!#G-

4" -@+@?.V#1@"$.'#'/@?/

V#1@$

)%)&)% )

4" -@, 0&4" -@+I!#.4" -@+@#K1/J

#!

,-@"12.#0,#/

#!

,-@!#-52.0,4>/

$ $

!#-5@++

=0+5@*#@3.')=1=-5@4'/

-0+5@*#@3.')D=1=-5@4'/

,-@"52.#0,#/

0+

background image

Rozdział 5.

K

Aplikacje dla mechaników

167

#!

V#1@?60&V#1@V3@

V#1@V3@?.'#(Y")+C##4Y'/

V#1@?60&,#4" ;@+@V#1@

0&=V#1@!#G-

4" ;@+@?.V#1@"$.'#'/@?/

V#1@$

4" ;@, 0&4" ;@+I!#.4" ;@+@#K1/J

,-@!#82.0,4>/

"$&

!#8@++

=0$,40&'Y")$2C;1-77Y'

-0$,40&'Y")$2C;1-98Y'

$7"

!#8@++

=0+1@*#@3.');1-77@4'/

-0+1@*#@3.');1-77@4'/

!#<@2.!#</

!#-1@2.!#8/

,-@!#-12.0,4>/

%%*)

!#-1@++ &1

4" 9@+@

4" 9@+@, 0&.'78'/

4" 9@+@

4" 9@+@, 0&.'89;-=-1'/

,4" ./@$FE'4" 9'

4" 9@, 0&4" 9@+I=J

!#<@2.!#-1/

,-@"#-2.0,4>/

*-@?6*@,4+ "$&%

=0)"

!#5@++ "$&)"

=0!;1-=-")!

-0!;1-=8")! & )

10!;15=1"%

-0

!#8@++ "$&

=0!;1-77)!

-0!;1-98)!&

10

!#-5@++ "$&

=0!=1=-5

-0!D=1=-5

50

background image

168

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

!#:@++ "$&

=0!

!#;@++

=0!;1==8! "

-0!;1==9!

-0!;1==;

,-@!;1-=-

40#4

!#7@++ &1

0&V#-@"$.'!C+++'/@?

0&V#-@"$.'!'/@?

,.4" -@, /F&-18

40&,.V#-@"$.'"'/@?/

,.4" -@, /F&1==

40&,.V#-@"$.'"-18'/@?/

40&,.V#-@"$.'"1=='/@?/

")

V#-

;1-=-0&,;1-=-@."$.''/@?

"$.'2'/@?"$.''/@?

,.4" -@, /4"$.'$'/@?

4" 5@, !#7@+I!#7@++ J

4" 1@, 2" -@2/

!#-@++

=0;1-=-@!

-0;1-=-@!"

;1-=-@%"

,-@!;1-=8

0#4

!#7@++ &1

0&V#-@"$.'?C+++'/@?

0&V#-@"$.'!C+++'/@?

0&V#-@"$.'?'/@?

0&V#-@"$.'!'/@?

")

V#-

;1-=80&,;1-=8@.

"$.''/@?

"$.'2'/@?"$.''/@?

,.4" -@, /"$.'$'/@?

background image

Rozdział 5.

K

Aplikacje dla mechaników

169

4" 5@, !#7@+I!#7@++ J

4" 1@, 2" -@2/

!#-@++

=0;1-=8@!

-0;1-=8@!"

;1-=8@%"

,-@!;15=1

40#4

40&,.V#-@"$.'"'/@?/

,.4" -@, /FV#-@"$.'3'/@?

40&,.4" -@, /G=@-8LV#-@"$.''/@

?GV#-@"$.'!'/@? & )

")

V#-

;15=10&,;15=1@."$.''/@?

"$.'2'/@?"$.''/@?

,.4" -@, /"$.'!'/@?

4"$.'34'/@?"$.'$'/@?

4" 5@, !#7@+I!#7@++ J

4" 1@, 2" -@2/

!#-@++

=0;15=1@!

-0;15=1@!"

;15=1@%"

,-@!;1==8

")

V#-

*;1==80&,*;1==8@."$.''/@?

"$.''/@?"$.''/@?

4" 1@, 2" -@2/

!#-@++

=0*;1==8@!

-0*;1==8@!"

*;1==8@%"

,-@!;1==9

(0#4

!#--@++ &=

0&=(0&=

background image

170

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

0&V#-@"$.' '/@?

(0&V#-@"$.''/@?

")

V#-

!#-=@++ &=

*;1==90&,*;1==9@."$.''/@?

"$.''/@?"$.''/@?

( ''4" 1@, 2" -@2/

*;1==90&,*;1==9@."$.''/@?

"$.''/@?"$.''/@?

( 'D'4" 1@, 2" -@2/

!#-@++

=0*;1==9@!

-0*;1==9@!"

%"

*;1==9@

,-@!;1==;

,#0

!#;@++ &=

,#0&'D'

,#0&''%

")

V#-

*;1==;0&,*;1==;@."$.''/@?

"$.''/@?"$.''/@?,#

4" 1@, 2" -@2/

!#-@++

=0*;1==;@!

-0*;1==;@!"

*;1==;@%"

,-@!;1-77

")

V#-

!#-1@++

,

=0$2;1-770&,$2;1-77@."$.''/@?

"$.''/@?"$.''/@?

"$.'-?"'/@?"$.'$'/@?

4" 1@, '?'4" 9@, 2" -@2/

H

-0$2;1-770&,$2;1-77@."$.''/@?

"$.''/@?"$.''/@?

background image

Rozdział 5.

K

Aplikacje dla mechaników

171

"$.'-?"'/@?"$.'$'/@?

4" 1@, '"'4" 9@, 2" -@2/

+

10$2;1-770&,$2;1-77@."$.''/@?

"$.''/@?"$.''/@?

"$.'-'/@?"$.'$'/@?

4" 1@, ''4" 9@, 2" -@2/

!#-@++

=0$2;1-77@!

-0$2;1-77@!"

$2;1-77@%"

,-@!;1-98

!;1-77

,-@!=1=-5

")

V#-

=1=-50&,@."$.''/@?,.

4" ;@, /"$.'22'/@?"$.'$'/@

?2" -@2/

!#-@++

=0=1=-5@!

-0=1=-5@!"

=1=-5@%"

,-@!D=1=-5

")

V#-

D=1=-50&,D@."$.''/@?,.

4" ;@, /"$.'22'/@?"$.'$'/@

?2" -@2/

!#-@++

=0D=1=-5@!

-0D=1=-5@!"

D=1=-5@%"

,-@.0,4>/

&

!0&,!@

!@!%0&A%BC!!$,C!

!@%.$%#,#/

!@+.''!#-@++ /

background image

172

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

!@

% "

#. *.?@ $//

@

W module

RysSruby umieszczono definicję klasy

zawierającą pola i metody

wspólne dla wszystkich obiektów opisujących elementy połączeń śrubowych użytych
w programie

PolaczGwint, dziedziczącą po nim klasę

%&

, opisującą cechy wspólne

dla śrub i wyprowadzone z niej klasy

%&'('

,

%&'()

i

%&*(&

określające odpo-

wiednio śruby z łbem sześciokątnym, śruby z łbem sześciokątnym z gwintem na całej
długości i śruby z łbem walcowym. Strukturę dziedziczenia dla obiektów elementów
połączeń gwintowych przedstawiono na rysunku 5.4.

TSr82105

(śruby z łbem

sześciokątnym i gwintem

na całej długości)

TSr82x

(śruby)

TElGwint

(pola, właściwości i metody wspólne dla wszystkich

obiektów gwintowanych)

TNakr

(nakrętki)

TPodkl

(podkładki)

TGwint

(gwinty metryczne)

TSr82101

(śruby z łbem

sześciokątnym)

TNak82144

(nakrętki sześciokątne)

TGwinWewn

(gwinty wewnętrzne)

TPod82005

(podkładki okrągłe

zgrubne)

TGwinZewn

(gwinty zewnętrzne)

TPod82006

(podkładki okrągłe

dokładne)

TSr82302

(śruby z łbem walcowym)

TPod82008

(podkładki
sprężyste)

Rysunek 5.4.

Hierarchia obiektów opisujących elementy połączeń gwintowych

Kod modułu

RysSruby przedstawia się następująco:

!#4

*?#??3

2&=@1$ )

,&

%"B%

==-1220#4

$"2#$$#*20

!#>0"

"2!(4>!("203H

4>$*20+

background image

Rozdział 5.

K

Aplikacje dla mechaników

173

.0#4***0!*0"/

!

!"

!?".0#4/

!?.0#4/

!?

!D?

!?

>

42

#$.D$0/0

"2+>.$0/0"

!?

!?"

0

0#4

.H#0/

.H#0#4/

42?

>?

0

0#4

(&%&!*)"&%*-1%G

"%*%&!*)"I-'J:9E9B-'J:9EDB-'J:4E:

,;1 &.,/

20#4

%20

$%%)"

!34?"

!,?"

!?".0#4/

.20#4*%2

**0*0"/

!?&!)" $

,;1-=-&.,;1 /)"")!

40#4

!?"

.240#4*

%20**0*0"/

!?"&!)"

,;1-=8&.,;1 /)"")!

0#4& )

!?"

.20#4*%2

**0*0"/

!?"

background image

174

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

,;15=1&.,;1 /)""%

3440#4

!?"

.2434*0#4*

%2**0*0"/

!?K&! $

!?"

;1-=-0,;1-=-

;1-=80,;1-=8

;15=10,;15=1

,@.0#4***0

!*0"/2%"&

=0&G-===0&G-==*20&-0&G-

*20&**#0&#$.*/!#>0&!*

0&0&=@1LK1L.*K7/0&

*D?&)%!!

D>(#>>,3

,;1 @.20#4*%2

**0*0"/2%"&)"

.****/

20&20&0&

0&.'[#4X XGXGXXX'I*%2

*2$$J/

,;1-=-@.240#4*

%2**0*0"/2)"")

$$0&'*$G;1-=-'

.2*%2***/

40&4

"$-'J:9ED-'J:4E:

,@"3

*

,@42?"%

?@%&

"2!(0&?@+"2.?@@*.

background image

Rozdział 5.

K

Aplikacje dla mechaników

175

'2O#2'/$"2#---=/

"2!(@)"%

?@!$

.'*2#2#P'M

R-5M'2QP#SPT3'MR-5M

R-5M'#OQU@'I4%J=/

,@>?%7

03+

0&?4#+64"

"2@??4#.5@8''1. ==/'$'/

"2@??4#.5@8''1. ==/'$!'$$/

,@!""

$H+.?/!?"

,@! $

$H+.?/!?

,@.H#0/

0&H#

,@42

42?

,;1 @!?".0#4/)%"

!#>

4>!(0&"2@?3.1. =G-@8L2=/1. =M=//

4>!(@0&?!4>!(@30&''

,;1-=-@!?")"")!7"7

$"2#0&M'C"'

"2+>.$"2#/

"20&?@"2@?.1. ==/$"2#/

!34?"

!,?"

!?"

>?

42?

"$-'J:9ED-'J:4E:

,;1-=-@!?" "7

background image

176

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

"2@?3.1. =MG4=GK1/1. =MG4=MK1//

4>!(0&"2@?3.1. =MG4=GK1M/

1. =M=GK1M//%

4>!(@0&!%"%

4>!(@.1. ==/1. =M=//

"2@?3.1. =MG4=GK1M/1.

=MG4G.K.*K9//=GK1//"

4>!(@0&!

4>!(@.1. ==/1. =M=//

,;1-=8@!?" "

"2@?3.1. =M=GK1/1. =M=MK1//

4>!(0&"2@?3.1. =M=GK1M/

1. =M=GK1M//

4>!(@0&!4>!(@.1. ==/1. =M=//

4>!(0&"2@?3.1. =M=GK1M/1.

=MG.K.*K9//=GK1//

4>!(@0&!4>!(@.1. ==/1. =M=//

,;15=1@!?"

"2@?3.1. =MG4=GK1/1. =MG4=MK1//

4>!(0&"2@?3.1. =MG4=GK1M/

1. =M=GK1M//

4>!(@0&!4>!(@.1. ==/1. =M=//

4>!(0&"2@?3.1. =MG4=GK1M/

1. =MG4G.K.*K9//=GK1//

4>!(@0&!

4>!(@.1. ==/1. =M=//

,@#$.D$0/0

>C?@AC

D$0&,.D$/

.*.'.'D$/FE=/.*.'/'D$/FE=/

!#0&.D$*.'.'D$/M-*.'/'D$/G1/

!#0&D$

,@"2+>.$0/0"

!#0&

"2!(0&

"2!(0&?@"2@+.$/$""%

!#0&,#

?@!""%

..'"2X>@'MR-5M''M

'>T42'I$J/+(I"%J=/

?@"%

,@!? $7

4>!(0&"2@??.1. ==/K1,!.58/,!.5=8//

4>!(@0&!

"2@?.1. ==/.K1/G/

background image

Rozdział 5.

K

Aplikacje dla mechaników

177

,@!D? $7

4>!(0&"2@??.1. ==/K1G,!.58/

,!.5=8//

4>!(@0&!

"2@?.1. ==/K1/

,@!?")!B $7

"2@?.1. ==/K1/!

4>!(0&"2@?3.1. =MK1=/1.

=MK1L.*K5/=MK1//@?*.91L*1. ==//)!

,;1 @!34?"")%)"7"7

"2@?3.1. ==GK1/1. ==MK1//")"

"2@?3.1. =G2=GK1/1. =G2=MK1//

"2@?3.1. =G2=GK1/1. =G2M-=GK1//#%

"2@?3.1. ==GK1/1. =G2M-=GK1//

"2@?3.1. =G2=MK1/1. =G2M-=MK1//# $

"2@?3.1. ==MK1/1. =G2M-=MK1//

)

"2@?3.1. ==GK1L.*K5//1. =G2M-=GK7//

"2@?3.1. ==MK1L.*K5//1. =G2M-=MK7//

"2@??.1. =G2M=@:8L=/=@:8L*G.-K5/

*M.-K5//

"2@??.1. =G2M1=G5K;L/1*G.=@-18LK

1/*M.=@-18LK1//

"2@??.1. =G2M1=M5K;L/1*G.=@-18LK

1/*M.=@-18LK1//

,;1 @!,?"3)""

"2@??.1. =M=GK1G/*K1*/"

"2@??.1. =M=MK1M/*5K1L*/

"2@?3.1. =M=GK1/1. =MG=GK1//

"2@?3.1. =MG=GK1/1. =M=GK1M//

"2@?3.1. =M=GK1M/1. =M=MK1G//

"2@?3.1. =M=MK1G/1. =MG=MK1//

"2@?3.1. =M=MK1/1. =MG=MK1//

"2@?3.1. =MG=GK1/1. =MG=MK1//

!?".-@1L/)

,;1 @!?

)"")!7 $7,+,

$"2#0&M'C'

"2+>.$"2#/

"20&?@"2@?.1. ==/$"2#/

!?

!?./

>?

42?

,@.H#0#4/

background image

178

AutoCAD. Automatyzacja zadań grafiki za pomocą Delphi

0&H#

0&K.*K9/

-0&=@:8LGN.N.=@:8L/GN.=@18L//

10&=@:8LL=@1:-779-

,@!?".0#4/

) "7

!#>

4>!(0&"2@?3.1. =G2L=/

1. =MM2L=//

4>!(@0&?!4>!(@30&''

,@!?.0#4/

) $7

!#>

4>!(0&"2@?3.1. =GK1G2L=/

1. =MK1M2L=//

4>!(@0&?!4>!(@30&'$,!'

4>!(@?*.1*K11. ==//

,@>

%

>?

@

Okno programu

PolaczGwint pokazano na rysunku 5.5. W oknie widać wybór śruby

M16 wraz z jej właściwościami (wykonanie, wytrzymałość, powłoka itp.). Natomiast na
rysunku 5.6 pokazano okno tego programu otrzymane po wstawieniu uprzednio wybranej
śruby i przełączeniu na zakładkę o nazwie

Nakrętki. Program automatycznie zapamiętał

ostatni wybór śruby i wyselekcjonował wstępnie do tej śruby odpowiednią nakrętkę.

Rysunek 5.5.
Okno programu
PolaczGwint podczas
wyboru )ruby

Rysunek 5.6.
Okno programu
PolaczGwint podczas
wyboru nakr*tki

background image

Rozdział 5.

K

Aplikacje dla mechaników

179

Rysunek 5.7.
Przykłady elementów
wygenerowanych
za pomocą programu
PolaczGwint w oknie
programu AutoCAD


Wyszukiwarka

Podobne podstrony:
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi a20del
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi 2
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi a20del
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi 2
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi a20del
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi a20del
AutoCAD Automatyzacja zadan grafiki za pomoca Delphi a20del
Zabezpieczenie transformatora za pomocą zespołu automatyki(1), SPRAWOZDANIA czyjeś
Badanie współczynnika lepkości za pomocą wiskozymetru Hšplera, Automatyka i Robotyka
Inteligentny dom Automatyzacja mieszkania za pomoca platformy Arduino systemu Android i zwyklego kom
Widzenie fotopowe Za pomocą czopków1, wojtek studia, Automatyka, studia 2010, Technika ośw, Technika

więcej podobnych podstron