明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3523|回复: 11

[基础] [求助]vlisp/lisp能否判断图层使用了"真彩色"?

  [复制链接]
发表于 2010-2-1 22:30 | 显示全部楼层 |阅读模式

请教大家:

vlisp/lisp能否判断图层使用了"真彩色"?

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2010-2-1 23:00 | 显示全部楼层
vla-get-truecolor + vla-get-red / green / blue
发表于 2010-2-2 00:23 | 显示全部楼层
本帖最后由 作者 于 2010-2-2 14:02:04 编辑

(assoc 420 (entget(tblobjname "layer" layerName)))

返回nil说明没使用真彩色,反之则是

 楼主| 发表于 2010-2-2 07:50 | 显示全部楼层

请教caoyin:

比如assoc 420 (entget(tblobjname "layer" "col-p1")))

返回420 . 16571297),  如何把16571297算成原来的真彩色数值:252,219,161

发表于 2010-2-2 14:01 | 显示全部楼层
(defun TrueColor2RGB (col /)
  (strcat (itoa (lsh (fix col) -16))
          ","
          (itoa (lsh (lsh (fix col) 16) -24))
          ","
          (itoa (lsh (lsh (fix col) 24) -24))
  )
)
 楼主| 发表于 2010-2-2 22:09 | 显示全部楼层

谢谢caoyin

 楼主| 发表于 2010-2-2 22:20 | 显示全部楼层

下面这一行能够成功执行:

(vla-put-Color (vla-add (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))) "col-p4") 4)

可换成这样就不行了,请求帮助:

(vla-put-Color (vla-add (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))) "col-p4") "252,219,161")

发表于 2010-2-2 23:25 | 显示全部楼层
(setq ACAD   (vlax-get-acad-object)
      ColObj (vla-getinterfaceobject
               ACAD
               (strcat "AutoCAD.AcCmColor." (substr (getvar "AcadVer") 1 2))
             )
      LayObj (vla-add (vla-get-Layers (vla-get-ActiveDocument ACAD)) "col-p4")
)
(vla-SetRGB colObj 252 219 161)
(vla-put-TrueColor LayObj colObj)
 楼主| 发表于 2010-2-2 23:43 | 显示全部楼层
谢谢caoyin,上楼的代码能否简单解释一下?!万分感谢!
发表于 2010-2-2 23:58 | 显示全部楼层

要怎么解释?

(vla-getinterfaceobject ACAD (strcat "AutoCAD.AcCmColor." (substr (getvar "AcadVer") 1 2)));;加载真彩色对象

(vla-SetRGB colObj 252 219 161);;设置真彩色对象的Red Green Blue各自的值

(vla-put-TrueColor LayObj colObj);;将真彩赋与图层对象

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

本版积分规则

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

GMT+8, 2024-5-17 20:25 , Processed in 0.201307 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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