明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1250|回复: 3

实体填充问题!

[复制链接]
发表于 2012-9-4 18:06:33 | 显示全部楼层 |阅读模式
(defun c:h1 ()

(prompt "\n灰色实体填充,指定内部点\n")
(setq pt (getpoint))
(setq oldcolor (getvar "cecolor"))
(command "color" "8")
(command "bhatch" "p" "solid" pt "")
(command "color" oldcolor)
(princ)
)

已知这个程序可以给封闭线填充颜色。可如何(setq color (acad_truecolordlg (cons 62 0))) 使用弹出框用RGB值去填充? 另外如果是框选对像,该如何修改。 请老师赐教,谢谢!!
 楼主| 发表于 2012-9-4 20:02:25 | 显示全部楼层
我算出了所选块的中心点。可CAD提示
选择对象:
点在对象上。nil

如果用(getpoint)取点就可以。这是为什么呀。算的中心点可以用来命令填充吗?请高手指教。

(defun c:QQ( / SS I Devtype ENT1 ENT)  
        (setvar "cmdecho" 0)
        (setq color (acad_truecolordlg (cons 62 0)))
        (setq co (cdr (car color)))
(IF  (SETQ SS (SSGET '((0 . "INSERT") (66 . 1))))
                (PROGN
                   (SETQ I -1)
                   (REPEAT (SSLENGTH SS)
                                (SETQ EN (SSNAME SS (SETQ I (1+ I))))
                                (SETQ ENT (ENTGET EN ) ENT1 ENT)
                                (GetLeftUp EN)
                                (command "bhatch" "p" "solid" Pt "")
                                (command "color" oldcolor)
                        )
                               
                )
                  (princ)
)
)
发表于 2012-9-4 20:31:30 | 显示全部楼层
设置当前颜色:
  1. (if
  2.   (setq color (acad_truecolordlg (cons 62 0)))
  3.    (setvar "CeColor"
  4.            (cond ((setq c (cdr (assoc 420 color)))
  5.                   (strcat "RGB:"
  6.                           (itoa (lsh (lsh (fix c) 8) -24))
  7.                           ","
  8.                           (itoa (lsh (lsh (fix c) 16) -24))
  9.                           ","
  10.                           (itoa (lsh (lsh (fix c) 24) -24))
  11.                   )
  12.                  )
  13.                  (t (itoa (cdr (assoc 62 color))))
  14.            )
  15.    )
  16. )
 楼主| 发表于 2012-9-4 20:36:05 | 显示全部楼层
多谢高手。现在问题是。我算出来的PT。在 (command "bhatch" "p" "solid" Pt "")
命令里没反应,说 点在对象上 。而用(setq pt (getpoint)) 就可以。算出来的PT和get的PT不同吗?
还是bhatch只接受(getpoint),不接受算出来的?
命令: !pt
(465.0 205.0 0.0)
命令: (setq pt1(getpoint))
(462.58 212.77 0.0)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 16:45 , Processed in 0.194113 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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