乐筑天下

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

[编程交流] 从文本指向

[复制链接]

2

主题

10

帖子

8

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 14:27:46 | 显示全部楼层 |阅读模式
我有一个图形,有一组点(2000+),具有正确的X,Y信息,但其中Z是0。Z高度包含在点附近的文本中。
 
任何人都可以共享一个lisp例程,该例程将文本信息作为Z值附加到点,或将文本转换为具有适当Z值的点。
 
点位于ROAD\u PT和SITE\u PT层上。
文字信息位于ROAD\u ELEV和SITE\u ELEV图层上。
 
谢谢
回复

使用道具 举报

12

主题

395

帖子

384

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-6 14:34:46 | 显示全部楼层
你有绘画的例子吗?
回复

使用道具 举报

2

主题

10

帖子

8

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 14:39:56 | 显示全部楼层
干得好
152749htemmxst3559t3rm.jpg
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 14:45:01 | 显示全部楼层
如果你有原始的数据文本文件,它会更容易。
 
我看到一些观点没有文字-然后呢?
回复

使用道具 举报

2

主题

10

帖子

8

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 14:47:26 | 显示全部楼层
问题是没有文本文件。
没有文本的点有一个参考号,就像其他点一样-为了清晰起见,我刚刚关闭了图层。
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 14:53:15 | 显示全部楼层
这将有助于了解文本是否有与点相同的理由,即底部中心?
同样有用的是一个有20个左右点的绘图片段,这样任何能够编写Lisp的人都可以进行一些实验。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 14:59:59 | 显示全部楼层
正如所暗示的,这里困难的部分是识别(通过编程角度)哪个文本项与哪个点对应。
 
在SelectionSet过程中,项目是随机收集的,因此大多数情况下不会为点分配正确的Z值。
 
另一种选择是在每个点周围创建一个交叉窗口的选择集,但这显然仍然不是100%准确,因为可能会遗漏一些文本项。
 
另一个需要考虑的选项是按任意坐标(例如x)对点和文本的两个选择集进行排序,如果文本基点接近该点,则两个选择集的顺序将正确。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 15:02:11 | 显示全部楼层
 
试一试:
 
  1. [b][color=RED]([/color][/b][b][color=BLUE]defun[/color][/b] c:ptZ [b][color=RED]([/color][/b][b][color=BLUE]/[/color][/b] spc ss Objlst[b][color=RED])[/color][/b]
  2. [b][color=RED]([/color][/b][b][color=BLUE]vl-load-com[/color][/b][b][color=RED])[/color][/b]
  3. [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] spc [b][color=RED]([/color][/b][b][color=BLUE]vla-get-ModelSpace[/color][/b]
  4.              [b][color=RED]([/color][/b][b][color=BLUE]vla-get-ActiveDocument[/color][/b]
  5.                [b][color=RED]([/color][/b][b][color=BLUE]vlax-get-acad-object[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  6. [b][color=RED]([/color][/b][b][color=BLUE]if[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] ss [b][color=RED]([/color][/b][b][color=BLUE]ssget[/color][/b] [b][color=#ff00ff]"_X"[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=RED]([/color][/b][b][color=RED]([/color][/b][b][color=#009900]0[/color][/b] . [b][color=#ff00ff]"TEXT"[/color][/b][b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=#009900]8[/color][/b] . [b][color=#ff00ff]"ROAD_ELEV,SITE_ELEV"[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  7.    [b][color=RED]([/color][/b][b][color=BLUE]progn[/color][/b]
  8.      [b][color=RED]([/color][/b][b][color=BLUE]setq[/color][/b] Objlst [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]cadr[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]ssnamex[/color][/b] ss[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  9.      [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b]
  10.        [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b]
  11.          [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b]x[b][color=RED])[/color][/b]
  12.            [b][color=RED]([/color][/b][b][color=BLUE]vla-addPoint[/color][/b] spc
  13.              [b][color=RED]([/color][/b][b][color=BLUE]vlax-3D-point[/color][/b] x[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]              
  14.      [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b]
  15.        [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b]
  16.          [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b]x y[b][color=RED])[/color][/b]
  17.            [b][color=RED]([/color][/b][b][color=BLUE]list[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]car[/color][/b] x[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]cadr[/color][/b] x[b][color=RED])[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]distof[/color][/b] y[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  18.        [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b]
  19.          [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b]
  20.            [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b]x[b][color=RED])[/color][/b]
  21.              [b][color=RED]([/color][/b][b][color=BLUE]cdr[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]assoc[/color][/b] [b][color=#009900]10[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]entget[/color][/b] x[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] Objlst[b][color=RED])[/color][/b]
  22.        [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b]
  23.          [b][color=RED]([/color][/b][b][color=BLUE]function[/color][/b]
  24.            [b][color=RED]([/color][/b][b][color=BLUE]lambda[/color][/b] [b][color=RED]([/color][/b]x[b][color=RED])[/color][/b]
  25.              [b][color=RED]([/color][/b][b][color=BLUE]cdr[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]assoc[/color][/b] [b][color=#009900]1[/color][/b] [b][color=RED]([/color][/b][b][color=BLUE]entget[/color][/b] x[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b] Objlst[b][color=RED])[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  26.      [b][color=RED]([/color][/b][b][color=BLUE]mapcar[/color][/b] [b][color=DARKRED]'[/color][/b][b][color=BLUE]entdel[/color][/b] Objlst[b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  27.    [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b] [b][color=#ff00ff]"\n<!> No Text Found <!>"[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]
  28. [b][color=RED]([/color][/b][b][color=BLUE]princ[/color][/b][b][color=RED])[/color][/b][b][color=RED])[/color][/b]

 
 
{ModelSpace}
回复

使用道具 举报

2

主题

10

帖子

8

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 15:08:05 | 显示全部楼层
下面是随机选择点的dwg
积分。图纸
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 15:10:40 | 显示全部楼层
我看到文本插入点大多位于与该点的某个偏移处,但存在变化,并且文本的大小似乎会改变偏移。相当棘手。我有一个lisp,它在点的(x,y)处放置一个新点,z值从文本中提取,但手动一次一个点,但现在,人们似乎希望能在短时间内完成。
给你李:眨眼:
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-5 00:16 , Processed in 0.428267 second(s), 85 queries .

© 2020-2025 乐筑天下

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