Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
taybacincc

Nhờ các anh sửa giùm e lips điền cao độ trên trắc ngang

Các bài được khuyến nghị

Chào tất cả các a trên diễn đàn

Em muốn nhờ các sửa hộ e lips điền cao độ của anh phamthanhbinh 1 chút ạ.

File lips e gửi ở link dưới.

Bây giờ e muốn rút gọn lips này là:

+ Mặc định luôn tỉ lệ 1:1

+ Chỉ cần điền cao độ chứ không cần điền khoảng cách

+ Cao độ điền bỏ dấu " + "

+ Chỉ cần điền cao độ ở trên trắc ngang chứ không cần xuất qua bảng và excel

Em muốn nói thêm là e lấy lips này từ Topic: http://www.cadviet.com/forum/topic/15836-lisp-dien-cao-do-bi-loi/

Nhưng lips của anh Thaistreetz thì down về không dùng được, lips của a phamthanhbinh thì dùng được

Em cũng đã sửa nhưng không được như ý

Mong các bác xem giúp ạ

Cảm ơn các bác đã quan tâm !

Code lips đây ạ ( Em up mãi không được)

 

 

;============================================================
(prompt"\n[Cmd:CDX] - GHI CAO DO DIEM TREN TRAC NGANG by Thaistreetz - huuthais@yahoo.com\n")
;============================================================
(defun c:Cdx (); / DZ pt y ptside ang OT sc1 scale tx ty tx1 ty1 p0 p1 p2 p3 p4 p5 p6 p7 fn f)
(command "Undo" "BEGIN")
(if (not h) (setq h 1))
(if (= tx nil) (setq tx 1))
(if (= ty nil) (setq ty 1))
(if (or (= h1 nil) (= tx1 nil) (= ty1 nil))
(setq h1 (getreal (strcat "\n Cao text < " (rtos h 2 2) " >: "))
         tx1 (getreal (strcat "\nTy le theo phuong X <1/"(rtos tx 2 2)">: 1/"))
         ty1 (getreal (strcat "\nTy le theo phuong Y <1/"(rtos ty 2 2)">: 1/"))) )

(if h1 (setq h h1))
(if tx1 (setq tx tx1))
(if ty1 (setq ty ty1))
(setq ATLAST (getvar "Attreq"))
(setq CMLAST (getvar "cmdecho"))
(setq OSLAST (getvar "OSMODE"))
(setq DZ (getvar "DIMZIN"))
(setq OT (getvar "ORTHOMODE"))
(setvar "ORTHOMODE" 0)
(setvar "cmdecho" 0)
(command "osmode" 99)
(setq pt0 (osnap (getpoint "Diem tim TN tu nhien") "end")) (print)
(setq x0 (car pt0) y0 (cadr pt0))
(setq ed (entget (car (entsel "\nChon cao do tim: "))))
(setq H0 (read (DXFcn 1 ed)))    
(command "osmode" 15359)
 
(setq p0 (getpoint "\n Chon diem dat bang tong hop"))
(styleset)
(command "osmode" 0)
(command "text" "j" "mc" (list (+ (car p0) (* 25 h)) (+ (cadr p0) (* 2 h))) (* 2 h) 0 "BANG TONG HOP")
(command "text" "j" "mc" (list (+ (car p0) (* 5 h)) (- (cadr p0) (* 1.5 h))) h 0 "STT diem")
(command "text" "j" "mc" (list (+ (car p0) (* 20 h)) (- (cadr p0) (* 1.5 h))) h 0 "K.cach toi tim (m)")
(command "text" "j" "mc" (list (+ (car p0) (* 40 h)) (- (cadr p0) (* 1.5 h))) h 0 "Cao do (m)")
(setq p1 (list (+ (car p0) (* 10 h)) (cadr p0))
          p2 (polar p0 0 (* 30 h))
          p3 (polar p0 0 (* 50 h))
          p4 (polar p3 (* 1.5 pi) (* 3 h))
          p5 (polar p2 (* 1.5 pi) (* 3 h))
          p6 (polar p1 (* 1.5 pi) (* 3 h))
          p7 (polar p0 (* 1.5 pi) (* 3 h))
)
(command "pline" p0 p3 p4 p7 "c")
(command "pline" p1 p6 "")
(command "pline" p2 p5 "")
(setq p0 p7)
(command "osmode" 15359)
(setq fn (getfiled "Select a File" "" "csv" 1))
(setq f (open fn "w"))
(write-line " STT diem, K.cach toi tim (m), Cao do (m)" f)
(setq i 1)
 
