乐筑天下

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

[编程交流] Lisp插入文本

[复制链接]

44

主题

139

帖子

95

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 18:41:38 | 显示全部楼层 |阅读模式
我有对象的数据库,当我编写对象插入代码时需要lisp
autocad中的文字描述
 
实例
 
描述代码
 
M20插座M20
M24插座M24
M30插座M30
 
当我写M20 lisp插入M20套接字时,我的意思是什么。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 18:46:38 | 显示全部楼层
这只是要求用户指定一个点,然后插入文本!
现在不是尝试自己的能力来编写这个简单的lisp的时候吗?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 18:51:02 | 显示全部楼层
你一定很懒,玩一玩,然后告诉我。
 
  1. (defun c:Test (/ kw st pt)
  2. ;; Tharwat 24.08.2015    ;;
  3. (if
  4.    (and (progn
  5.           (initget 6 "20 24 30")
  6.           (setq kw
  7.                  (getkword
  8.                    "\nSpecify the insertion text key < M(**) socket M(**) > [20,24,30] <Enter = Exit>:"
  9.                  )
  10.           )
  11.         )
  12.         (setq
  13.           st (nth (vl-position kw '("20" "24" "30"))
  14.                   '("M20 socket M20" "M24 socket M24" "M30 socket M30")
  15.              )
  16.         )
  17.    )
  18.     (while (setq pt
  19.                   (getpoint
  20.                     (strcat "\nSpecify insertion point for text < "
  21.                             st
  22.                             " > <Enter = Exit>:"
  23.                     )
  24.                   )
  25.            )
  26.       (entmake (list '(0 . "TEXT")
  27.                      (cons 10 (trans pt 1 0))
  28.                      (cons 11 (trans pt 1 0))
  29.                      (cons 1 st)
  30.                      (cons 7 (getvar 'TEXTSTYLE))
  31.                      (cons 40 (getvar 'TEXTSIZE))
  32.                )
  33.       )
  34.     )
  35. )
  36. (princ)
  37. )
回复

使用道具 举报

44

主题

139

帖子

95

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 18:53:54 | 显示全部楼层
谢谢,很有效
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 18:56:19 | 显示全部楼层
 
不客气。
享受它。
回复

使用道具 举报

44

主题

139

帖子

95

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 19:00:31 | 显示全部楼层
再次感谢,但我没有添加更多描述,你能帮我吗
回复

使用道具 举报

44

主题

139

帖子

95

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 19:05:29 | 显示全部楼层
我尝试添加M40以插入插座40
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 19:07:50 | 显示全部楼层
仔细看看。
 
  1. (and (progn
  2.           (initget 6 "20 24 30 [color=magenta]40[/color]")
  3.           (setq kw
  4.                  (getkword
  5.                    "\nSpecify the insertion text key < M(**) socket M(**) > [20,24,30,[color=magenta]40[/color]] <Enter = Exit>:"
  6.                  )
  7.           )
  8.         )
  9.         (setq
  10.           st (nth (vl-position kw '("20" "24" "30" [color=magenta]"40"[/color]))
  11.                   '("M20 socket M20" "M24 socket M24" "M30 socket M30" [color=magenta]"M40 socket M40"[/color])
  12.              )
  13.         )
  14.    )
回复

使用道具 举报

44

主题

139

帖子

95

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-5 19:13:09 | 显示全部楼层
非常感谢Tharwat先生
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 19:15:21 | 显示全部楼层
 
随时欢迎你
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-12 13:13 , Processed in 0.532114 second(s), 72 queries .

© 2020-2025 乐筑天下

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