找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 787|回复: 10

[求助] 偏移变矩形

[复制链接]

已领礼包: 24个

财富等级: 恭喜发财

发表于 2017-6-22 00:27:14 来自手机 | 显示全部楼层 |阅读模式

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

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

×
首先由于本人完全不会编程,只能做伸手党了,特求一个多段线(包括多段线里有圆弧)偏移变矩形的程序。要求按指定的方向偏移变矩形,图层为当前,矩形为闭合图形,能记忆上次的偏移数值,运行完毕恢复捕捉。运行平台为2016CAD。恳请各位帮忙。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 24个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

 楼主| 发表于 2017-6-22 00:31:53 来自手机 | 显示全部楼层
发贴求助有点小激动没有表达清楚,是多段线中的其中一段偏移变矩形,有劳各位师傅出马帮忙了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-6-22 01:07:09 | 显示全部楼层

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

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-6-22 19:58:14 | 显示全部楼层
本帖最后由 newer 于 2017-6-22 20:00 编辑

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

使用道具 举报

已领礼包: 3904个

财富等级: 富可敌国

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2017-6-23 09:56:09 | 显示全部楼层

  1. (defun c:tt (/ ent dis e e1 p p1 pam n bulge sp ep sp1 ep1 l)
  2.   (if (and (setq ent (xdrx_entsel "\n拾取多段线: " '((0 . "lwpolyline"))))
  3.            (setq dis (getdist (cadr ent) "\n距离: "))
  4.       )
  5.     (progn
  6.       (setq e (car ent))
  7.       (while (and (setq e1 (xdrx_entsel "\n拾取偏移段: " '((0 . "lwpolyline"))))
  8.                   (eq e (car e1))
  9.                   (setq p (getpoint (cadr e1) "\n偏移边任意点: "))
  10.              )
  11.         (setq p1    (xdrx_curve_getclosestpoint e p)
  12.               pam   (xdrx_curve_getparamatpoint e p1)
  13.               n            (fix pam)
  14.               bulge (xdrx_polyline_getbulgeat e n)
  15.               sp    (xdrx_polyline_getpointat e n)
  16.               ep    (xdrx_polyline_getpointat e (1+ n))
  17.         )
  18.         (if (zerop bulge)
  19.           (progn
  20.             (setq sp1 (polar sp (angle p1 p) dis)
  21.                   ep1 (polar ep (angle p1 p) dis)
  22.             )
  23.             (xdrx_polyline_make sp ep ep1 sp1 t)
  24.           )
  25.           (progn
  26.             (setq l (xdrx_polyline_getarcsegat e n))
  27.             (if        (< (distance p (cadr l)) (caddr l))
  28.               (setq sp1        (polar sp (angle sp (cadr l)) dis)
  29.                     ep1        (polar ep (angle ep (cadr l)) dis)
  30.               )
  31.               (setq sp1        (polar sp (angle (cadr l) sp) dis)
  32.                     ep1        (polar ep (angle (cadr l) ep) dis)
  33.               )
  34.             )
  35.             (setq pl (xdrx_polyline_make sp ep ep1 sp1 t))
  36.             (xdrx_polyline_setbulgeat pl 0 bulge)
  37.             (xdrx_polyline_setbulgeat pl 2 (- bulge))
  38.           )
  39.         )
  40.       )
  41.     )
  42.   )
  43.   (princ)
  44. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-6-23 10:27:30 | 显示全部楼层


(xdrx_polyline_getarcsegat e n) 这个加上参数T,
(xdrx_polyline_getarcsegat e n t)
直接生成几何实体了,

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2017-6-23 11:04:42 | 显示全部楼层
用AcGe还要组合一个AcGeCompositeCurve3d, 直接生成一根闭合 AcDbPolyline 更简单
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 812个

财富等级: 财运亨通

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-7-1 04:04 , Processed in 0.205353 second(s), 51 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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