(setq pt (getpoint "\nDiem chen: "))
(While (/= pt nil)
(command "osmode" 0)
(Progn
(setq ptside (getpoint "\nPhia chen:" pt)
ang (angle pt ptside))
(setq y (- (cadr pt) y0 (- H0)))
(setq x (- (car pt) x0))
(setvar "DIMZIN" 0)         
(cond ((> x 0) (setq x (strcat "" (rtos (* x tx) 2 2))))
         ((< x 0) (setq x (rtos (abs (* x tx)) 2 2)))
         ((= x 0) (setq x "0.00"))         )
(cond ((> y 0) (setq y (strcat "+" (rtos (* y ty) 2 2))))
         ((< y 0) (setq y (rtos (* y ty) 2 2)))
         ((= y 0) (setq y "%%p0.00")))
;;;;(setq x (ustr 0 "Khoang cach: " x T))
;;;;(setq y (ustr 0 "Cao do: " y T))
(progn
(if (AND (>= ang 0) (< ang (/ pi 2)))
(setq  pt3 (list (car pt) (+ (cadr pt) (* 1.15 h)))
pt4 (list (car pt) (+ (cadr pt) (* 2.5 h)))
pt5 (list (+ (car pt4) (* 5 h)) (cadr pt4))
pt6 (list (+ (car pt4) (* 2.5 h)) (+ (cadr pt4) (* 0.8 h)))
pt7 (list (+ (car pt4) (* 2.5 h)) (- (cadr pt4) (* 0.8 h)))))
(if (AND (>= ang (/ pi 2)) (< ang pi))
(setq  pt3 (list (car pt) (+ (cadr pt) (* 1.15 h)))
pt4 (list (car pt) (+ (cadr pt) (* 2.5 h)))
pt5 (list (- (car pt4) (* 5 h)) (cadr pt4))
pt6 (list (- (car pt4) (* 2.5 h)) (+ (cadr pt4) (* 0.8 h)))
pt7 (list (- (car pt4) (* 2.5 h)) (- (cadr pt4) (* 0.8 h)))))
(if (AND (>= ang pi) (< ang (+ pi (/ pi 2))))
(setq  pt3 (list (car pt) (- (cadr pt) (* 1.15 h)))
pt4 (list (car pt) (- (cadr pt) (* 2.5 h)))
pt5 (list (- (car pt4) (* 5 h)) (cadr pt4))
pt6 (list (- (car pt4) (* 2.6 h)) (+ (cadr pt4) (* 0.8 h)))
pt7 (list (- (car pt4) (* 2.5 h)) (- (cadr pt4) (* 0.8 h)))))
(if (AND (>= ang (+ pi (/ pi 2))) (< ang (* 2 pi)))
(setq  pt3 (list (car pt) (- (cadr pt) (* 1.15 h)))
pt4 (list (car pt) (- (cadr pt) (* 2.5 h)))
pt5 (list (+ (car pt4) (* 5 h)) (cadr pt4))
pt6 (list (+ (car pt4) (* 2.5 h)) (+ (cadr pt4) (* 0.8 h)))
pt7 (list (+ (car pt4) (* 2.5 h)) (- (cadr pt4) (* 0.8 h)))))
);progn
(command "pline" pt "w" 0 (* 0.45 h) pt3 "w" 0 0 pt4 pt5 ""
"text" "m" pt6 h 0 y
"text" "m" pt7 h 0 x)
(setvar "DIMZIN" DZ)
(command "osmode" 15359)
 
);progn
 
(command "osmode" 0)
(command "text" "j" "mc" (list (+ (car p0) (* 5 h)) (- (cadr p0) (* 1.5 h))) h 0 (rtos i 2 0))
(command "text" "j" "mc" (list (+ (car p0) (* 20 h)) (- (cadr p0) (* 1.5 h))) h 0 x)
(command "text" "j" "mc" (list (+ (car p0) (* 40 h)) (- (cadr p0) (* 1.5 h))) h 0 y)
(setq p1 (list (+ (car p0) (* 10 h)) (cadr p0))
          p2 (polar p0 0 (* 30 h))
          p3 (polar p0 0 (* 50 h))
          p4 (polar p3 (* 1.5 pi) (* 3 h))
          p5 (polar p2 (* 1.5 pi) (* 3 h))
          p6 (polar p1 (* 1.5 pi) (* 3 h))
          p7 (polar p0 (* 1.5 pi) (* 3 h))
)
(command "pline" p0 p3 p4 p7 "c")
(command "pline" p1 p6 "")
(command "pline" p2 p5 "")
(setq p0 p7)
(write-line (strcat (rtos i 2 0) (chr 44) x (chr 44) y) f)
(setq i (1+ i))
(command "osmode" 15359)
(setq pt (getpoint "\nDiem chen: "))
 
);while
(close f)
(setvar "OSMODE" OSLAST)
(setvar "ORTHOMODE" OT)
(setvar "cmdecho" CMLAST)
(prompt"\n[GHI CAO DO TRAC NGANG] by Thaistreetz - huuthais@yahoo.com\n")
(command "Undo" "End")
(princ)
);end
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun styleset (/ h0 stl)
(setq stl (getvar "textstyle")
         h0 (getvar "textsize"))
(if (/= h0 0) (command "style" stl "" 0 "" "" "" "" ""))
)
 

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×