本帖最后由 gcho 于 2011-9-4 16:46 编辑
- ;记忆上次输入比例
- (if *Scale* (setq SC (getreal (strcat "\n输入比例1:<" (rtos *Scale* 2 0) ">:") ) )
- (setq SC (getreal "\n输入比例1:<100>: ")))
- (if (null SC) (setq SC *Scale*) (setq *Scale* SC ))
- ;记忆上次基点高程
- (if *NewBASE* (setq H_BASE (getreal (strcat "\n基点高程<" (rtos *NewBASE* 2 2) ">:") ) )
- (setq H_BASE (getreal "\n输入基点高程<0.00>: ")))
- (if (null H_BASE) (setq H_BASE *NewBASE*) (setq *NewBASE* H_BASE ))
- ;记忆上次基点位置
- (if *NewPTBASE* (setq PT_BASE ??? ) )
- (setq PT_BASE (getpoint "\n指定基点<0,0,0>: ")))
- (if (null PT_BASE) (setq H_BASE *NewPTBASE*) (setq *NewPTBASE* PT_BASE ))
上面三块代码分别是记忆上次;记忆上次输入比例,记忆上次基点高程,记忆上次基点位置
现在有两个问题:
1、最后一块记忆上次基点位置时不能仿照前两个来写,那“???”处不知道该怎么填(或者另辟方法);
2、前面两块虽然能正确地运行,但是也有一个缺点,就是程序初次运行时SC、H_BASE值为空,非要给定一个值后它们才能往下运行,再次运行时就能记住给定的那个值。
|