找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1616|回复: 3

(完成)[编程申请]:将lwployline转换成pline的程序

[复制链接]
发表于 2002-5-6 12:24:01 | 显示全部楼层 |阅读模式

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

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

×
从r14开始,autodesk提供了两种新的线类型,lwployline和spline,官方文件据说要将两种线替换pline线,可是在实际操作中用这种线经常碰到麻烦,就是不能向外offset,也不好用trim和extend,有时offset后,两条线变成同一个实体。
能不能编个这样的程序,就是将这两种线转换成pline,请晓东看过来,各位高手请积极参与,提一些看法。

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

已领礼包: 20个

财富等级: 恭喜发财

发表于 2002-5-6 13:14:57 | 显示全部楼层
SPLINE到POLYLINE的转换“晓东工具箱”里面提供了,我也想知道如何把LWPOLYLINE转换成POLYLINE,哪位高手有方法?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2002-5-6 13:27:25 | 显示全部楼层
用下面的程序,可以Polyline和LWPolyline互换了。^_^
注意:以下代码为了显示,过滤选择中有空格,请下载附件!!!
  1. ;|
  2.    命令:xconvert
  3.    
  4.    功能:ACAD标准命令CONVERT的增强,可以在POLYLINE和LWPOLYLINE之间相互转换

  5.    说明:ACAD本身的对象模型就不允许把拟和的转换成LWPOLYLINE对象,所以程序过滤了拟合曲线
  6.    程序配合XDRX_API build 20428+版本使用,朋友们可以把这个LISP拷贝到“晓东工具箱”的安装的
  7.           LISP目录,自己加入到菜单里面就可以非常方便的使用了。
  8.           关于程序的建议请到“晓东CAD空间-编程申请”论坛
  9.           [url]http://www.xdcad.net/forum留言[/url]         
  10.    
  11. |;

  12. (defun c:xconvert (/ info filter ss e tf)
  13.   (initget "Lw Poly")
  14.   (if (not
  15.         (setq tf (getkword "\n请选择转换方式[Lw->poly | Poly->lw]<P>:"))
  16.       )
  17.     (setq tf "Poly")
  18.   )
  19.   (if (= tf "Lw")
  20.     (setq filter '((0 . "lwpolyline"))
  21.           info         "\n请选取要转换成老的多义线的LWPOLYLINE实体<全选>:"
  22.     )
  23.     (setq filter (list '(-4 . "< or")
  24.                        '(0 . "polyline")
  25.                        '(70 . 1)
  26.                        '(70 . 0)
  27.                        '(-4 . "or >")
  28.                  )
  29.           info         "\n请选取要转换成LWPOLYLINE的老的多义线实体<全选>:"
  30.     )
  31.   )
  32.   (prompt info)
  33.   (if (not (setq ss (ssget filter)))
  34.     (setq ss (ssget "x" filter))
  35.   )
  36.   (xdrx_setsstodb ss 0)
  37.   (while (setq e (xdrx_getentdata 0))
  38.     (if        (= tf "Lw")
  39.       (xdrx_polyline->2dpolyline e)
  40.       (xdrx_polyline_ConvertFrom e)
  41.     )
  42.   )
  43.   (prompt (strcat "\n成功转换了 "
  44.                   (itoa (sslength ss))
  45.                   (if (= tf "Lw")
  46.                     " 个Lwpolyline实体!"
  47.                     " 个Polyline实体!"
  48.                   )
  49.           )
  50.   )
  51.   (princ)
  52. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2002-5-6 13:51:35 | 显示全部楼层

高!实在是高!

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-8 16:42 , Processed in 0.198523 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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