Neburorama 发表于 2022-9-15 06:35:37

Lisp 用于多条选定行的维度连续。需要帮忙

Lisp 用于多条选定行的维度连续。需要帮忙。

;************************************************ MAIN PROGRAM **********************
;************************************************************************************,
(defun c:DiMRAH (/ olderr snp os orth cot1 a Lyns n index Ln1 Ln2 Lst1 Lst2 Pt1 Pt2
         ang Pt1a tipe )
;VARIABLES TO SAVE FOR ERROR HANDLER FOLLOW:,
(setq    snp (getvar "snapmode")
    os(getvar "osmode")
    orth(getvar "orthomode")
      )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,
      (setvar "snapmode"0)
      (setvar "osmode"    0)
      (setvar "orthomode" 1)
;;;*******************************************************************************,

(if (= gvr nil)
      (setq gvr 1.0)
    );end if,
    (princ "\nDistancia entre Cota y Linea:<")
    (princ gvr)
    (princ "> ")
    (setq a (getdist))
    (if (= a nil)
      (setq a gvr)
    );end if,

    (setq gvr a)
;;;****************************************************************************,
(PROMPT "Select lines or <Fence> ")
(setq    Lyns (ssget)
    n    (sslength Lyns)
    index 0
    )                ;cierra setq,
   (repeat (- n 1)
      (setq    Ln1      (ssname Lynsindex);
      Ln2      (ssname Lyns (+ 1 index));
      Lst1   (entget Ln1)
      Lst2   (entget Ln2)
      Pt1      (cdr (assoc 10 Lst1))
      Pt2      (cdr (assoc 10 Lst2))
      index    (+ 1 index)
      ang   (angle Pt1 Pt2)
      Pt1a(list
             (- (car pt1) a) (+ (cadr pt1) a );
             )
          )                ;cierra setq,
;;;****************************************************************************,
(cond
    (
   (or
       (= ang   0.0 )
       (= ang 180.0 )
   )
   (setq tipe "HOR")
    )
    (
   (or
       (= ang 90.0 )
       (= ang 270.0)
   )
   (setq tipe "VER")
    )
    (
   T
   (setq tipe "ALI")
    )
)   
;;;*****************Acotaciones********************************************,
    (command "_dimlinear" pt1 pt2 pt1a )      ;
       )                ;
;;;****************************************************************************,
(setvar "snapmode"0)      ;
(setvar "osmode"   39)
(setvar "orthomode"0)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,
(setq *error* olderr)            ;
(princ)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,
(PRINC)
)
;;;;;;;;;;;;,

Neburorama 发表于 2022-9-15 07:19:33

需要尺寸帮助以使其与选定的线相关联 。

ronjonp 发表于 2022-9-15 07:50:56

QDIM ?
页: [1]
查看完整版本: Lisp 用于多条选定行的维度连续。需要帮忙