找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 5879|回复: 13

[编程申请] 绘制两条多段线的中心线

[复制链接]

已领礼包: 77个

财富等级: 招财进宝

发表于 2017-6-9 17:52:35 | 显示全部楼层 |阅读模式

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

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

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

已领礼包: 51个

财富等级: 招财进宝

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

多段线中心线.gif

  1. (defun c:tt ()
  2.   (if (and (setq e1 (car (xdrx_entsel
  3.                            "\n拾取第一条多段线<退出>:"
  4.                            '((0 . "LWPOLYLINE"))
  5.                          )
  6.                     )
  7.            )
  8.            (setq e2 (car (xdrx_entsel
  9.                            "\n拾取第一条多段线<退出>:"
  10.                            '((0 . "LWPOLYLINE"))
  11.                          )
  12.                     )
  13.            )
  14.       )
  15.     (progn
  16.       (setq g1    (xdge::constructor e1)
  17.             g2    (xdge::constructor e2)
  18.             g1lst (xdge::getpropertyvalue g1 "getcurvelist")
  19.             g2lst (xdge::getpropertyvalue g2 "getcurvelist")
  20.       )
  21.       (if (= (length g1lst)(length g2lst))
  22.         (progn
  23.           (setq ents nil)
  24.           (mapcar '(lambda (x y)
  25.                      (setq t1 (xdge::type x)
  26.                            t2 (xdge::type y)
  27.                      )
  28.                      (cond
  29.                        ((= t1 t2)
  30.                         (mapcar 'set '(p1-1 p1-mid p1-2)(xdge::getpropertyvalue x "startpoint" "midpoint" "endpoint"))
  31.                         (mapcar 'set '(p2-1 p2-mid p2-2)(xdge::getpropertyvalue y "startpoint" "midpoint" "endpoint"))
  32.                         (setq pmid1 (xdrx_midp p1-1 p2-1)
  33.                               pmid2 (xdrx_midp p1-2 p2-2)
  34.                               pmid3 (xdrx_midp p1-mid p2-mid)
  35.                         )
  36.                         (if (= t1 "kLineSeg3d")
  37.                           (setq g (xdge::constructor "kLineSeg3d" pmid1 pmid2))
  38.                           (setq g (xdge::constructor "kCircArc3d" pmid1 pmid3 pmid2))
  39.                         )
  40.                         (setq ents (cons g ents))
  41.                        )
  42.                       )
  43.                    )
  44.                   g1lst
  45.                   g2lst
  46.           )
  47.           (if ents
  48.             (progn
  49.               (setq ss (xdge::entity:make (reverse ents)))
  50.               (xdrx_curve->polyline ss)
  51.               (xdrx_setpropertyvalue (entlast) "color" 7)
  52.               (xdge::free ents)
  53.             )
  54.           )
  55.         )
  56.         (progn
  57.           (xdrx_prompt "\n两条多段线段数不同,不能绘制.")
  58.         )
  59.       )
  60.       (xdge::free g1 g2 g1lst g2lst)
  61.     )
  62.   )
  63.   (princ)
  64. )


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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-6-9 18:59:56 | 显示全部楼层
1、请把手工画的图,截图贴上来。

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

使用道具 举报

已领礼包: 77个

财富等级: 招财进宝

 楼主| 发表于 2017-6-10 10:03:44 | 显示全部楼层

图片及cad图都上传了,论坛中的绘制中心线都是绘制直线的,多段线的无法实现
两条多段线绘制中心线.jpg

两条多段线绘制中心线.zip

20.48 KB, 下载次数: 177, 下载积分: D豆 -1 , 活跃度 1

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-6-10 13:44:07 | 显示全部楼层
本帖最后由 newer 于 2017-6-10 13:46 编辑



搜狗截图20170610134316.png

这样图形的中线你怎么画呢?

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

使用道具 举报

已领礼包: 77个

财富等级: 招财进宝

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

使用道具 举报

已领礼包: 77个

财富等级: 招财进宝

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

使用道具 举报

已领礼包: 77个

财富等级: 招财进宝

 楼主| 发表于 2017-6-12 15:58:08 | 显示全部楼层

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-6-12 21:23:46 | 显示全部楼层

段数不同,可能画出来的就乱了,

QQ截图20170612212131.png

上面这个图,每段的中点连线,位置就串了, 上面那个最后还悬着一个,这只是一个简单的情况,如果段数差很多,就更没法画了,极端点,上面3个段,下面10个段,能画出来吗?

还是画图的时候就按规矩来,后面处理也方便。

你说的这种情况,用另外的工具,多段线增加节点或者删除节点,让两边的段保持一致。尽可能的让计算机理解你的图。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 77个

财富等级: 招财进宝

 楼主| 发表于 2017-6-13 08:13:39 | 显示全部楼层

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

使用道具 举报

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

使用道具 举报

已领礼包: 3个

财富等级: 恭喜发财

发表于 2018-6-20 16:54:44 | 显示全部楼层
请问,我复制代码建成lisp文件,加载到cad里面,输入命令提示未知命令,这是怎么回事啊?
QQ截图20180620165351.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 3个

财富等级: 恭喜发财

发表于 2018-6-20 16:56:21 | 显示全部楼层
请问,为什么我加载了这个lisp文件,输入命令提示未知命令呢?
QQ截图20180620165351.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 16:15 , Processed in 0.599862 second(s), 63 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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