乐筑天下

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

[编程交流] 坐标enti的转换

[复制链接]

19

主题

59

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-5 19:57:56 | 显示全部楼层 |阅读模式
所需的lisp计算所有实体的坐标。公式为:
Ynew=(Yold+6529250*0.00008949)/1.00008949
Xnew=(Xold+4855500*0.00008949)/1.00008949
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-5 20:01:22 | 显示全部楼层
为什么会这样?你说的是所有实体。一旦用户将所有坐标转换为所需值,该如何处理结果?
回复

使用道具 举报

19

主题

59

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-5 20:06:56 | 显示全部楼层
这是从一个坐标系到另一个坐标系的转换。
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 20:09:43 | 显示全部楼层
如果要转换整个图形,为什么不在x、y平面上移动所有内容,然后缩放约0,0。
 
如果有坐标的原始列表,我会使用电子表格来转换它们。
 
除非你想自己开始学习写lisp。
回复

使用道具 举报

19

主题

59

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-5 20:10:48 | 显示全部楼层
在新的坐标系中,坐标差对所有坐标系来说都不相同
协调。中心点的坐标为6529250,4855500坐标差取决于与中心点的距离。
有必要在DWG中转换点、线、多段线、文本、块。。。全体同仁。
回复

使用道具 举报

19

主题

59

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-5 20:15:48 | 显示全部楼层
我用这个代码试过了。我选择实体是不是错了。
 
  1. (defun c:22()
  2. (setq old (ssget))     
  3. (setq new nil)                                
  4. (repeat (setq i old)            
  5.    (if (car (nth (setq i (1- i)) old)))   
  6.      (progn
  7.        (setq x (cadr (nth i old))                  
  8.          y (caddr (nth i old))
  9.          )
  10.        (setq y (/ (+ y 584.3025825) 1.00008949))                          
  11.        (setq x (/ (+ x 584.3025825) 1.00008949))                        
  12.        (setq new (cons (list x y) new))
  13.    )
  14.      (setq new (cons (nth i old) new))   
  15.      )
  16.    )
  17. (entdel old)                                         
  18. (entmake new)                                 
  19. )
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-5 20:17:16 | 显示全部楼层
 
对不起,伙计,我不明白你说的那些是什么意思
 
 
 
删除选定实体并使用新坐标创建新实体?
那么您想将实体“移动”到其他位置?是这样吗?
 
让我困惑的是所有的实体,如果是这样的话,你只需要两个坐标,旧的中心点和计算的中心点,然后立刻移动所有的东西。
 
当你说转换时,你的意思是转换坐标?
 
张贴之前和之后的示例图,这将使我们更好地了解您想要实现的目标
回复

使用道具 举报

19

主题

59

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-5 20:21:08 | 显示全部楼层
就是这样。我使用新坐标将实体移动到另一个位置。具有旧坐标的实体将被删除。它是KJ平面,高度不接触。
1岁。图纸
2-新。图纸
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-5 20:23:31 | 显示全部楼层
 
同样,为什么不移动对象,而不是创建一个新对象并删除旧对象?我想我错过了什么。
什么是KJ平面?什么是不接触的?
回复

使用道具 举报

19

主题

59

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2022-7-5 20:29:03 | 显示全部楼层
每个点的坐标差都不同。南部的价值较低,而北部的价值较高,即东西走向。命令移动变换实体是不公平的。在给定的公式中,有必要计算特定坐标系中的新坐标。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-12 01:17 , Processed in 0.615893 second(s), 83 queries .

© 2020-2025 乐筑天下

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