明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1545|回复: 4

[求助]如何比较两点间的长度且保留较大边的坐标?

[复制链接]
发表于 2005-6-15 16:52:00 | 显示全部楼层 |阅读模式
如何比较两点间的长度且保留较大边的坐标? 具体要求祥见acdl图,数据格式如下: pt1,bm1001,-96.7239,101.1941,10.201
pt2,bm1001,-47.9817,135.3592,11.210
pt3,bm1001,6.6300,82.3268,14.210
pt4,bm1001,58.3896,121.6126,13.351
pt5,bm1001,69.4815,57.3913,16.352 谢谢各位!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2005-6-15 18:48:00 | 显示全部楼层
  1. (defun c:test( / f str pts pts2 ptm1 ptm2 ptc ang)
  2.    (setq f (open "e:\\a.txt" "r"))
  3.    (while (setq str (read-line f))
  4.        (setq str (vl-string-translate "," " " str))
  5.        (setq str (read (strcat "(" str ")")))
  6.        (setq pts (append pts (list (cddr str))))
  7.    )
  8.    (close f)
  9.    (setq pts2 (mapcar '(lambda(e1 e2) (list (distance e1 e2) e1 e2)) (reverse (cdr (reverse pts))) (cdr pts)))
  10.    (setq pts2 (vl-sort pts2 '(lambda(e1 e2) (> (car e1) (car e2)))))
  11.    (command "_.line")
  12.    (mapcar 'command pts)
  13.    (command "")
  14.    (setq ptm1 (cadar pts2) ptm2 (caddar pts2))
  15.    (setq ptc (mapcar '(lambda(e1 e2) (/ (+ e1 e2) 2)) ptm1 ptm2))
  16.    (setq ang (angle ptm1 ptm2))
  17.    (command "_.text" ptc "" (angtos ang) "bm1001")
  18.    (princ)
  19. )
 楼主| 发表于 2005-6-15 20:41:00 | 显示全部楼层
谢谢,太感谢啦,我试试看。
发表于 2005-6-16 07:42:00 | 显示全部楼层
适于pline线


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2005-6-17 17:35:00 | 显示全部楼层
meflying谢谢你,你的程序帮我解决问题啦,太厉害啦。真忙的谢谢你。


xyp1964,你的这个程序我不太会用,且好像也不是解决我的问题,再有就是保密性太好。呵呵~~~~~~~~`
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-17 15:53 , Processed in 0.172441 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表