乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 66|回复: 5

[编程交流] 具有全局宽度的多段线

[复制链接]

107

主题

615

帖子

575

银币

中流砥柱

Rank: 25

铜币
521
发表于 2022-7-5 22:21:53 | 显示全部楼层 |阅读模式
您好,我正在尝试编写一个lisp来绘制一条全局宽度为0.10的特定层中的多段线
 
这是代码
 
  1. (defun C:PLGB (/ plw)
  2. (COMMAND "_layer" "_m" "Global PL" "_c" "25" "DASHED2" "_lt" "DASHED2" "DASHED2" "")
  3. (COMMAND "_linetype" "_s" "DASHED2" "")
  4. (setq plw (getvar 'plinewid)
  5. (setvar 'plinewid 0.10)
  6. (command "_.pline")
  7. (setvar 'plinewid plw)
  8. )
  9. ); defun

 
这个代码给了我这个消息
 
 
有人能帮我吗?
 
谢谢
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 22:34:38 | 显示全部楼层
  1. (defun C:PLGB (/ plw)
  2. (COMMAND "_layer" "_m" "Global PL" "_c" "25" "DASHED2" "_lt" "DASHED2" "DASHED2" "")
  3. (COMMAND "_linetype" "_s" "DASHED2" "")
  4. (setq plw (getvar 'plinewid)[color="red"][b]) [/b]; missing parentheless?[/color]
  5. (setvar 'plinewid 0.10)
  6. (command "_.pline")
  7. (setvar 'plinewid plw)
  8. [color="red"] <--- remove this[/color]
  9. ); defun

 
 
我想补充一下
 
全局宽度0.50
线型比例0.10
 
这层的颜色是白色的,不是25(我现在不知道为什么?)
回复

使用道具 举报

107

主题

615

帖子

575

银币

中流砥柱

Rank: 25

铜币
521
发表于 2022-7-5 22:55:02 | 显示全部楼层
请尝试以下操作:
  1. (defun C:PLGB (/ plw)
  2. (COMMAND "_layer" "_m" "Global PL" "_c" "25" "DASHED2" "_lt" "DASHED2" "DASHED2" "")
  3. (COMMAND "_linetype" "_s" "DASHED2" "")
  4. (setq plw (getvar 'plinewid))
  5. (setvar 'plinewid 0.50)
  6. (command "_.pline")
  7. (setvar 'plinewid plw)
  8. ); defun
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 23:03:35 | 显示全部楼层
嗨,李。麦克。我尝试了你的代码,但结果并不是我想要的。
 
我想创建一个名为“Global PL”、颜色为25、线型为“dashed2”的层,但是
a) 在线型管理器中,我需要全局比例因子1,当前对象比例1
b) 选择多段线时-->全局宽度为0.50
 
查看附加照片
 
谢谢

回复

使用道具 举报

107

主题

615

帖子

575

银币

中流砥柱

Rank: 25

铜币
521
发表于 2022-7-5 23:18:43 | 显示全部楼层
我试着理解一些事情
 
在1。dwg文件lisp工作完美。
在2。dwg文件多段线的设置与1相同。dwg但不一样!!!!
 
我无法理解
 
  1. (defun c:plgb ( / lay val var )
  2.    (setq var '(clayer plinewid cmdecho celtscale cecolor celtype)
  3.          val  (mapcar 'getvar var)
  4.          lay  "Global PL"
  5.    )
  6.    (mapcar 'setvar (cdr var) '(0.5 0 0.1 "bylayer" "bylayer"))
  7.    (command "_.-layer" "_m" lay "_c" 25 lay "_l" "dashed2" lay "_t" lay "_u" lay "_on" lay "_s" lay "")
  8.    (setvar 'cmdecho 1)
  9.    (command "_.pline")
  10.    (while (= 1 (logand 1 (getvar 'cmdactive))) (vl-cmdf "\"))
  11.    (mapcar 'setvar var val)
  12.    (princ)
  13. )

 
谢谢
1.dwg
2.dwg
232157my2h9olwx2pyo2cx.jpg
232200czfbioohjknh43uj.jpg
回复

使用道具 举报

107

主题

615

帖子

575

银币

中流砥柱

Rank: 25

铜币
521
发表于 2022-7-5 23:30:03 | 显示全部楼层
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-11 06:16 , Processed in 0.429266 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表