giskumar 发表于 2022-7-6 09:51:42

图像名称

大家好,
 
我使用MAPISERT命令将图像附着到autocad。
当我选择图像时,我想读取图像的名称和扩展名。
有什么办法吗。
 
 
谢谢
库马尔。

MSasu 发表于 2022-7-6 10:11:51

不确定AutoCAD Map–但对于插入普通AutoCAD中的光栅图像,可以使用以下代码:
 
(vl-load-com)

(setq theImage
   (cdr (assoc 1 (entget (cdr (assoc 340 (entget (car (entsel)))))))))

(setq thePath      (vl-filename-directory theImage)
   theExtension (vl-filename-extension theImage))
 
 
当做
米尔恰

Tyke 发表于 2022-7-6 10:24:19

当您在屏幕上选择图像时,您应该在属性窗口中看到其名称。如果您打开了“快速属性”,您将在那里看到名称。

giskumar 发表于 2022-7-6 10:36:02

 
 
这对我真的很有帮助。
 
谢谢大家。

MSasu 发表于 2022-7-6 10:45:39

听起来不错!不客气!
 
当做
米尔恰

BlackBox 发表于 2022-7-6 10:58:58

 
 
(entget nil)?
 
也许这是一个更可行的解决方案:
 

(defun c:FOO (/ e v)
(vl-load-com)
(if (and (setq e (car (entsel "\n>>Select an Image: ")))
          (= "IMAGE" (cdr (assoc 0 (entget e)))))
   (prompt
   (strcat
       "\n>>Image Name>>"
       (vla-get-name (setq v (vlax-ename->vla-object e)))
       "\n>>Image Ext.>>"
       (vl-filename-extension (vla-get-imagefile v)))))
(princ))
页: [1]
查看完整版本: 图像名称