明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3194|回复: 12

[ 求助 ] 如何修改LWPOLYLINE所有坐标?

  [复制链接]
发表于 2003-11-6 10:16:00 | 显示全部楼层 |阅读模式
修改 LINE,ARC,CIRCLE用(subst(cons 10 pt1) (aossc 10 e2)e2)可直接修改,LWPOLYLINE不能直接。如何修改LWPOLYLINE所有坐标?
发表于 2003-11-6 10:18:00 | 显示全部楼层
为何不可以?一样可以的,只不过取点的时候不那么简单而已,关于取LWPOLYLINE顶点的问题刚刚才有人发了原创帖,看看吧
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=12285
发表于 2003-11-6 11:28:00 | 显示全部楼层
一样是可以修改的。不过顶点太多,你要确定你要修改那一个坐标的顶点才行。

不过你说的修改所有的坐标,不知有没有什么特别意义?如果那样,为什么不重新生成一条呢?
 楼主| 发表于 2003-11-6 11:43:00 | 显示全部楼层
要求所有的顶点都是按比例修改,同时保持绘图顺序不变。
发表于 2003-11-6 11:46:00 | 显示全部楼层
顶点按比例修改?是什么意思,是指修改后的图形和修改前的图形形状还保持不变,只是比例变化了吗?那为何不用SCALE命令
 楼主| 发表于 2003-11-6 11:49:00 | 显示全部楼层
要求X轴与Y轴比例不一样
发表于 2003-11-6 11:53:00 | 显示全部楼层
那到底是怎样啊,你倒是说清楚啊,不要问一点说一点,
 楼主| 发表于 2003-11-6 13:18:00 | 显示全部楼层
(defun wite_lwpolyline()
(setq  m 0)
  (foreach xy e1
     (if(= (car xy) 10)
       (progn
       (setq ptx(append ptx (list(cadr xy))))
       (setq pty(append pty (list(caddr xy))))
       (setq m(1+ m))
          )
         )
          (setq pt1 (list(nth m ptx) (nth m pty))) ;;原始坐标
       (setq pt1 (list (*(nth m ptx) 10) (*(nth m pty)50)))) ;;修改后的坐标,但是我不知怎样替换
            )
发表于 2003-11-6 13:34:00 | 显示全部楼层
(defun wite_lwpolyline (ent / e1 xy ptx pty pt1)
  (setq e1 (entget ent))
  (foreach xy e1
    (if        (= (car xy) 10)
      (progn
        (setq ptx (cadr xy))
        (setq pty (caddr xy))
        (setq pt1 (list (*  ptx 10) (* pty 50)))
        (setq e1 (subst (cons 10 pt1) xy e1))
      )
    )
  )
  (entmod e1)
  ;;修改后的坐标,但是我不知怎样替换
)
发表于 2003-11-6 19:41:00 | 显示全部楼层
楼主的意思,好像是对X轴与Y轴比例不一的纵剖面图进行缩放?上面的程序看不懂,因为是菜鸟!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 04:36 , Processed in 0.198225 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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