找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 858|回复: 4

[求助]:lisp高手请进,哪位能解决这个问题

[复制链接]
发表于 2007-7-13 18:05:50 | 显示全部楼层 |阅读模式

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

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

×
这是一个相当于南方矢量化软件上"线型跟踪"命令中的手动跟踪.



      问题是这样的:

               在描地形图的时候用到样条曲线和多段线,首先指定起点,然后沿着光栅图像描线,从中要不停单击左键指定下一点,不停的按住鼠标中间键将屏幕未显示的部分拖移到中间、如此循环直到描完一根复杂的曲线。

      能否在指定下一点后将刚才指定的点自动移动的屏幕中间,相当于“zoom  c "将刚才指定的点自动缩放到中间。这样的话就只需指定下一点了。

          可是用LISP在执行SPLIE与PLINE时不能同时用“ZOOM”或同时执行多个命令。

那有什么办法实现这功能,或者是同时执行画线时自动移动屏幕。

  同时执行多个命令

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

已领礼包: 10508个

财富等级: 富甲天下

发表于 2007-7-13 22:15:04 | 显示全部楼层
下面程序只是个小试验,只能画直线。
[php]
(DEFUN C:TEST ()
(SETVAR "CMDECHO" 0)
(COMMAND ".UNDO" "BE")
(SETQ PT (GETPOINT "\nFirst Point :"))
(COMMAND "LINE" PT (SETQ PT (GETPOINT PT "\nNext Point :")) "")
(WHILE (SETQ PT (GETPOINT PT "\nNext Point :"))
  (COMMAND "LINE" "" PT "")
  (COMMAND "ZOOM" "C" PT "")
)
(COMMAND ".UNDO" "E")
(SETVAR "CMDECHO" 1)
(PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-15 10:09:33 | 显示全部楼层
这一部我已经实现了,可以但是还必须把所有直线连接起来.如果选项中出现一个{放弃U}{回退到某一点}我就处理不好了
   还是非常感谢楼上的朋友
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-8 23:27:55 | 显示全部楼层
要连接起来倒是可以 就是构造选择集 最后用PE 的J命令把这个选择集接起来
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-8 23:51:10 | 显示全部楼层
(DEFUN C:TEST ()
(SETVAR "CMDECHO" 0)
(COMMAND ".UNDO" "BE")
(SETQ PT (GETPOINT "\nFirst Point :"))
(COMMAND "PLINE" PT (SETQ PT (GETPOINT PT "\nNext Point :")) "")
(SETQ SS (ENTLAST) SS1 (SSADD))  
(WHILE (SETQ PT (GETPOINT PT "\nNext Point :"))
  (COMMAND "LINE" "" PT "")
  (COMMAND "ZOOM" "C" PT "")
  (IF SS1 (SETQ SS1 (SSADD (ENTLAST) SS1)) (SETQ SS1 (ENTLAST))  )
)
(COMMAND"PEDIT" SS "J" SS1 "" "")
(SETVAR "CMDECHO" 1)
(PRINC)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 19:14 , Processed in 0.741125 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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