找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 692|回复: 8

[已解决] 【已解决】矩形的中心点怎么获取及长边的旋转角度

[复制链接]

已领礼包: 20个

财富等级: 恭喜发财

发表于 2017-8-5 03:33:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 wbf424069638 于 2018-5-18 21:30 编辑

求矩形的中心点怎么获取及长边的旋转角度,大神帮哈忙解答下,求代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 604个

财富等级: 财运亨通

发表于 2017-8-5 10:49:19 | 显示全部楼层
对角点的中点就是中心。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2017-8-5 14:50:14 | 显示全部楼层
问问题最好配个截图,你说的矩形,就是四条边的多段线吧,你已知的是什么呢? 多段线实体? 那你求出四个顶点, 对角线顶点的中点就是中心,

边长,你根据顶点间的长度,判断哪条边最长。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-8-5 18:51:23 | 显示全部楼层

你的思路我大概知道了 ,但是我用COMMAND : (SETQ TEMP (ENTGET (CAR (ENTSEL)))),查看矩形的像素数据时,四个顶点DXF码都是10,我不知道这四个点怎么调用和区分,
QQ截图20170805184454.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-8-5 19:05:09 | 显示全部楼层

每个10点都是一个顶点, 你用 顶点 搜索论坛,一大推求多段线顶点的代码。

试试

  1. (mapcar        'cdr
  2.         (vl-remove-if '(lambda (x) (/= (car x) 10)) (entget (car (entsel))))
  3. )


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2017-8-5 19:07:23 | 显示全部楼层

使用vl-remove-if-not提取组码10的值,闭合的矩形应该是是个点,1、3或2、4点求中点(平均坐标)就是你要的点。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 550个

财富等级: 财运亨通

发表于 2017-8-5 20:05:42 | 显示全部楼层
(vl-remove-if-not '(lambda (x) (= (car x) 10)) (entget en))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2017-8-5 20:53:36 | 显示全部楼层
  1. (defun c:tt ()
  2.   (if
  3.     (and (setq
  4.            ss (ssget ":N:S" '((0 . "LWPOLYLINE") (-4 . "&=") (70 . 1)))
  5.          )
  6.          (setq e (ssname ss 0))
  7.          (setq pts (mapcar 'cdr
  8.                            (vl-remove-if
  9.                              '(lambda (x) (/= (car x) 10))
  10.                              (entget e)
  11.                            )
  12.                    )
  13.          )
  14.          (or (= (setq len (length pts)) 4)
  15.              (and (= len 5)
  16.                   (equal (last pts) (car pts) 1e-3)
  17.              )
  18.          )
  19.     )
  20.      (progn
  21.        (setq p1          (car pts)
  22.              p2          (nth 1 pts)
  23.              p3          (nth 2 pts)
  24.              an          (angle p1 p3)
  25.              cen  (polar p1 an (/ (distance p1 p3) 2.0))
  26.              dis1 (distance p1 p2)
  27.              dis2 (distance p2 p3)
  28.        )
  29.        (princ "\n中心点:")
  30.        (princ cen)
  31.        (princ "\n长边长度:")
  32.        (princ (max dis1 dis2))
  33.      )
  34.   )
  35.   (princ)
  36. )


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

 楼主| 发表于 2017-8-5 21:07:03 | 显示全部楼层
谢谢这么多大神解答,感谢!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-21 11:29 , Processed in 0.335780 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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