zzl9105 发表于 2018-5-26 11:22:51

用户坐标系统UCS绕世界坐标系统的Z轴旋转-90度

本帖最后由 zzl9105 于 2018-5-26 15:56 编辑

如题:用户坐标系统UCS绕世界坐标系统的Z轴旋转-90度,如何定义它,可以得到,表达式怎么写?
谢谢

zzl9105 发表于 2018-5-26 17:46:05

本帖最后由 zzl9105 于 2018-5-27 10:40 编辑

主函数调用子函数,主函数这样调用它:(setq ptb (Q-UCS-PT_LIST ptb))
ptb为点坐标表集,是多个点坐标的集合。
子函数格式按下面写法:子函数功能是 转换wcs下的坐标点集ptb到ucs下的坐标点集pt_list,UCS坐标系统是WCS绕Z轴旋转90度。

(defun Q-UCS-PT_LIST (/ pt_list)
       (if (ssget '((0 . "TEXT")(8 . "旋转90度")))
         (progn
                (command "ucs""z" 90)
                (setq pt_listnil)                     ;先定义为空集
                (foreach pt ptb
                     (setq pt_list (cons pt_list '(trans pt 0 1)))      
                )

                (setq Xmin (car (car pt_list)))
                (setq Ymin (cadr (car pt_list)))
                (foreach pt ptb
                     (if (>= Xmin (car pt)) (setq Xmin (car pt)))
                     (if (>= Ymin (cadr pt)) (setq Ymin (cadr pt)))
                )
                (command "ucs"" ")
                pt_list
            )
      )
)

调用没有成功,不知道是子函数没有写成功,还是主函数调用子函数的格式不对,
请高手指点,谢谢!
页: [1]
查看完整版本: 用户坐标系统UCS绕世界坐标系统的Z轴旋转-90度