明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 646|回复: 4

求各位高手帮我写个图层LISP。这个对各位不难的。

[复制链接]
发表于 2019-3-31 23:21 | 显示全部楼层 |阅读模式
20明经币
求各位高手帮我写个LISP。这个对各位不难的。我们厂里  一直都只用1,2,3,4,5,6,7,8,9,这几个图层。。求各位帮忙写2个lisp命令。第1个命令:首先框选 (只能选择到圆形) ,然后将圆形改到图层1(图层1原来就有,不需要新建),然后再把圆形改成颜色bylayer
第2个命令:首先框选 (只能选择到红色1的图形) ,,然后将选择的红色的图形改到图层1(图层1原来就有,不需要新建),然后再把图形改成颜色bylayer





最佳答案

查看完整内容

;框选圆(不含块中圆等),将其图层名改到图层1、颜色改为ByLayer (defun c:cc1() (setq cmd (getvar "cmdecho")) (setvar "cmdecho" 0) (command "_undo" "be") (if (setq p1 (getpoint "\n框选左上角点:")) (if (setq p2 (getcorner p1 "\n框选右下角点:")) (if (setq ssa (ssget "w" p1 p2 '((0 . "circle")))) (command "_chprop" ssa "" "layer" "图层1" "c" "By ...
发表于 2019-3-31 23:21 | 显示全部楼层
本帖最后由 yshf 于 2019-4-6 10:07 编辑

;框选圆(不含块中圆等),将其图层名改到图层1、颜色改为ByLayer
(defun c:cc1()
    (setq cmd (getvar "cmdecho"))
    (setvar "cmdecho" 0)
    (command "_undo" "be")
    (if (setq p1 (getpoint "\n框选左上角点:"))
        (if (setq p2 (getcorner p1  "\n框选右下角点:"))
            (if (setq ssa (ssget "w" p1 p2 '((0 . "circle"))))
                (command "_chprop" ssa "" "layer" "图层1" "c" "Bylayer" "")
            )
        )
    )
    (command "_undo" "e")
    (setvar "cmdecho" cmd)
    (princ)   
)
;框选红色的图元(不含块中红色图元及随层为红色的图元等),将其图层名改到图层1、颜色改为ByLayer
(defun c:cc2()
    (setq cmd (getvar "cmdecho"))
    (setvar "cmdecho" 0)
    (command "_undo" "be")
    (if (setq p1 (getpoint "\n框选左上角点:"))
        (if (setq p2 (getcorner p1  "\n框选右下角点:"))
            (if (setq ssa (ssget "w" p1 p2 '((62 . 1))))
                (command "_chprop" ssa "" "layer" "图层1" "c" "Bylayer" "")
            )
        )
    )
    (command "_undo" "e")
    (setvar "cmdecho" cmd)
    (princ)   
)
回复

使用道具 举报

发表于 2019-4-5 22:23 | 显示全部楼层
没人回帖吗?悬赏还有吗,有的话我来试试
回复

使用道具 举报

发表于 2019-4-7 01:56 | 显示全部楼层
;;;选红色物体→图层1
(defun c:c3(/ ss)(princ "\n选红色物体→图层1")
  (if
    (setq ss (ssget '((-4 . "<or") (62 . 1) (-4 . "or>"))))
    (command "_chprop" ss "" "c" "bylayer" "la" "图层1" "")
  )   
  (princ)
)


;;;;选圆形物体→图层1
(defun c:c2(/ ss)(princ "\n选圆形物体→图层1")
  (if
    (SETQ ss (ssget (list '(0 . "CIRCLE"))))
    (command "_chprop" ss "" "c" "bylayer" "la" "图层1" "")
  )
  (princ)
)
回复

使用道具 举报

 楼主| 发表于 2019-4-7 20:31 | 显示全部楼层
各位朋友晚上好,楼上有两位朋友帮我写了一个命令,实在无以为谢,由于来论坛不久,不知道评分是要在24小时之内的,现在都不能评分了。明经币不知道怎么转送,实在不好意思,请有知道怎么转账明经币的朋友告诉一下我。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 12:01 , Processed in 0.251458 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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