乐筑天下

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

[编程交流] 高程点程序

[复制链接]

4

主题

11

帖子

7

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-5 19:46:46 | 显示全部楼层 |阅读模式
我想知道是否有人知道已经编写的程序,或者如何更正一个简单的程序,该程序将从一个点提取高程,并将文本中的高程放置在节点上,小数点位于该点的节点上。
 
任何帮助都将不胜感激。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 19:52:03 | 显示全部楼层
沿着这些路线?
 
  1. (defun c:tpt (/ Make_Point Make_Text pt)
  2. (defun Make_Point (pt)
  3.    (entmakex (list (cons 0 "POINT") (cons 10 pt))))
  4. (defun Make_Text (pt val)
  5.    (entmakex (list (cons 0 "TEXT")
  6.                    (cons 10 pt)
  7.                    (cons 40 (getvar "TEXTSIZE"))
  8.                    (cons 1 val)
  9.                    (cons 72 1)
  10.                    (cons 73 1)
  11.                    (cons 11 pt))))
  12. (while (setq pt (getpoint "\nPick Point: "))
  13.    (Make_Point (setq pt (trans pt 1 0)))
  14.    (Make_Text pt (rtos (caddr pt))))
  15. (princ))
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-5 19:55:38 | 显示全部楼层
李看起来不像是“在点的节点上用小数点”实现的。
 
这个问题以前已经讨论过了(小数点左右两侧的文本大小不同)。
除非可以精确知道小数点和文本的位置,否则您可能必须为小数点的L和R部分创建单独的文本项。
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 19:59:26 | 显示全部楼层
AutoCAD始终缺少十进制对正。
 
通常,水文测量受益于小数点对齐(假设小数点是点而不是逗号)
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 20:00:45 | 显示全部楼层
 
没错,我只是用了下中对齐
回复

使用道具 举报

1

主题

316

帖子

311

银币

初来乍到

Rank: 1

铜币
29
发表于 2022-7-5 20:02:44 | 显示全部楼层
十进制对正有什么用?,这是一个近似值:
 
  1. (defun c:tpt (/ Make_Point Make_Text pt)
  2. (setvar 'dimzin 0)
  3. (defun Make_Point (pt)
  4.    (entmakex (list (cons 0 "POINT") (cons 10 pt))))
  5. (defun Make_Text (pt val)
  6.    (setq pt1 (polar pt (* (/ 16.  180.) pi) (* (getvar 'textsize) 3.6099)))
  7.    (entmakeX
  8.            (list '(0 . "MTEXT")
  9.                  '(100 . "AcDbEntity")
  10.                  '(100 . "AcDbMText")
  11.                  '(71 . 3)
  12.                  '(8 . "0")
  13.                  (list 10 (car pt1) (cadr pt1)(caddr pt))
  14.                  (cons 40  (getvar 'textsize));
  15.                  (cons 1
  16.                    (strcat
  17.                      "{\\fCourier New|b0|i0|c0|p49;"
  18.                      val
  19.                      "}"
  20.                    )
  21.                  )
  22.            )
  23.              ))
  24. (while (setq pt (getpoint "\nPick Point: "))
  25.    ;(Make_Point (setq pt (trans pt 1 0)))
  26.    (Make_Text pt (rtos (caddr pt) 2 3)))
  27. (princ))
回复

使用道具 举报

6

主题

249

帖子

247

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 20:07:04 | 显示全部楼层
 
当我试着运行它时,它会倾斜。。
错误如下。。。
命令:appload
tpt。lsp已成功加载。
 
命令:;错误:错误的参数类型:numberp:nil
回复

使用道具 举报

1

主题

316

帖子

311

银币

初来乍到

Rank: 1

铜币
29
发表于 2022-7-5 20:09:50 | 显示全部楼层
Stevesfr,我没有发现这个错误,我稍微修改了一下,请再试一次,这不是确切的位置,但我可以从修改lee的代码中得到最接近的位置,但我仍然建议文本插入点在点上,而不是小数点上。
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 20:13:44 | 显示全部楼层
 
你显然没有经历过水文测量,这将非常有用。
 
然而,您的代码很巧妙,但应该限定为只能使用小数点后三位和字体。
 
但是它可以被修改为使用不同的小数位数和不同的字体。
回复

使用道具 举报

1

主题

316

帖子

311

银币

初来乍到

Rank: 1

铜币
29
发表于 2022-7-5 20:17:01 | 显示全部楼层
没有埃尔登,从未从事过水文测量,这和水深测量是一样的吗?不管怎样,我只要用谷歌搜索一下。你说得对,它可以修改为不同的小数位数,但必须正确对齐,并且只适用于等距字体。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-12 00:42 , Processed in 0.468235 second(s), 72 queries .

© 2020-2025 乐筑天下

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