761
Hozzunk ki minél többet az AutoCAD-ből
-
#281 nem baj az is segitett -
zenoka #280 en is azert nem irtam csak ctrl+c ctrl+p:) -
#279 koszi most gondolkozok hogy ra is googlizhattam volna :) (lusta vagyok) -
zenoka #278 http://discussion.autodesk.com/forums/message.jspa?messageID=5264718 -
#277 ha van egy block-om annak hogy tudom megvaltoztatni nevet?? -
#276 en mar hasznaltam LISP-et picit regebben :) egyetemen es nah jol jonne egy ket dolog amit gyakran hasznalok es azt megirni benne csak mar sokat felejtettem :) -
zenoka #275 lisp for president..azt tudtatok hogy regen a lispel kezdtem mesterseges inteligenciat is irogatni..pont a huyle szerkezete miatt:D (lista rendszer) -
#274 A Műegyetem könyvtárából lehet előbányászni régi LISP/AutoLISP könyveket, volt szerencsém egy stencilezett kölcsönözhető példányhoz - ott érdemes kutakodni.
Az AutoCAD help-je is jó, segít a dologban.
Én javaslom, először a "LISP gondolkodásmódot" érdemes elsajátítani, majd ezt az AutoCAD környezetben megpróbálni használni. Pl.: ha offsetelni akarod egy DN400-as cső középvonalát, hogy a csövet megrajzold, akkor a cső 406.4mm-es külső átmérőjét el kellene osztanod kettővel, de megteheted azt is, h
o <ENTER>
(/ 406.4 2.) <ENTER>
Ezzel is rá vagy kényszerítve, hogy ezt a "lengyel logikát" gyakorlod. Ha összetettebb dolgokat kell csinálni, akkor is érdemes kipróbálni, hogyan csinálnád LISP-ben, parancssorban, pl.: (1+2)/(6+4)=0.3, a következőképpen:
(/ (+ 1. 2.) (+ 6. 4.)) <ENTER>
és így tovább...
Ezután jöhetnek a kimondottan az AutoCAD-hez és/vagy a programozáshoz kapcsolódó utasítások, parancsok (pl.: programok felépítése, azok futtatása CAD-ben, hogyan "látja" az AutoCAD az általam írt rutinokat, kis programokat, script-eket, alapvető szintaktikai szabályok, változók, értékadás, adatbevitel, kiírás, ciklusok, feltételes utasítások, stb..., aztán ha megy, akkor pl. hogyan lehet egy txt-fájlból x,y,z koordinátákat kiolvasva azt hogyan lehet CAD-del beolvasni polyline-nak, stb...) -
#273 ha mar itt tartunk nem tudtok valami jo konyvet AutoLISP-re?? -
slylecz13 #272 A suliban sem volt problémám a rajzolással, rajtam kívül nem sokan szerették, ezért is érzem magamban, hogy érdekel a téma, mert ha idáig lapra sikerült, akkor a programban is fog. Csak mégsem ugyanaz (vagy legalábbis még így látom)
Köszi szépen az ötleteket!
-
#271 én azt gondolom, először "műszaki rajzolni" kell megtanulni, utána már "csak" le kell tudnod rajzolni a szoftverrel azt, amit amúgy is le tudnál rajzolni.
Ezek a Pintér Miklós könyvek sztem is jók. Azt hiszem én egy kétkötetesből tanultam, ami az R14-hez volt, az első kötet a síkbeli rajzokkal, a második a térbeliekkel foglalkozott. Nagyon jó alapot ad, ha a szerint végigmész az egyes részeken, majd gyakorolsz, gyakorolsz és gyakorolsz, akkor igen hamar lesz annyi tudásod, hogy továbbképezhesd magad.
Ha már biztosan kezeled a programot, akkor ott a Google is. Vannak jó fórumok, ahol guru szinten űzik az ipart és segítenek, vagy már előkerült az adott probléma és van rá megoldás.
Sok sikert, mindenesetre és kitartás! -
Petko #270 Ilyen témához van egy könyv, ami nem a csúcs, de az alapokat megtanulhatod belőle:
-
#269 aztan ez is eszembe jutott :) -
#268 vagy rajzolsz egy téglalapot @100,1 és annak az átlója, csak h egyszerűbb legyen...
a kör negyedelőpont snap-ek nem is biztos, h be vannak állítva... meghát bonyolult is, sztem... nameg ha fos matekproci van benne, lehet nem is olyan pontos, bár ezek a pontok épp sugárnyira vannak 90 fokra, elvileg működne "analitikus" pontossággal...
-
slylecz13 #267 Pl: csapágyházakat, fogaskerekeket, tengelyeket, furatokat, csavarokat, meneteket stb. Egyszóval mindent, amit (fém)esztergálással el lehet készíteni. -
Petko #266 először azt kéne tudni mit akarsz rajzolni...
teljesen más a munkamenete egy építésznek, egy építőnek, egy terméktervező gépésznek, egy épületgépésznek, egy épületvillamosnak -
slylecz13 #265 Sziasztok!
Még kezdő vagyok, de szeretnék megtanulni AutoCAD-ben rajzolni.
Hol lehet alapokat szerezni, milyen oldalakat ajánlotok és egyáltalán az AutoCAD-et tartjátok-e a legalkalmasabbnak a tanuláshoz...
A választ előre is köszönöm! -
#264 koszi :) -
zenoka #263 en szoktam huzni egy kort 100assal aztan anak a wuadransaba 1esel es annak az also quadransaba huzom a vonalat..az 1% -
#262 Sziasztok autocadben ha akarok egy vonalnak 1%-os esest adni azt hogy tudom megcsinalni??? -
#261 koszi -
#260 A Total Commanderben a dwg fájlt nyisd meg a Nézőkével (F3), ami úgy kezdődik, h AC1015 az 2000-es formátum. -
#259 Sziasztok letezik olyan program amiben nemg lehet nezni hogy a dwg milyen autocadben lett elmentve?? Az a lenyeg hogy mindent 2000 be kell lementenunk namost sokan dolgoztunk egy projekton es muszaj lekontrolalnom es semmi kedvem mindet kinyitni es ujra elmenteni. Koszi -
bartuczcsaba #258 ahan az jó
mert a suliban időre kell rajzolni és így akkor inkább otthon megcsinálom:D
vki nem tud vmi oldalt ahol vannak autocad-es rajzok mint pl amik itt van?
thx csáó -
zenoka #257 persze formatum fuggo..lenyeg hogy mondjuk autocad 2000 be mentsd el asszem mondjuk pont 2007 es 2006 kozott nincs formatum kulonbseg:D viszont vannak ha csinalsz intelligencs blockot azt nem biztos hogy 2000 be eltudod menteni normalisan.. -
bartuczcsaba #256 hy
ha autocad 2007-ben rajzolok vmit akkor azt 2006 olvassa?
thx cs -
#255 nekem a régebbi kiadás van meg még r14-es autocadhez kezdésnek azzal is elég jol el lehetett boldogulni és mivel a szerzö ugyan az igy nagy hiba nem lehet benne, de talán jön majd más aki jobban benne van a témában és tud addni tanácsot könyv ügyben neked. -
#254 Valaki tudna ajánlani auto cad könyvet? Ezt néztem ki, de hátha tud valaki jobbat. Előre is köszi. -
kaiber #253 Megoldottam a problémát!! Ki kellett kapcsolnom a hardveres gyorsítást, és láss csodát, működik...Azért köszi -
kaiber #252 Ismerem az előző verziókat a 2004 óta... de ez most más. Itt teljesen szétesnek a vonalak és a regen parancs sem segít, mert pl a vonalak végpontja más helyen lesznek ha ráközelítek. Minden közelítésnél más szögben vannak a vonalak... szal ilyenek a problémák. Ha valaki tapasztal már ilyen akkor ossza meg velem, h h kell megcsinálni! Sp1 sem segített rajta. kössz -
Petko #251 ez már amióta létezik a világ mindíg is így volt... ha ráközelítesz regenerationt kell nyomni hogy frissítse a vektoradatokat -
kaiber #250 Helló! Feltettem az autocad 2009-et! Az a problémám vele, h a vonalak szétcsúsznak, elforognak, szaggatottá válnak, vagy egyszerűen eltűnnek... De csak akkor ha eléggé rázoommolok. Már 2 ATI videókártyás gépen próbáltam és ugyanaz a jelenség (mindkettőn vista 32bit-64bit). 1 xp-s gépen nvidia kártyával+1vistás gépen nvidiával jól működik. Vkinek volt már hasonló gondja? köszi (ja és a 2008as verzió tökéletes...) -
#249 2009-ben hogy lehet a ribbonhoz új panelt adni? A costumizebe megtaláltam amit hozzá szeretnék tenni, de nem lehet odahúzna, vagy vmi pipa, hogy show.
Előre is köszi -
zenoka #248 ZilogR: megcsinalnam ha volna itthon 2007es cadem mert jelenleg regebbi van csak..meloba meg csak jan5-diken megyek..
pfprg: ehh szep kis lisp..megkenne mar tanulnom lispet irni:) Tudtad hogy az elso ugy mond beszelgetos mesterseges inteligenciat LISP ben irtak anno pont a lista kezelese miatt:D -
#247 Az első megoldás a ZENOKA által körvonalazott megoldások valamelyike lenne, de mivel én csak R2006 verziót használok, és az AutoCAD méretező funkcióit sohasem használom, ezekhez pillanatnyilag nem tudok segítséget nyújtani neked.
A másik megoldás az, hogy az általad leírt attribútumos blokkot nem az AutoCAD INSERT parancsával illesztem be, hanem egy AutoLisp-ben definiált paranccsal, amely a beillesztés során végigvizsgálja a blokkdefiníciót, és ha az attribútumai között talál olyanokat amelyek címkéje "Y-koord" , "X-koord" vagy "Z-koord" értékű, akkor azokban automatikusan elhelyezi a beillesztési pont megfelelő koordinátáit.
Már régebben készítettem egy ilyen parancsot.
Elindítása után bekéri a beillesztendő blokk nevét, a beillesztési szorzót, és a koordináták megjelenítendő tizedesjegyeinek számát, majd beillesztési pontokat, és irányokat kér, és elhelyezi a blokkreferenciákat. Ha azoknak van a fentiektől eltérő címkéjű attribútumuk is, azokat is bekéri.
A parancs következő indításakor már nem kéri a blokk nevét, beillesztési szorzóját, és a tizedesek számát, de azok módosíthatók amig a beillesztési pont megadására szolgáló porompt aktív.
Ide biggyesztem a Lisp kódot, ha jónak találod, használd egészséggel.
Használatának legegyszerűbb módja az, ha belemásolod az AutoCAD menüjéhez tartozó *.MNL fájlba. Ennek neve általában acad.mnl szokott lenni.
(defun c:koord_blokk ()
(defun koord_blokk_nev ()
(initget 1)
(setq koordblokknev (getstring "\nBlokk neve: "))
)
(defun koord_blokk_meret ()
(initget 3)
(setq blokkszorzo (getreal "\nBlokk beillesztési szorzója: "))
)
(defun koord_blokk_tizedes ()
(initget 5)
(setq koordtizedes (getint "\nKoordináták tizedesjegyeinek száma: "))
)
(defun elem_alaplista_orig (eleml / q result)
(setq result '() q -1)
(while (setq q (1+ q) lista (nth q eleml))
(if (not (member (car lista) '(-1 330 5 100 410 360 67 3))) (setq result (append result (list lista))))
)
)
(defun blokk_attributumELIST_lista (blokknev / elem eleml result)
(setq result '())
(if (setq elem (tblobjname "BLOCK" blokknev))
(if (logand 2 (cdr (assoc 70 (entget elem))))
(while (setq elem (entnext elem))
(if (= (cdr (assoc 0 (entget elem))) "ATTDEF")
(setq result (append result (list (entget elem))))
)
)
)
)
result
)
(defun blokk_attrib_ertekadas (elem_ cimke_ ertek_ / *eleml_)
(if (setq eleml_ (entget elem_))
(if (= (cdr (assoc 0 eleml_)) "INSERT")
(while (not (equal (cdr (assoc 0 (entget (setq elem_ (entnext elem_))))) "SEQEND"))
(setq eleml_ (entget elem_))
(if (equal (cdr (assoc 0 eleml_)) "ATTRIB")
(if (equal (strcase (cdr (assoc 2 eleml_))) (strcase cimke_))
(progn
(entmod (subst (cons 1 ertek_) (assoc 1 eleml_) eleml_))
(entupd elem_)
)
)
)
)
)
)
)
;
(if (not koordblokknev) (setq koordblokknev (getstring "\nBlokk neve: ")))
(if (tblsearch "BLOCK" koordblokknev)
(progn
(if (not blokkszorzo) (koord_blokk_meret))
(if blokkszorzo
(progn
(if (not koordtizedes) (koord_blokk_tizedes))
(if koordtizedes
(while (setq qwe (initget "N M T") bp (getpoint "\nBeillesztési pont (Név/Méret/Tizedes) "))
(cond
((equal bp "N") (koord_blokk_nev))
((equal bp "M") (koord_blokk_meret))
((equal bp "T") (koord_blokk_tizedes))
((and (equal (type bp) 'LIST)
(equal (type blokkszorzo) 'REAL)
(equal (type koordtizedes) 'INT)
(tblsearch "BLOCK" koordblokknev)
)
(setq irany (getangle bp "\nBeillesztés iránya: ")
irany (if irany irany 0.0)
eleml (entget (tblobjname "BLOCK" koordblokknev))
flag (if (logand 2 (cdr (assoc 70 eleml))) 1 0)
egyeb '()
)
(entmake
(list
'(0 . "INSERT")
(cons 2 koordblokknev)
(cons 10 bp)
(cons 41 blokkszorzo)
(cons 42 blokkszorzo)
(cons 43 blokkszorzo)
(cons 50 irany)
(cons 66 flag)
)
)
(if (setq attrlist (blokk_attributumELIST_lista koordblokknev))
(progn
(setq q -1)
(while (setq q (1+ q) eleml (nth q attrlist))
(if (= (cdr (assoc 0 eleml)) "ATTDEF")
(progn
(setq cimke (strcase (cdr (assoc 2 eleml)))
eleml (elem_alaplista_orig eleml)
eleml (subst '(0 . "ATTRIB") (assoc 0 eleml) eleml)
eleml (subst (cons 40 (* blokkszorzo (cdr (assoc 40 eleml)))) (assoc 41 eleml) eleml)
eleml (subst (cons 50 irany) (assoc 50 eleml) eleml)
eleml (subst (cons 11 (polar bp (+ (angle '(0 0 0) (cdr (assoc 11 eleml))) irany) (* (distance '(0 0 0) (cdr (assoc 11 eleml))) blokkszorzo))) (assoc 11 eleml) eleml)
eleml (subst (cons 10 (polar bp (+ (angle '(0 0 0) (cdr (assoc 10 eleml))) irany) (* (distance '(0 0 0) (cdr (assoc 10 eleml))) blokkszorzo))) (assoc 10 eleml) eleml)
)
(cond
((= cimke (strcase "X-koord"))
(setq eleml (subst (cons 1 (rtos (car bp) 2 koordtizedes)) (assoc 1 eleml) eleml))
)
((= cimke (strcase "Y-koord"))
(setq eleml (subst (cons 1 (rtos (cadr bp) 2 koordtizedes)) (assoc 1 eleml) eleml))
)
((= cimke (strcase "Z-koord"))
(setq eleml (subst (cons 1 (rtos (caddr bp) 2 koordtizedes)) (assoc 1 eleml) eleml))
)
(T
(setq egyeb (append egyeb (list (cdr (assoc 2 eleml)))))
)
)
(if (not (entmake eleml))
(princvalt "eleml")
)
)
)
)
)
)
(entmake (list '(0 . "SEQEND") '(8 . "0")))
(if egyeb
(progn
(setq q -1 elem (entlast))
(while (setq q (1+ q) cimke (nth q egyeb))
(setq ertek (getstring T (strcat "\n" cimke " attribútum értéke: ")))
(blokk_attrib_ertekadas elem cimke ertek)
)
)
)
)
)
)
)
)
)
)
)
)
-
#246 Az első lenne nekem a megfelelő, tehát nekem kell olyan blokk-definíciót gyártanom, ami tudja azt, hogyha egy térbeli csőhálózat egy pontjára "rárakom", akkor ott megjelenjen annak a pontnak a koordinátája, ahová raktam.
De ha leírod, amit a második alatt említettél, annak is nagyon örülnék - és talán más is! Előre is köszönöm!
Majd a leírásodból ki fog derülni, h mi a különbség a kettő között, mert annyira nem vagyok benne biztos, hogy értem pontosan (nem írok többet, mert úgyis kiderül, h te hogyan érted, amit írtál, aztán majd tudok kérdezni tovább, vagy megvilágosodni... :P ) -
#245 Mit szeretnél gyártani? Blokkdefiníciót készíteni, amely képes mindazt automatikusan elvégezni amit leírtál, vagy a már definiált blokkot beilleszteni úgy, hogy a blokkreferenciák attribútumaiban automatikusan megjelenjenek a beillesztési pont koordinátái?
Az utóbbiban tudnék segíteni. -
zenoka #244 2007 tol mar lehet dinamikus blokkokat csinalni kezdj el annak utana olvasni..nagyon sok hidas rajzon talalkoztam mar ilyennel ahol a colopcsucsok igy voltak megoldva. bar egy ketto meg ugy hogy volt a koordinata rendszer es annak az origojatol volt bemeretezve a pont es mikor a fogo pontjat mozgattad a-bol b-be akkor valtozott a merettavolsag es az lett kiirva..az is egy jarhato ut:D vagy irsz lispet:)) -
#243 Üdv! Egy kis Karácsonyi fejtörő - de még ma oldja meg valaki, ha lehet :P ;)
Gyártani akarok ilyen szép attributumos blokkokat:
Azt szeretném, ha beszúrok egy ilyet, az X, Y, Z koordináta feliratok helyén a nyíl hegyének koordinátája legyen. Ahová teszem, az legyen rajta a felirat.
A nyílhegy legyen a blokk insertion point-ja az egyszerűség (és egyértelműség) kedvéért.
Ötlet?!??! -
Jusy #242 Ott minden rendbenlévőnek tűnik, bár fogalmam sincs hogy is kell beállítani, csak sejtem.