本帖最后由 作者 于 2004-1-10 13:49:19 编辑
注意画斜杠注释部分说明

- ;直接点取要标注的点,右键结束
- (defun MakeText(pt1 str h / ptInsert TextDxf)
- (setq TextDxf '(
- (0 . "MTEXT")
- (100 . "AcDbEntity") ; 需要所有 R12 之后版本的图元
- (100 . "AcDbMText") ; 将图元标记为 MTEXT
- )
- )
- (setq TextDxf (append TextDxf (list
- (cons 10 pt1)
- (cons 1 str)
- (cons 40 h)
- (cons 50 (/ pi 2))
- )
- )
- )
- (entmake TextDxf)
- (princ)
- )
- (defun err(msg)
- (princ msg)
- (setq *error* errtmp)
- (setvar "dimzin" zin)
- (princ)
- )
- (defun C:dimy( / i pt y1 y)
- (setq errtmp *error*)
- (setq *error* err)
- (setq zin (getvar "dimzin"))
- (setvar "dimzin" 1)
- (setq i 1)
- (setq y1 nil)
- (while (setq pt (getpoint (strcat "\n点取第" (itoa i) "点:")))
- (if (not y1)
- (progn
- (setq y1 (cadr pt))
- (setq y 0)
- )
- (setq y (/ (- (cadr pt) y1) 10.0))
- )
- (MakeText (list;///////////////////////////此处供修改标注点位置////////////////////////
- (+ (car pt) 0);正数表示沿x正方向移,否则就是负方向//////////////////////////
- (+ (cadr pt) 0);正数表示沿x正方向移,否则就是负方向/////////////////////////
- );///////////////////////////此处供修改标注点位置////////////////////////////
- (rtos y 2 3)
- 2.5
- )
- (setq i (1+ i))
- )
- (setq *error* errtmp)
- (setvar "dimzin" zin)
- )
|