乐筑天下

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

[编程交流] 从pgp文件运行宏

[复制链接]

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:12:00 | 显示全部楼层 |阅读模式
夏威夷群岛
 
有没有办法使用键盘快捷键(acad.pgp)运行宏?如果可能的话,我想在PGP文件中添加以下内容。
 
我在DIMLINEAR命令按钮中添加了以下内容,它可以正常工作:
^C层;设置尺寸^C^C\U dimlinear\\\^C^C层;设置0;;^C^C
 
 
我发现这个比我为dimlinear按钮制作的更好:
^C^C_setenv;电流层$M=$(getvar,CLAYER);粘土工;Dim_dimlinear\\\
粘土工$M=“(getenv,CURRENTLAYER)”;
 
 
 
谢谢
DRBJR45
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 22:18:27 | 显示全部楼层
它更容易使许多小lisp defuns和自动加载他们或把他们放在菜单或工具栏上。
 
  1. ; example appload this then type ddd
  2. ;^C^C-layer;Set;DIMENSIONS;;^C^C_dimlinear\\\\ ^C^C-layer;Set;0;;^C^C
  3. (defun C:ddd ()
  4. (setq oldlay  (getvar "clayer"))
  5. (setvar "clayer" "dimensions")
  6. (command "_dimlinear" (getpoint) (getpoint)(getstring)(getpoint)) ;  not tested
  7. (setvar "clayer" oldlay)
  8. )
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:23:19 | 显示全部楼层
谢谢
从来没有对lisp感兴趣,猜猜它的时间。由于某种原因,您的示例不起作用。启动dimlinear命令并更改图层,但仅此而已。我将以此为起点学习一些Lisp程序。。。。。。
 
再次感谢!
 
 
 
 
 
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 22:30:52 | 显示全部楼层
这是带有提示的修订版
 
  1. ; example appload this then type ddd
  2. ;^C^C-layer;Set;DIMENSIONS;;^C^C_dimlinear\\\\ ^C^C-layer;Set;0;;^C^C
  3. (defun C:ddd ( / pt1 pt2 pt3 ans)
  4. (setq oldlay  (getvar "clayer"))
  5. (setvar "clayer" "dimensions")
  6. (setq pt1 (getpoint "\npick 1st point"))
  7. (setq pt2 (getpoint "\nPick 2nd point"))
  8. (setq ans  (getstring "\nEnter H V or A")) ; use initget here
  9. (setq pt3 (getpoint "\nPick entension pt"))
  10. (command "_dimlinear" pt pt2 ans pt3 ) ;  not tested
  11. (setvar "clayer" oldlay)
  12. )
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:36:45 | 显示全部楼层
比加尔
 
我真的很感谢你的帮助。很抱歉让你知道我遇到了这个错误:
 
命令:appload DDD。LSP已成功加载。
DDD。LSP被添加到启动套件中。
DDD。LSP已成功加载。
 
 
命令:;错误:输入列表格式不正确
 
命令:
命令:;错误:输入列表格式不正确
 
命令:
命令:ddd未知命令“ddd”。按F1键获取帮助。
 
再次感谢
DRBJR45
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:41:04 | 显示全部楼层
附加括号
  1. (setq ans  (getstring [b][color=red]([/color][/b]"\nEnter H V or A"))

 
 
编辑:我建议这样做
  1. (defun c:ddd (/ clay)
  2. (setq clay (getvar 'CLAYER))
  3. (setvar 'CLAYER "DIMENSIONS")
  4. (command "_.dimlinear")
  5. (while (> (getvar 'cmdactive) 0)
  6.    (command "\")
  7. )
  8. (setvar 'CLAYER clay)
  9. (princ)
  10. )

 
亨里克
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:45:00 | 显示全部楼层
亨里克,
 
工作完美!
我很兴奋能学习更多关于lisp的知识,这应该能帮助我开始学习。保重,谢谢。
 
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:49:16 | 显示全部楼层
不客气,唐。
很高兴我能帮忙。
 
 
编辑:另一种将图层尺寸设置为当前的方法是使用命令“layer”,该命令允许我们将图层设置为当前,即使图层不存在,或者如果存在并被锁定、冻结或关闭,

如果层不存在,将提示“未找到匹配的层名称”但命令继续执行,并使图层“维度”成为当前图层。
 
亨里克
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:56:33 | 显示全部楼层
亨里克,
 
谢谢你的提示。。。。我发现了一些LISP初学者的网站。一些基础看起来很简单(著名的遗言!)
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:58:20 | 显示全部楼层
 
大学教师,
你不必看得太远,试试这里@CADTutor
 
亨里克
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 06:14 , Processed in 0.641930 second(s), 72 queries .

© 2020-2025 乐筑天下

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