找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1118|回复: 11

[求助] [求助]:多义线方向问题

[复制链接]
发表于 2005-7-30 10:04:16 | 显示全部楼层 |阅读模式

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

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

×
有没有什么办法可以让多义线具有方向性, 并且可以改变多义线的方向! 谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-7-30 23:49:46 | 显示全部楼层

Re: [求助]:多义线方向问题

最初由 网络水手 发布
[B]有没有什么办法可以让多义线具有方向性, 并且可以改变多义线的方向! 谢谢! [/B]

多义线本身就具有方向性。
不知要如何改变多义线的方向?
可以参考:
http://www.xdcad.net/forum/showthread.php?s=&threadid=325268
之test065(多义线顶点序号及坐标)程序。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-8-1 10:11:18 | 显示全部楼层
不知要如何改变多义线的方向?
就是起点变终点,终点变起点!
因为我计划的程序是两条多义线的点对应问题! 要求两条多义线的点要一一对应!
谢谢xyp1964!
谢谢大家的关注!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2005-8-1 16:12:25 | 显示全部楼层
对于不闭合的多义线一般按顺时针方向自动设定起点和终点。

对于闭合的多义线起点却定不下来,当然方向也是顺时针方向。

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

使用道具 举报

发表于 2005-8-1 18:01:43 | 显示全部楼层
把每个顶点坐标读出来,然后再画一条线,按倒序画就可以了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-8-2 20:34:32 | 显示全部楼层
最初由 网络水手 发布
[B]对于不闭合的多义线一般按顺时针方向自动设定起点和终点。

对于闭合的多义线起点却定不下来,当然方向也是顺时针方向。

如何才能更改为逆时针方向呢?闭合的多义线如何确定其起点呢? [/B]



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

使用道具 举报

 楼主| 发表于 2005-8-2 21:01:08 | 显示全部楼层
最初由 oyxx_1023 发布
[B][QUOTE]最初由 网络水手 发布
[B]对于不闭合的多义线一般按顺时针方向自动设定起点和终点。

对于闭合的多义线起点却定不下来,当然方向也是顺时针方向。

如何才能更改为逆时针方向呢?闭合的多义线如?.. [/B]



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

使用道具 举报

发表于 2005-8-2 21:56:32 | 显示全部楼层
方法一般:
功能:改变多义线方向(不支持非等宽、带圆弧的多义线)
  1. [FONT=courier new](load "xyp_lib")
  2. ;|加载通用函数(可在签名栏直接下载)
  3. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  4. 利用以下任何一种方式即可加载和运行通用函数内的所有子程序:
  5. 1.在acad.lsp中增加(load"xyp_lib")
  6. 2.在每个程序内增加(load"xyp_lib")
  7. 3.在command下,输入(load"xyp_lib")
  8. 4.在菜单.mnl中增加(load"xyp_lib")
  9. 5.将xyp_lib.vlx文件直接拽到cad屏幕
  10. [COLOR=red] ★通用函数下载地址:[/COLOR][url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]|;

  11. ;;;改变多义线方向(不支持非等宽、带圆弧)
  12. (defun c:test ()
  13.   (CMDLASC0)
  14.   (while (setq s1 (car (entsel "\n选择对象<退出> : ")))
  15.     (if        (or (= (DXF 0 (entget s1)) "POLYLINE")
  16.             (= (DXF 0 (entget s1)) "LWPOLYLINE")
  17.         )
  18.       (progn
  19.         (setq e            (vlax-ename->vla-object s1)
  20.               i            -1
  21.               pw    (dxf 40 (entget s1))
  22.               la    (dxf 8 (entget s1))
  23.               ptlst '()
  24.         )
  25.         (while
  26.           (setq pt0 (vlax-curve-getPointAtParam e (setq i (1+ i))))
  27.            (princ)
  28.         )
  29.         (if (= (DXF 70 (entget s1)) 1)
  30.           (setq n (- i 1))
  31.           (setq n i)
  32.         )
  33.         (setq i -1)
  34.         (repeat        n
  35.           (setq        pt0   (vlax-curve-getPointAtParam e (setq i (1+ i)))
  36.                 ptlst (cons pt0 ptlst)
  37.           )
  38. ;;;以下部分可检验方向的改变
  39.           (MKLA "坐标编号" 1)
  40.           (command "text"
  41.                    "j"
  42.                    "mr"
  43.                    (polar pt0 (* pi 0.75) (* sc 200))
  44.                    (* sc 400)
  45.                    "0"
  46.                    (rtos (+ 1 i) 2 0)
  47.           )
  48.         )
  49. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  50.         (mkla1 la)
  51.         (setvar "plinewid" pw)
  52.         (command "pline")
  53.         (while (setq pt (car ptlst))
  54.           (setq ptlst (cdr ptlst))
  55.           (command pt)
  56.         )
  57.         (if (= (DXF 70 (entget s1)) 1)
  58.           (command "c")
  59.           (command)
  60.         )
  61.         (vl-erase s1)
  62.       )
  63.     )
  64.   )
  65.   (CMDLA1)
  66. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-8-3 08:29:25 | 显示全部楼层
(command "pline")
        (while (setq pt (car ptlst))
          (setq ptlst (cdr ptlst))
          (command pt)
        )
        (if (= (DXF 70 (entget s1)) 1)
          (command "c")
          (command)
        )
        (vl-erase s1)

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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2005-8-5 08:29:02 | 显示全部楼层
最初由 陌生人 发布
[B]我也写过一个的,不过放在家里了。
现在在办公室 [/B]


帮忙发给我看看, 行吗?

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 12:26 , Processed in 0.266799 second(s), 52 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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