明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2171|回复: 2

利用entmake 插入image的问题

[复制链接]
发表于 2010-4-15 19:06:00 | 显示全部楼层 |阅读模式

本来利用

(command "_imge" "a" ...)

的形式是可以插入IMAGE的,但是要用到arx反应器回调函数时,不能调用CAD命令,只能用entmake插入image。

现在问题来了,用下面的函数插入图片时有问题,我查了DXF代码,并与直接插入的图片的组码进行了对比,主要是330组码的问题,330组码中含IMAGE附着时的图像名,我试着生成330组码,但是显示NIL。

以下的代码中不含330组码,

要是新开窗口的话,会提示“DXF 组不正确: (340)”

要是开了窗口,并插入过图片的话,不会报错,但是有时图片不显示(查看路径是对的),但是查看图像管理器,看不到插入的图片。

(defun c:timg ()

  (setq img340 (entmakex
   (list
     '(0 . "IMAGEDEF")
     '(5 . "89")
     '(100 . "AcDbRasterImageDef")
     '(90 . 0)
     '(1
       .
       "c:\\test.bmp"
      )
     '(10 154.0 299.0 0.0)
     '(11 0.00649351 0.00649351 0.0)
     '(280 . 1)
     '(281 . 0)
   )
        )
  )

  (entmake
    (list
      '(0 . "IMAGE")
      '(5 . "8B")
      '(100 . "AcDbEntity")
      '(67 . 0)
      '(410 . "Model")
      '(8 . "0")
      '(100 . "AcDbRasterImage")
      '(90 . 0)
      '(10 647.821 428.712 0.0)
      '(11 0.00649351 0.0 0.0)
      '(12 3.97599e-019 0.00649351 0.0)
      '(13 154.0 299.0 0.0)
      (cons 340 img340)
      '(70 . 7)
      '(280 . 0)
      '(281 . 50)
      '(282 . 50)
      '(283 . 0)
      '(71 . 1)
      '(91 . 2)
      '(14 -0.5 -0.5 0.0)
      '(14 153.5 298.5 0.0)
    ) ;_ 结束list
  ) ;_ 结束entmake
)

 楼主| 发表于 2010-4-18 10:56:00 | 显示全部楼层

有人做过这个吗?

 楼主| 发表于 2010-4-28 13:00:00 | 显示全部楼层

已经搞定了,不用ENTMAKE,用ACTIVEX。

(setq *acad* (vlax-get-acad-object)
actvdoc (vla-get-activedocument *acad*)
mspace (vla-get-modelspace actvdoc)
ImgObj (vlax-invoke mspace 'addraster
"C:/TEST.png" (list 0.0 0.0 0.0) 1 0))

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-10-2 01:25 , Processed in 0.167932 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表