Programele de proiectare asistata recunosc obiectele cu care lucreaza (linii, arce, etc.) prin numere stocate intr-o baza de date. AutoCAD-ul pastreaza aceste numere in liste de forma:
(( "LINE") ( "0") (6 "DASHED") (10 100.0 100.0 0.0) (11 100.0 200.0 0.0) (210 0.0 0.0 1.0))
Aceasta este o parte a unei liste asociate
unei entitati de tip "LINE", alcatuita, dupa cum se vede, din mai
multe subliste. Sirurile care apar in aceste liste sunt reprezentate in memoria
calculatorului prin coduri numerice corespunzatoare. Editarea unei entitati
presupune modificarea uneia dintre sublistele ce-i sunt asociate, sau crearea
de noi entitati pe baza sublistelor corespunzatoare entitatii selectate.
Astfel, se poate schimba culoarea unui obiect, tipul de linie sau stratul, se
pot muta obiectele selectate sau pot fi copiate, rotite, etc.
Un obiect este o entitate sau o colectie de entitati .
Pentru a modifica unul sau mai multe obiecte, acestea trebuie selectate,
operatie in urma careia se creeaza o multime de selectie (selection set),
reprezentata punctat pe ecran.
Exista in AutoCAD doua moduri de selectare, folosite de
comenzile de editare in functie de specificul lor. Un
mod de selectare este prin multimi de selectie, folosind comanda SELECT. Celalalt consta in selectarea unei singure entitati prin punctare,
adica prin indicarea unui punct de pe entitatea respectiva. Rezultatul
acestei operatii este de forma
((- <Entity name >)
(10 100.0 100.0 0.0)). -entitatea
selectata si punctul prin care s-a facut selectarea.
Vom numi acest mod de selectare ENTSEL (prin analogie cu
(entsel) din AutoLISP).
Desi exista o comanda cu acest nume, SELECT nu produce
modificari in desen decat atunci cand este folosita ca
subcomanda de catre alte comenzi de editare. Multimea de selectie dispare din
memorie odata cu crearea unei multimi noi. O multime de selectie cu viata lunga
(pana la abandonarea sesiunii curente de desenare) poate fi creata cu ajutorul
AutoLISP-ului. La apelarea comenzii SELECT apare in linia de dialog prompterul
"Select objects: ",
iar in zona de desenare un patratel selector (pickbox). Modul implicit de
selectare a unui obiect este punctarea, adica asezarea
patratelului selector pe obiectul respectiv si apasarea tastei Enter sau a
butonului corespunzator al dispozitivului de intrare (mouse). Marimea selectorului poate fi controlata prin intermediul
variabilei PICKBOX.
Celelalte optiuni sunt:
Window
Se cer doua colturi care definesc un dreptunghi. Dupa
introducerea celui de-al doilea colt, vor fi selectate entitatile complet
incluse in dreptunghi.
Crossing
Se defineste un dreptunghi, ca la Window, dar vor fi
selectate si entitatile care se intersecteaza cu laturile dreptunghiului
(crossing = intersectie).
Box
Se defineste un dreptunghi ca la Crossing daca al
doilea colt este la stanga primului colt si ca la Window daca este invers.
Auto
Creeaza automat un Box daca punctul indicat nu
selecteaza nici o entitate.
Last
Selecteaza ultima entitate desenata.
Previous
Selecteaza multimea de selectie definita anterior; aceasta optiune este utila atunci cand mai multe comenzi se aplica aceleiasi
multimi. SELECT se poate fol 626i83g osi independent de alte comenzi pentru a crea o
multime de selectie ce va fi apelata apoi prin
optiunea "Previous".
Multiple
La fiecare operatie de selectare, AutoCAD-ul scaneaza intreaga baza de date,
procedeu lent in cazul desenelor complexe. Optiunea Multiple face ca baza de
date sa fie scanata o singura data pentru toate
entitatile care vor face parte din multimea definita cu comanda SELECT
respectiva. Dupa aceasta optiune se admite un singur
mod de selectie.
Single
Selecteaza o singura entitate.
Undo
Determina efectuarea unui pas inapoi in timpul selectarii (anuleaza ultima operatie
de includere de entitati in multime).
Remove
Permite eliminarea din multime a entitatilor ce vor fi
selectate (impreuna cu Add formeaza un comutator). In continuare sunt admise
optiunile W, C si celelalte, dar entitatile selectate vor fi scoase din
multime.
Add
Dupa Remove, determina reluarea operatiilor de includere de entitati in
multime.
Enter
Determina incheierea comenzii SELECT.
Ctrl-C
Determina abandonarea comenzii; multimea de selectie este
pierduta (nu poate fi apelata cu Previous la urmatoarea selectie).
Comenzile de editare pot fi gasite
in meniul ecran (Screen menu) "Edit" sau in meniul desfasurabil
(pull-down menu) "Modify". Bineinteles, pot
fi introduse si de la tastatura.
Cu ajutorul acestei comenzi se pot obtine copii ale obiectelor deja existente in desen. In baza de date vor fi adaugate copii ale listelor corepunzatoare entitatilor copiate, avand modificate doar sublistele care contin coordonatele punctelor ce definesc entitatile respective (puncte de inserare, capetele liniilor, centrele arcelor sau cercurilor). Copierea consta in translatia punctelor din listele cu constructori 10-18 si redesenarea obiectelor copiate in functie de punctele obtinute. O translatie este definita de operatiile:
x2=x1+t1
y2=y1+t2
z2=z1+t3
t1,t2,t3 sunt componentele vectorului de translatie.
Dialogul este urmatorul:
Command: Copy lansarea comenzii COPY
Select objects: selectare (vezi comanda SELECT)
1 selected, 1 found aici AutoCAD ne spune ce a
facut
Select objects: Enter incheierea selectarii
<Base point or displacement>/ Multiple:
un punct sau "M" se introduce un punct de referinta sau
"M" pentru copiere multipla.
Second point of displacement: -un punct
punctul de pe copie corespunzator punctului de referinta; poate fi definit si
introducand distanta de la punctul de referinta.
"Base point" reprezinta punctul de referinta.
"Displacement" este distanta dintre punctul
de referinta si copia sa (deplasarea). Punctul de referinta nu este un punct din baza de date a AutoCAD-ului, deci nici
copia lui nu va fi inclusa in baza de date (sunt puncte ajutatoare). Cand
introducem doua puncte, din coordonatele lor se va
calcula distanta dintre ele, care va fi folosita pentru efectuarea translatiei.
In cazul copierii multiple (optiunea "M") se va cere din nou
punctul de baza al deplasarii (Base point:), apoi cel
de-al doilea punct. Cererea celui de-al doilea punct se va repeta pana cand la
"Second point:" se va raspunde cu
Enter.
De exemplu, pentru o linie avem lista:
(... (10 10.0 10.0 10.0) (11 10.0 20.0 10.0) ...)
Punctul de referinta:
(1.0 1.0 0.0)
Al doilea punct:
(5.0 6.0 0.0)
Vectorul t va avea componentele:
(4.0 5.0 0.0)
Noua linie va fi:
(... (10 14.0 15.0 10.0) (11 14.0 25.0 10.0) ...)
Exemplu: figura ACAD4_1.BMP.
ARRAY este o comanda de
copiere multipla. Obiectele copiate vor fi dispuse sub forma de matrice sau pe un contur circular, in functie de modul (rectangular/polar)
ales. Ca la comanda COPY, listele entitatilor create vor fi adaugate la baza de
date.
Iata dialogurile corespunzatoare celor doua
variante:
Command: Array lansarea comenzii ARRAY
Select objects: select -subcomanda SELECT
Select objects: Enter
Rectangular or polar array(R/P) R selectarea modului de lucru a comenzii ARRAY
(tablou rectangular)
Number of rows(---) <1>: 14 numarul de linii
Number of columns(///) <1>: 3 numarul de coloane
Unit cell or distance between rows (---) : -12 distanta intre linii (poate fi
si negativa; multiplicarea se va face in sensul negativ al axei Ox)
Distance between columns (///): 12 distanta intre coloane (si ea ar putea fi
negativa)
Liniile dintre paranteze indica directia orizontala
(---) sau verticala (///). Daca (la cererea "Unit cell or distance
between rows (--- ") in locul unei distante se
introduce un punct de pe ecran, atunci apare cererea:
Other corner: ,
iar deplasarea colimatorului va determina crearea unei ferestre, ce va
reprezenta celula de multiplicat.
Pentru ARRAY polar dialogul este:
Command: Array lansarea comenzii ARRAY
Select objects: select -subcomanda SELECT
Select objects: Enter
Rectangular or polar array(R/P) P selectarea modului de lucru polar
Center point of array: punct alegerea centrului conturului pe care se face
multiplicarea
Number of items: 4 numarul de celule
Angle to fill (+=ccw,-=ccw) <360>: Enter marimea
arcului de cerc pe care vor fi asezate celulele
Rotate objects as they are copied? <Y>: Y entitatile
vor fi aliniate cu conturul pe care se copiaza.
Daca sensul unghiului specificat este orar (unghi mai mic de 360 de grade), punem semnul "-" inaintea valorii unghiului (cw = "clockwise"). Rezultatul va fi copierea figurii selectate pe un contur determinat de un arc de cerc (sau un cerc).
Exemple: Array rectangular - ACAD4_2.BMP.
Array polar - ACAD4_3.BMP.
Cu comanda MOVE se pot muta entitati sau grupuri de entitati in alta zona a desenului. Nu se adauga noi liste de entitati in baza de date, se modifica doar sublistele corespunzatoare punctelor (listele de coordonate). Este similara comenzii COPY, dar obiectele initiale vor fi sterse de pe ecran; optiunea "Multiple" nu mai are sens, deci dispare.
Dialogul va fi:
Command: Move lansarea comenzii MOVE
Select objects: select -subcomanda SELECT
Select objects: Enter
Base point or displacement: punct punctul de referinta
Second point of displacement: punct al doilea punct (vezi comanda COPY)
Ca si la comanda COPY, se face o translatie, cu vectorul de translatie
definit prin introducerea celor doua puncte (sau a distantei). Exemplul de la
COPY este valabil si aici.
Obiectele desenate pot fi rotite. Prin
aceasta nu se creeaza noi entitati, ci se modifica cele existente.
Operatia efectuata este o rotatie definita prin:
x2=x1*cos(u)-y1*sin(u)
y2=x1*sin(u)+y1*cos(u) , unde u este unghiul de rotatie, x1,y1 si
x2,y2 sunt coordonatele punctului inainte si respectiv dupa rotatie.
Transformarea nu se va aplica numai punctelor
din listele 10-18, ci si unghiurilor (listele 50-58).
Dialogul:
Command: Rotate lansarea comenzii ROTATE
Select objects: select -subcomanda SELECT
Select objects: Enter
Base point: punct punctul de referinta
<Rotation angle>/Reference: 90 unghiul de rotatie in grade
Punctul de referinta este punctul in jurul caruia se rotesc obiectele selectate. Daca se alege "Reference", AutoCAD va calcula unghiul de rotatie facand diferenta dintre unghiul curent si noul unghi. Dialogul va fi:
Reference angle <val. curenta>: 45 (acesta devine unghi curent)
New angle: 20 (unghiul final).
Unghiul de rotatie va fi 45-20=25. Daca unghiul curent nu este cunoscut, se pot selecta doua puncte de pe una din entitatile ce vor fi rotite (pentru precizie se poate folosi OSNAP).
De exemplu, pentru rotirea unui arc (oglindirea unui semicerc fata de
diametru): - lista initiala:
(... (10 10.0 10.0 0.0 (50 0.0) (51 1.0)
...)
- rotatia se face cu 180 de grade, adica 1 rad.
- transformarea coordonatelor (translatia punctelor):
x2=x1*cos(u)-y1*sin(u)= -10
y2=x1*sin(u)+y1*cos(u)= -10
- lista rezultata:
(... (10 -10.0 -10.0 0.0 (50 1.0) (51 2.0)
...)
Exemplu: ACAD4_4.BMP.
Comanda SCALE se foloseste pentru a ajusta dimensiunile unui grup de obiecte. Dialogul este asemanator cu cel de la ROTATE, dar in locul unghiului de rotatie se va cere factorul de scara. Nu se creeaza noi entitati, iar la cele existente se vor modifica listele care se refera la dimensiuni, adica cele cu constructor 10-18 si 40-48. Vor fi afectate deci punctele de inserare, capetele liniilor, centrele arcelor si cercurilor, razele, inaltimea textului, scarile la care sunt reprezentate blocurile, etc.
Dialogul este:
Command: Scale lansarea comenzii SCALE
Select objects: select -subcomanda SELECT
Select objects: Enter
Base point: punct punctul de referinta
<Scale factor>/Reference: R AutoCAD va calcula
factorul de scara
Reference length<1>: distanta (numar) o distanta de referinta (lungimea
unei linii, diametrul unui cerc, etc.)
New length: numar noua lungime a liniei, noul diametru, etc.
Factorul de scara va rezulta prin compararea
celor doua distante introduse. Daca in loc de "R" s-ar fi introdus un numar, dialogul s-ar fi incheiat, nemaifiind necesara
calcularea factorului de scara.
Transformarile efectuate asupra punctelor sunt:
x2=S*x1
y2=S*y1 (S este factorul de scara, iar x1,y1 si x2,y2 sunt coordonatele
relative la punctul de referinta), iar asupra distantelor (de ex. inaltimea
textului):
d2=S*d1.
Exemplu: ACAD4_5.BMP.
Cu MIRROR se pot obtine simetricele obiectelor selectate fata de o axa de simetrie data. Transformarile sunt asemanatoare cu cele de la SCALE, dar factorii de scara pe x si y sunt diferiti. Valorile lor sunt calculate de catre AutoCAD si nu afecteaza dimensiunile obiectelor. De exemplu, in cazul simetriei dupa o axa verticala, factorul de scara pe y este 1, iar pe x -1, punctul de referinta corespunzator comenzii SCALE) fiind un punct de pe axa de simetrie.
Dialogul cu AutoCAD-ul:
Command: Mirror lansarea comenzii MIRROR
Select objects: select -subcomanda SELECT
Select objects: Enter
First point of mirror line: punct un punct de pe axa
de simetrie
Second point: punct alt punct de pe axa de simetrie
Delete old objects? <N>: Enter, N sau Y AutoCAD vrea sa
stie daca pastreaza si obiectele selectate, sau numai simetricele lor.
Exemplu: ACAD4_6.BMP
ERASE este comanda cu care se pot elimina din desen entitatile nedorite. Pentru aceasta, se selecteaza cu SELECT) entitatile ce vor fi sterse; la apasarea tastei Enter ele dispar de pe ecran.
Dialogul:
Command: Erase lansarea comenzii ERASE
Select objects: select -subcomanda SELECT
Select objects: Enter -acum se sterg obiectele selectate
Listele corespunzatoare entitatilor sterse dispar din baza de date,
dar sunt salvate intr-o stiva speciala a comenzii ERASE. La fiecare apelare a
comenzii, continutul stivei este inlocuit cu noile
entitati selectate, astfel incat vor fi retinute mereu elementele sterse cu
ultima comanda ERASE. Aceasta foloseste la corectarea
stergerilor gresite. Daca am sters din greseala niste entitati de care
mai avem nevoie, apelam comanda OOPS, si acestea reapar pe ecran.
CHANGE si CHPROP sunt comenzi care servesc la schimbarea caracteristicilor uneia sau mai multor entitati (selectate prin SELECT). CHPROP schimba proprietatile entitatilor, adica stratul, tipul de linie, culoarea, elevatia si adancimea. Sublistele modificate sunt:
(... ( "0") ( "CONTINUOUS") ( 1) (39 1.0) (10 0.0 0.0 1.0) ...)
Elevatia nu mai apare incepand cu AutoCAD Release
11, deoarece toate punctele vor avea coordonata Z. Obiectele 2D vor avea
elevatia (Z) determinata de primul punct (cod DXF 10). Astfel, o linie
2D va accepta la cererea "From point:" un punct 3D (x,y,z), iar la urmatoarele cereri ("To point:"),
numai puncte 2D (x,y), coordonata Z fiind aceeasi cu coord. Z
a primului punct.
Modificarea sublistelor de mai sus se face urmand dialogul:
Command: Chprop lansarea comenzii CHPROP
Select objects: select -subcomanda SELECT
Select objects: Enter
Change what property (Color/ Elevation/ LAyer/ LType/ Thickness)? c -schimba
culoarea
New color (red): 2 -noua culoare va fi 2 (galben)
Change what property (.../Elevation...) e -schimba elevatia (coord. Z)
New elevation (1.0): 10
Change what property (.../LAyer/...) LA -schimba stratul
New layer name <0>: 1 -noul strat este
"1"
Change what property (.../LType/...) LT -schimba tipul liniei
New linetype <CONTINUOUS>: DASHED -linie intrerupta
Change what property (.../Thikness)? t -schimba grosimea
New thickness: 0
Change what property (...)? Enter -incheierea comenzii; acum se vor observa
rezultatele modificarilor pe ecran.
Lista rezultata va fi:
(... ( "1") ( "DASHED") ( 2) (39 0.0) (10 0.0 0.0 10.0) ...)
La apelarea comenzii CHANGE, apar optiunile (dupa SELECT):
Properties/ <Change point>:
Daca raspunsul este "P", se trece
automat in comanda CHPROP, aparand prompterul:
Change what property (.....)?
Optiunea implicita este "Change
point". Se asteapta selectarea unui punct.
Coordonatele punctului introdus vor inlocui coordonatele
stocate intr-una din listele 10-18. Se pot modifica:
- capetele liniilor, poliliniilor sau arcelor;
- punctele de inserare a blocurilor sau textelor;
- razele cercurilor.
Exemplu:
- lista initiala a unei linii selectate:
(... ( "LINE") ... (10 0.0 0.0
0.0) (11 10.0 10.0 0.0) ...)
- punctul selectat:
(12.0 13.0 0.0)
- noua lista a liniei:
(... ( "LINE") ... (10 0.0 0.0
0.0) (11 12.0 13.0 0.0) ...)
sau, cu aceeasi lista initiala:
- punctul selectat:
(0.0 3.0 0.0)
- lista rezultata:
(... ( "LINE") ... (10 0.0 3.0
0.0) (11 10.0 10.0 0.0) ...)
Se observa ca se modifica cel mai apropiat capat al liniei (fata de punctul introdus).
Comanda CHANGE poate fi folosita si pentru
modificarea cercurilor, textelor, blocurilor si atributelor. Editarea
unei asemenea entitati folosind CHANGE este mai rapida
decat stergerea cu ERASE si redesenarea entitatii. Deasemenea, exista comenzi
de editare mai rapide si mai usor de utilizat decat CHANGE (cum ar fi SCALE
pentru schimbarea razei unui cerc).
Pentru a modifica o entitate, dialogul trebuie sa
inceapa astfel:
Command: Change
Select objects: Select
Select objects: Enter
Properties/ <Change point>: Enter
Daca am raspuns cu Enter la ultima cerere, se va trece la modificarea fiecarei entitati din multimea de selectie creata, in functie de tipul ei.
Modificarea cercurilor
Daca in multimea de selectie exista un cerc,
cand se ajunge cu modificarea la el apare cererea:
Enter circle radius:
Acum va trebui specificata noua raza.
Exemplu:
- cercul original:
(... ( "CIRCLE") ... (10 0.0 0.0
0.0) (40 10.0) ...)
- raza noua:
25.0
-cercul rezultat:
(... ( "CIRCLE") ... (10 0.0 0.0
0.0) (40 25.0) ...)
Atentie! Nu este vorba de crearea unei noi liste, ci de modificarea unei liste existente.
Modificarea textelor
Se pot modifica:
- punctul de inserare a textului
- stilul (fontul)
- inaltimea textului
- unghiul de rotatie
- textul propriu-zis (sirul de caractere).
Noul stil trebuie sa fi fost in prealabil definit prin comanda STYLE.
Exemplu:
- lista initiala a unui text:
(... ( "TEXT") ... (10 0.0 0.0 0.0)
( 5.0) (1 . "text
1") (50 . 0.5) (7 . "S0") ...)
In aceasta lista se vor modifica sublistele corespunzatoare caracteristicilor textului modificate prin dialogul de mai jos.
Dialogul:
Command: Change lansarea comenzii
CHANGE
Select objects: select -subcomanda SELECT - selecteaza un text
1 selected, 1 found - am selectat un text
Select objects: Enter
Properties/ <Change point>: Enter - trece in modul "change
entity"
Enter text insertion point: punct - noul punct de inserare a textului, sau
Enter pentru pastrarea punctului vechi;
Text style: S0
New style or Return for no change: Enter - Enter = pastreaza acelasi stil;
altfel se introduce numele noului stil;
New heigh <0.5>: Enter - aceeasi inaltime
New rotation angle <0>: Enter - acelasi unghi
New text <text 1>: text 2 - noul text
Noua lista a textului:
(... ( "TEXT") ... (10 0.0 0.0 0.0)
( 5.0) (1 . "text
2") (50 . 0.5) (7 . "S0") ...)
Acestea au fost principalele comenzi de editare care utilizeaza
comanda SELECT.
Urmeaza comenzile care folosesc pentru selectare ENTSEL. Comenzile TRIM si EXTEND folosesc ambele moduri de selectare, asa ca acum e
randul lor.
EXTEND determina prelungirea unei entitati (sau a mai
multor entitati, selectate pe rand, una cate una) pana la intersectarea ei cu un contur selectat anterior. Selectarea conturului se face
prin subcomanda SELECT, iar selectarea entitatilor de extins se face prin
punctare. Conturul nu trebuie sa fie neaparat inchis
(poate fi si o singura linie, sau un arc).
Aceasta comanda nu determina aparitia de noi entitati
in baza de date; se modifica doar sublistele 10, 11 sau 50, 51 pentru arce.
Nu se poate aplica blocurilor.
Exemplu de dialog:
Command: Extend - lansarea comenzii EXTEND
Select boundary edge(s)...
Select objects: select -subcomanda SELECT - selecteaza conturul pana la care
se vor extinde entitatile
3 selected, 3 found - am selectat un contur
Select objects: Enter - incheierea subcomenzii SELECT
<Select objects to extend>/ Undo: punct - selectarea prin punctare a
entitatii ce trebuie extinse (se repeta pana la apasarea tastei Enter, sau a
butonului corespunzator al mouse-ului)
<Select object to extend>/ Undo: Enter - incheierea comenzii EXTEND
Exemplu: ACAD4_7.BMP
TRIM este o comanda similara comenzii EXTEND, dar entitatile selectate se vor "tunde" dupa conturul selectat anterior. Ca si EXTEND, nu determina aparitia in baza de date a unor noi entitati, ci doar modificarea listelor entitatilor selectate (cele selectate prin punctare, pentru a fi scurtate). Apare o noua entitate numai daca se elimina o portiune din mijloc (pe langa cele doua capete originale, mai apar doua capete ale portiunii eliminate, deci rezulta patru capete, care determina doua entitati, in locul uneia), sau in locul unui cerc apare un arc.
Dialog:
Command: Trim lansarea comenzii TRIM
Select cutting edge(s)...
Select objects: select -subcomanda SELECT
selecteaza conturul de taiere
3 selected, 3 found - am selectat un contur
Select objects: Enter - incheierea subcomenzii SELECT
<Select objects to trim>/ Undo: punct - selectarea prin punctare a
entitatii ce trebuie scurtata (se repeta pana la apasarea tastei Enter)
Exemplu: ACAD4_8.BMP
Folosind comanda BREAK, se pot sterge portiuni dintr-o entitate. De asemenea, se poate "sparge" o entitate in doua, stergand o a treia parte. Se poate aplica liniilor, arcelor, cercurilor si poliliniilor. In baza de date se modifica listele corespunzatoare capetelor liniei sau arcului selectat (pentru arc se schimba unghiul de inceput si sfarsit, eventual se creeaza o entitate noua (arc sau linie); cercurile se transforma in arce, iar polilinia in doua polilinii. BREAK@ divide entitatea selectata in doua parti; nu se poate aplica cercurilor, pentru ca ar duce la transformarea cercului intr-un arc de 360 de grade (si unul de 0 grade), ceea ce nu este posibil. Pentru eliminarea unei portiuni dintr-un cerc, cele doua puncte (capetele arcului eliminat) se vor da in sens trigonometric.
Exemplu de dialog:
Command: Break lansarea comenzii BREAK
Select object: select - selecteaza o entitate de tip LINE, insotita de punctul
prin care se face selectarea
Enter second point (or F for first point): F - indica AutoCAD-ului ca urmeaza
sa fie indicate doua puncte (altfel unul din cele doua puncte ar fi fost cel
prin care s-a selectat linia)
Enter first point: punct - primul punct al portiunii eliminate
Enter second point: punct - al doilea punct (al doilea capat al segmentului
eliminat)
De exemplu, avem linia:
(... ( "LINE") ... (10 0.0 0.0
0.0) (11 10.0 0.0 0.0) ...)
Introducem:
Command: Break
Select object: 5
Enter second point (or F for first point): F
Enter first point: 2,0,0
Enter second point: 7,0,0
Command:
Lista liniei originale devine:
(... ( "LINE") ... (10 0.0 0.0
0.0) (11 2.0 0.0 0.0) ...)
si, in plus, apare o noua linie cu lista:
(... ( "LINE") ... (10 7.0 0.0
0.0) (11 10.0 0.0 0.0) ...)
Exemplu: ACAD4_9.BMP.
- lista entitatii originale:
( ... ( "CIRCLE") ( "0") (10 7.3 10.6 0.0) ( 0.96) (210 ...) ...)
- lista entitatii rezultate:
(... ( "ARC") ( "0") (10 7.3 10.6 0.0) (
0.96) (50 . 0.75) (51 . 5.97) (210 ...) ...)
Comanda OFFSET creeaza o copie a
entitatii selectate, paralela cu originalul, la distanta specificata. Pentru
linii paralele, este mai rapida decat comanda COPY.
Dialog:
Command: Offset lansarea comenzii OFFSET
Offset distance or Through <Through>: 10 - AutoCAD-ul cere distanta
dintre viitoarele entitati paralele; distanta va fi
10.0.
Select object to offset: punct - specificarea (prin punctare) entitatii ce va fi copiata (se repeta pana la apasarea tastei Enter)
Side to offset: punct - un punct oarecare din plan, situat de acea parte a
entitatii de copiat in care se va face copierea.
Select object to offset: Enter - inchiderea comenzii
Daca la cererea "Offset distance or Through"
se raspunde cu "T", entitatea nou creata va trece prin punctul
indicat la cererea "Side to offset".
In cazul copierii curbelor (polilinii, arce, cercuri,
elipse), razele se vor modifica in functie de distanta de copiere.
Iata ce se intampla in baza de date in cazul
copierii unei linii:
- linia originala:
(... ( "LINE") ... (10 0.0 0.0
0.0) (11 10.0 0.0 0.0) ...)
- distanta de copiere: 5
- partea in care se face copierea: indicata prin punctul (1.0 1.0 1.0)
- ca rezultat al aplicarii comenzii OFFSET, linia originala ramane
neschimbata si apare o linie cu lista:
(... ( "LINE") ... (10 0.0 5.0
0.0) (11 10.0 5.0 0.0) ...)
Pentru situatii mai complicate, se poate vedea efectul folosind comanda ELIST definita prin programul prezentat in sectiunea despre AutoLISP.
Exemplu: ACAD4_10.BMP.
Comanda FILLET permite racordarea a doua entitati de
tip LINE, ARC, CIRCLE sau POLYLINE. Entitatile racordate nu trebuie sa fie neaparat de acelasi tip (se poate racorda o linie cu
un cerc, de exemplu).
Racordarea consta in unirea capetelor entitatilor selectate printr-un arc
de cerc de raza specificata. Dialogul decurge astfel:
Command: Fillet lansarea comenzii FILLET
Polyline/ Radius/ <Select two objects>: R - definirea razei de racordare
Enter new radius <0.0>: 15 - noua raza este 15
Command: Enter - relansarea comenzii (raza implicita este cea introdusa
anterior)
Polyline/ Radius/ <Select two objects>: - selectarea celor doua entitati
- dupa selectarea (prin punctare) a doua entitati, se va desena arcul
Cele doua linii (sau arce, sau cercuri) vor fi scurtate sau prelungite
astfel incat sa se intalneasca cu arcul trasat.
In baza de date apare o noua entitate, de tip "ARC".
Exemple:
Racordarea dintre doua drepte printr-un arc de cerc de raza R. Centrul se
afla la intersectia paralelelor duse fata de cele doua drepte la distanta R fig. ACAD4_11.BMP.
Racordarea unei drepte cu un cerc (sau arc de cerc) -
fig. ACAD4_12.BMP.
Raza de racordare implicita este 0, ceea ce
determina unirea celor doua linii selectate (se poate folosi uneori in loc de
EXTEND si TRIM). Modificarea razei determina modificarea
valorii variabilei FILLETRAD.
Optiunea "Polyline" se foloseste pentru
racordarea tuturor componentelor unei polilinii. Daca se selecteaza doua
segmente alaturate dintr-o polilinie (fara optiunea "Polyline"), se va obtine un arc intre cele doua segmente. Optiunea
"Polyline" determina trasarea de arce intre toate segmentele
poliliniei selectate. Nu se vor racorda segmentele pentru a caror lungime raza
de racordare este prea mare.
La racordarea arcelor si cercurilor, este
posibil ca rezultatul sa nu fie cel dorit. In acest caz, se anuleaza comanda cu
Undo, si se reincearca FILLET.
Atentie! Functioneaza numai in plan. Pentru
racordari de drepte 3D situate in alt plan dacat x0y, se va
folosi comanda UCS.
CHAMFER (tesire) functioneaza ca si FILLET, dar in loc de arc, deseneaza intre cele doua linii un segment de dreapta. Se poate aplica numai liniilor si poliliniilor. Cele doua linii trebuie sa se intersecteze (nu se pot racorda sau tesi doua linii paralele). Modul in care se face tesirea este determinat de cele doua distante, corespunzatoare celor doua linii selectate (variabilele CHAMFERA si CHAMFERB). Dialogul este:
Command: Chamfer - lansarea comenzii CHAMFER
Polyline/ Distances/ <Select first line>: D - urmeaza specificarea
distantelor
Enter first chamfer distance<0.0>: 1 - distanta de la intersectie, de-a
lungul primei linii selectate
Enter second chamfer distance<0.0>: 1 - distanta de la intersectie, de-a
lungul celeilalte linii
Command: Enter - relansarea comenzii CHAMFER
Polyline/ Distances/ <Select first line>: - punctare pe una din linii -
selectarea primei linii, corespunzatoare primei distante specificate
Select second line: - punctare pe a doua linie - rezulta segmentul de tesire si
ajustarea celor doua linii in functie de acesta.
Optiunea "Polyline" determina tesirea
poliliniilor similar cu racordarea acestora (vezi comanda FILLET). Daca
ambele distante sunt 0, se obtine intersectia liniilor selectate.
Polilinia este o entitate complexa, alcatuita dintr-un sir de linii si arce. Aceste obiecte (linii si arce) vor putea fi manipulate impreuna, ca o singura entitate. Un alt avantaj al poliliniilor este faptul ca pot avea latime nenula (arcele si liniile au latime nula). PEDIT este o comanda speciala de editare a poliliniilor. Posibilitatile sale sunt urmatoarele:
- transformarea liniilor sau arcelor in polilinii
- deschiderea sau inchiderea unei polilinii
- concatenarea poliliniilor (transformarea a doua polilinii intr-una
singura)
- adaugarea de noi segmente
- schimbarea latimii poliliniei
- separarea segmentelor poliliniei
- inserarea de noi vertexuri sau stergerea unora existente
- mutarea vertexurilor
- interpolarea unei polilinii (Spline) sau transformarea ei intr-o curba
(Fit)
- anularea interpolarii (Decurve).
Comanda PEDIT poate lucra in trei moduri, in functie de polilinia
selectata: polilinie 2D (PLINE), polilinie 3D (3DPOLY), suprafete (MESH). Aici ne vom ocupa numai de poliliniile 2D.
O polilinie consta intr-o insiruire de vertexuri. Prin vertex se intelege
un punct care separa doua segmente de polilinie. Un segment este o entitate de tip "LINE" sau
"ARC". Daca este o linie, lista vertexului
(pe scurt) este:
(... ( "VERTEX") (10 10.0 10.0
0.0) ...).
Daca este vorba de un arc, mai apare lista 42:
(... ( "VERTEX") (10 10.0 10.0
0.0) ( 0.15) ...).
Continutul listei 42 este un numar care reprezinta tg(u/4),
unde u este marimea arcului, in radiani. Daca este un semicerc, lista va fi ( 1).
O polilinie completa este definita printr-o
succesiune de liste, astfel:
(... ( "POLYLINE") ...)
(... ( "VERTEX") ...)
.....
(... ( "SEQEND") ...)
Prima lista (POLYLINE) cuprinde informatii generale referitoare la polilinie, urmatoarele (VERTEX) contin coordonatele punctelor prin care trece polilinia, iar ultima (SEQEND) marcheaza sfarsitul succesiunii de liste care definesc polilinia respectiva.
Dialogul pentru editarea unei polilinii incepe asa:
Command: PEDIT
Select polyline: (selectarea unei polilinii)
Close/ Join/ Width/ Edit vertex/ Fit curve/ Spline curve/ Decurve/ Undo/
eXit<X>:
Transformarea unei linii intr-o polilinie
Daca la "Select polyline" se selecteaza o linie, raspunsul
AutoCAD-ului este
Entity selected is not a polyline. Do you want to turn it into one?
<Y>:
Daca dorim sa transformam linia selectata intr-o polilinie, apasam Enter sau "Y" si linia va fi transformata intr-o polilinie cu doua vertexuri corespunzatoare capetelor sale.
Ex:
- linia este:
(... ( "LINE") (10 0.0 0.0 0.0)
(11 10.0 10.0 0.0) ...)
- polilinia in care este transformata:
(... ( "POLYLINE") ...)
(... ( "VERTEX") (10 0.0 0.0 0.0)
...)
(... ( "VERTEX") (10 10.0 10.0
0.0) ...)
(... ( "SEQEND") ...)
La fel, se poate transforma in polilinie si un arc. Un cerc nu poate fi transformat in polilinie (pentru ca nu are capete).
Ex. pentru arc:
- arcul:
(... ( "ARC") (10 522.237 321.263 0.0) ( 162.177) (50 . 0.558) (51 . 2.747) ...)
- polilinia:
(... ( "POLYLINE") ...)
(... ( "VERTEX") (10 659.796
407.165 0.0) ( 0.609) ...)
(... ( "VERTEX") (10 377.495
383.543 0.0) ( 0.609) ...)
(... ( "SEQEND") ...)
In urma selectarii unei polilinii, apare lista optiunilor:
Close/ Join/ Width/ Edit vertex/ Fit curve/ Spline curve/ Decurve/ Undo/ eXit <X>:
Fiecare din aceste optiuni poate fi considerata o comanda de editare.
Close (Open)
Daca polilinia este inchisa, in locul optiunii CLOSE apare OPEN.
Exemplu:
Command: Pedit lansarea comenzii PEDIT
Select polyline: selectarea unei polilinii
Close/ ... / eXit <X>: C - alegerea optiunii CLOSE
Close/ ... / eXit <X>: Enter - terminarea editarii poliliniei
Acum polilinia este inchisa. Pentru deschiderea ei se procedeaza la fel, dar in loc de "Close" apare "Open". Iata ce se intampla in lista poliliniei:
- inainte de inchidere:
(... ( "POLYLINE") ... ( 0) ...)
- dupa inchidere:
(... ( "POLYLINE") ... ( 1) ...)
Join
Optiunea JOIN permite adaugarea la o polilinie a unui arc, a unei linii sau polilinii. Liniile si arcele sunt automat convertite in segmente de polilinie. O entitate adaugata unei polilinii primeste atributele acesteia.
Exemplu de dialog:
Command: Pedit lansarea comenzii PEDIT
Select polyline: selectarea unei polilinii
Close/ Join/ ... / eXit <X>: J - alegerea optiunii JOIN
Select objects: select - selectarea entitatilor de adaugat
5 segments added to polyline - AutoCAD a adaugat 5 noi segmente la
polilinia selectata
Close/ Join/ ... / eXit <X>: Enter - terminarea editarii poliliniei
In baza de date vor apare noi vertexuri, corespunzatoare segmentelor adaugate, si vor dispare liniile, arcele sau poliliniile transformate in vertexuri ale primei polilinii.
Width
Unul din avantajele utilizarii poliliniilor este
ca acestea pot avea latime variabila. Cu optiunea
"W" a comenzii PEDIT se poate schimba aceasta latime. Noua
latime va fi
Exemplu:
Command: Pedit lansarea comenzii PEDIT
Select polyline: selectarea unei polilinii
Close/ ... / Width/ ... /eXit <X>: W - alegerea optiunii WIDTH
Enter new width for all segments: 4 - latimea va fi 4
pentru toate segmentele poliliniei
Close/ Join/ ... / eXit <X>: Enter - terminarea editarii poliliniei
In baza de date, pentru fiecare vertex cu latime nenula apar sublistele 40 si 41, corespunzatoare latimii initiale si finale. Cu PEDIT WIDTH se va modifica continutul acestor subliste. Modificarea latimii pentru fiecare vertex in parte se poate face cu subcomanda "EDIT VERTEX".
Fit curve
Optiuni FIT transforma polilinia selectata intr-o curba ce trece prin fiecare vertex. Curba va fi alcatuita din arce. Doua vertexuri consecutive vor fi legate prin doua arce, astfel: unul tangent la primul vertex, celalalt tangent la primul arc si la urmatorul vertex.
Decurve
Aceasta optiune este opusa optiunilor FIT si SPLINE, si nu poate fi folosita decat dupa una dintre acestea. Rolul ei este de a transforma o curba in polilinia din care provine.
Spline
Optiunea SPLINE permite interpolarea unei polilinii pe baza metodei "B-Spline". In baza de date a AutoCAD-ului vor fi intercalate (in secventa corespunzatoare poliliniei selectate) un numar de vertexuri intermediare. Diferentierea vertexurilor originale de cele intercalate se face prin continutul sublistei 70:
(... ( "VERTEX") ... ( 8) ...) - vertex creat
prin SPLINE
(... ( "VERTEX") ... ( 16) ...) - vertex de control pentru
curba interpolata (exista in polilinia originala)
(... ( "VERTEX") ... ( 1) ...) - vertex creat
prin FIT.
Prin DECURVE vor fi eliminate vertexurile suplimentare, ramanand doar
cele cu sublista ( 16).
Interpolarea este controlata de trei variabile:
SPLINETYPE, SPLINESEGS si SPLFRAME.
Splinetype poate lua valorile:
5 - Spline quadratic
6 - Spline cubic.
Splinesegs este un numar intreg care stabileste
numarul de segmente generate prin SPLINE.
Splframe poate fi 0 sau 1. Daca este 0, polilinia originala nu va fi desenata dupa
interpolare. Daca este 1, va fi afisata atat polilinia
originala, cat si curba creata prin SPLINE.
Exemple pentru FIT si SPLINE - ACAD4_13.BMP.
Undo
Aceasta optiune permite anularea ultimei subcomenzi, ramanand in PEDIT:
Close/ ... / Undo / eXit <X> : U
Close/ ... / Undo / eXit <X> :
Edit vertex
Subcomanda EDIT VERTEX permite editarea fiecarui
vertex in parte. La inceput, apare un
"X" pe primul vertex al poliliniei si prompterul:
Next/ Previous/ Break/ Insert/ Move/ Regen/ Straighten/ Tangent/ Width/
eXit <N>:
Next muta "X" pe vertexul
urmator
Previous - muta "X" pe vertexul precedent
Break - memoreaza vertexul marcat si permite selectarea altuia. Se poate elimina apoi portiunea din polilinie cuprinsa intre cele
doua vertexuri.
Insert adauga un nou vertex dupa cel
marcat
Move - permite mutarea vertexului marcat
Regen - regenereaza polilinia
Straighten - memoreaza vertexul marcat si permite selectarea
altuia. Se poate inlocui apoi portiunea dintre cele doua vertexuri cu un segment de dreapta.
Tangent ataseaza vertexului marcat o
directie tangenta, ce va fi utilizata la rotunjirea ulterioara a poliliniei.
Width modifica latimea poliliniei dupa
vertexul marcat.
eXit paraseste subcomanda, revenind in
PEDIT.
Listele modificate sunt cele corespunzatoare vertexului selectat:
(... ( "VERTEX") ...).
Lista completa a comenzilor de editare (in ordine alfabetica AutoCAD Release 11):
Array
- copiere multipla sub forma de matrice sau pe un contur circular a
entitatilor selectate
Attedit
- editarea atributelor
Break
- elimina o portiune din entitatea selectata
Chamfer
- tesire
Change
- modificarea proprietatilor sau pozitiei entitatilor selectate
Chprop
- modificarea proprietatilor entitatilor selectate
Copy
- copierea entitatilor selectate
DDatte
- editarea atributelor printr-o fereastra de dialog
DDedit
- editare prin fereastra de dialog
Divide
- impartirea unei entitati in parti egale si marcarea acestora
Erase
- stergerea entitatilor selectate
Explode
- transformarea entitatilor complexe in entitatile simple din care sunt
alcatuite
Extend
- prelungirea entitatilor selectate pana la un contur definit anterior
Fillet
- racordare
Measure
- determinarea lungimii entitatii selectate in functie de unitatea de
masura specificata
Mirror
- copiere in oglinda
Move
- mutarea entitatilor selectate
Offset
- copiere paralela
Oops
- recuperarea entitatilor sterse cu ultima comanda ERASE
Pedit
- editarea poliliniilor
Purge
- elimina din baza de date entitatile neutilizate (blocuri, straturi ...)
Rotate
- rotirea entitatilor selectate
Scale
- marirea/ micsorarea la scara a entitatilor selectate
Select
- subcomanda care creeaza o multime de selectie
Stretch
- modifica dimensiunile obiectelor (le intinde)
Trim
- scurtarea entitatilor selectate ("tundere" dupa un contur)
|