Vytisknout stránku | Zavřít okno

Dĺžka, resp obvod všetkých objektov vo výkrese

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: AutoCAD
Popis fóra: Otázky kolem aplikací AutoCAD a AutoCAD LT, AutoCAD 360, prohlížečů, DWG a DWF, Design Review, Navisworks, nadstavby, 123D, A360 a cloud Autodesk 360
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=17840
Datum vytištění: 17.kvě.2026 v 08:32


Téma: Dĺžka, resp obvod všetkých objektov vo výkrese
Odeslal: FilipTo
Předmět: Dĺžka, resp obvod všetkých objektov vo výkrese
Datum odeslání: 02.zář.2013 v 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-getDistAtParam
obj
(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) 



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 10.zář.2013 v 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).

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: FilipTo
Datum odeslání: 20.zář.2013 v 21:41
Veľmi pekne ďakujem za odpoveď, velice mi to uľahčilo robotu. Big smile Big smile

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.


Odeslal: Vladimír Michl
Datum odeslání: 20.zář.2013 v 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.

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: vbehun
Datum odeslání: 21.zář.2013 v 15:00
Brání něco v tom, aby se ukládalo ve formátu Autocad 2007 - když už jej používáte?


-------------
=^..^=


Odeslal: FilipTo
Datum odeslání: 20.říj.2013 v 18:24
Brání - laser mašina :)
Ale ináč ďakujem za odpovede a pomoc. Veľmi mi to pomohlo.



Vytisknout stránku | Zavřít okno