Zobrazit plnou verzi příspěvku: Dĺžka, resp obvod všetkých objektov vo výkrese

FilipTo
02.09.2013, 19:38
Zdravím užívateľov fóra,pracujem na prevádzke LASER a potrebujem zistiť ako by bolo možné zobrazovať dĺžku, resp.obvod všetkých objektov vo výkrese. Jedná sa o súčiastky zložitého tvaru s vonkajším obvodom a viacerými vnútornými. V predchádzajúcich dávnejších príspevkoch som našiel jeden lisp - dolu pod príspevkom je jeho celé znenie - avšak v ňom nie sú zahrnuté úsečky a oblúky - čo je vlastne 90% zloženia výkresovej dokumentácie, ktorá ku mne ide.Moja otázka znie: Dá sa upraviť doleuvedený lisp, tak aby zahrňoval aj úsečky a oblúky?? Alebo jestvuje nejaký program, nejaká nástavba pre AutoCad, ktorá sa dokupuje??Prosím poraďte, veľmi by mi to uľahčilo moju prácu.Spomínaný lisp:(defun c:pll (/ ss cnt area len)(vl-load-com)(setq cnt 0 area 0.0 len 0.0)(if (ssget (list'(-4 . "<OR")'(0 . "CIRCLE")'(-4 . "<AND")'(0 . "ELLIPSE")'(41 . 0.0)(cons 42 (* 2 pi))'(-4 . "AND>")'(-4 . "<AND")'(0 . "LWPOLYLINE");;; '(-4 . "&");;; '(70 . 1)'(-4 . "AND>")'(0 . "MPOLYGON")'(-4 . "<AND")'(0 . "POLYLINE");;; '(-4 . "&");;; '(70 . 1)'(-4 . "<")'(70 . 8)'(-4 . "AND>")'(0 . "REGION")'(-4 . "<AND")'(0 . "SPLINE")'(-4 . "&")'(70 . 9)'(-4 . "AND>")'(-4 . "OR>")))(progn(vlax-for obj (setq ss (vla-get-ActiveSelectionSet(vla-get-ActiveDocument(vlax-get-acad-object))))(setq cnt (1+ cnt)area (+ area (vla-get-area obj))len (+ len(if (member (vla-get-ObjectName obj)'("AcDbMPolygon" "AcDbRegion"))(vla-get-Perimeter obj)(vlax-curve-getDistAtParamobj(vlax-curve-getEndParam obj))))));; (princ "\nZTOTM v2.1 - Cercle, Polyligne, Ellipse, Spline, Region, MPOLYGON")    (princ "\nZTOTM v2.1 - Circle, Pline, Ellipse, Spline, Region, MPOLYGON");; (princ (strcat "\n""TOTAL -Surface: "(rtos area) " -Perimetre: "(rtos len)" -Objets: "(itoa cnt)    (princ (strcat "\n""TOTAL -Area: "    (rtos area) " -Length: "     (rtos len)" -Objects: "(itoa cnt)))(vla-delete ss))(prompt "\n*** Rien de Valable / Nothing available "))(princ)) (princ "\n==> ZTOTM (Version 2.1) ")(princ) 

Vladimír Michl
10.09.2013, 09:38

Zkuste do seznamu (pro member) přidat AcDbLine a AcDbArc. Ale na sčítání délek už existují hotové nástroje - např. náš Addlen (viz Download).

FilipTo
20.09.2013, 21:41
Veľmi pekne ďakujem za odpoveď, velice mi to uľahčilo robotu.  Zaujíma ma ešte jedna vec a to či sa dá niekde vypnúť tá otravná hláška : Soubor byl naposledy uložen v dxf2000, chcete uložit ve formáte cad2007? , potom ako zavieram výkresy. Totižto ukladám ich zásadne v dxf2000.

Vladimír Michl
20.09.2013, 21:56

Toto hlášení asi vypnout nepůjde, ale je namístě - DXF je jen exportní/výměnný formát, není to plnohodnotná náhrada nativního souboru DWG. Asi by to šlo obejít např. pomocí utility PreSave.

vbehun
21.09.2013, 15:00
Brání něco v tom, aby se ukládalo ve formátu Autocad 2007 - když už jej používáte?

FilipTo
20.10.2013, 18:24
Brání - laser mašina :)Ale ináč ďakujem za odpovede a pomoc. Veľmi mi to pomohlo.