Я борюсь с изменением правильного DXF, есть 9 DXF из 300.
Я получаю следующий список с командой (entget (car (entsel))):
((-1 . <Entity name: 223791faf20>)
(0 . "HSB_BEAMENT")
(330 . <Entity name: 21b6fa889f0>)
(5 . "5A612")
(100 . "AcDbEntity")
(67 . 0)
(410 . "Model")
(8 . "E-01")
(62 . 92)
(100 . "Hsb_BeamEnt")
(70 . 3)
(10 -86756.4 43492.7 3022.5)
(15 -86756.4 43492.7 530.094)
(142 . 5469.91)
(143 . -485.094)
(11 0.0 0.0 1.0)
(12 -1.83697e-16 -1.0 0.0)
(13 1.0 -1.83697e-16 0.0)
(14 0.0 0.0 0.0)
(140 . 45.0)
(141 . 295.0)
(300 . "")
(70 . 10)
(79 . 0)
(332 . <Entity name: 0>)
(144 . 0.0)
(300 . "STUTZ")
(300 . "Bearbejdet")
(300 . "490")
(300 . "E-01")
(300 . "")
(300 . "")
(300 . "Ribbe C24 295x45")
(300 . "C24")
(301 . "")
(302 . "")
(71 . -1)
(72 . 0)
(73 . 0)
(74 . 6))
Здесь я хочу изменить DXF 300 с индексом 4 (300. "E-01")
Я создал следующий код: Но как я могу выбрать индекс?и получить DXF, я хочу.
(defun c:changeattr()
(setq a (car (entsel "\nSelect a object: ")))
(setq b (entget a))
(setq c (subst (cons 300 "F200") (assoc 300 b) b)) ; Trying to update and change the Label Property
(entmod c)
(entupd a)
(prompt "\nAttribute entity updated.")
(princ)
)
Спасибо заранее за помощь.Я ценю это :)