Đến nội dung


Hình ảnh
- - - - -

Nhờ các cao thủ sửa giùm mình lisp này nha!


  • Please log in to reply
2 replies to this topic

#1 Ngocnguyenn

Ngocnguyenn

    biết pan

  • Members
  • Pip
  • 7 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 30 May 2015 - 05:05 PM

http://www.cadviet.c.../4/95808_tg.lsp

mình muốn sửa cách trả về kết quả của lisp này ra 1 text mới. ai biết sửa giùm mình nhé!


  • -1

#2 Tr.CongSon

Tr.CongSon

    biết lệnh array

  • Members
  • PipPipPip
  • 183 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 31 May 2015 - 10:24 AM

Code down không được bạn ..Up lại nhé!


  • 0

#3 Ngocnguyenn

Ngocnguyenn

    biết pan

  • Members
  • Pip
  • 7 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 31 May 2015 - 05:47 PM

(defun c:TG ()
 (setq olderr *error* *error* myerror)
 (prompt "\nChon cac text so hoac Dim can tinh tong")
 (setq SS (ssget))
 (setq TONG 0)
 (if SS 
  (progn
   (setq N (sslength SS) M 0 L 0)
   (repeat N
    (setq S (entget (ssname SS M)))
    (setq V0 (cdr (assoc 0 S)))    
    (if (= V0 "TEXT")
     (progn
      (setq VALUE (cdr (assoc 1 S)))
      (if (numberp (distof VALUE))
       (progn
        (setq DT (atof VALUE))
        (setq TONG (+ TONG DT))
        (setq L (1+ L))
       )
      )
     )
     (if (or (= V0 "DIMENSION") (= V0 "ARC_DIMENSION"))
      (progn  
       (setq V1 (read (cdr (assoc 1 S))))
       (setq V42 (cdr (assoc 42 S)))
       (if (numberp V1) (setq TONG (+ TONG V1))
        (progn 
         (if (/= V42 -1.0) (setq TONG (+ TONG V42))
          (progn
           (setq PT10  (cdr (assoc 10 S)))
           (setq PT13  (cdr (assoc 13 S)))
           (setq PT14  (cdr (assoc 14 S)))
           (setq ANG1  (angle PT14 PT10))
           (setq PT13I (polar PT13 ANG1 2))
           (setq ANG2  (+ ANG1 (/ PI 2)))
           (setq PT14I (polar PT14 ANG2 2))
           (setq PT13N (inters PT13 PT13I PT14 PT14I nil))  
           (setq DS    (distance PT13N PT14))
           (setq DSTY  (cdr (assoc 3 S)))
           (setq DSC   (cdr (assoc 144 (tblsearch "DIMSTYLE" DSTY))))
           (setq VALUE (* DS DSC))
           (if (/= nil VALUE) (setq TONG (+ TONG VALUE)))
          )
         )
        )
       )
       (setq L (1+ L))
      )
     )
    )
    (setq M (+ 1 M))
   )
   (princ TONG)
   (princ "/")
   (princ L)
   (princ "=")
   (princ (/ TONG L))
   (princ)
   (setq TOTB (getstring "\nTinh Tong/trung Binh (T/B):<T> "))
   (if (= TOTB "") (setq TOTB "T") (setq TOTB (strcase TOTB)))
   (setq GIATRI (entget (car (entsel "\nChon text de gan gia tri"))))
   (setq GIA (assoc 1 GIATRI))
   (if (= TOTB "T") 
    (setq NT1 (cons 1 (rtos TONG)))
    (setq NT1 (cons 1 (rtos (/ TONG L))))
   )
   (setq GIATRI (subst NT1 GIA GIATRI))
   (entmod GIATRI)
   (princ)
  )
 )
)
 
Đây bạn ơi... bạn sửa cách xuất kết quả giùm mình nhé! 

  • -1