Chuyển đến nội dung
Diễn đàn CADViet

taipham

Thành viên
  • Số lượng nội dung

    57
  • Đã tham gia

  • Lần ghé thăm cuối

Mọi thứ được đăng bởi taipham

  1. taipham

    Nhờ Thêm Vòng Lặp Vào Lisp

    Em đang tập tành autolisp, không biết thêm vòng lặp while vào chỗ nào để lisp sau khi nhập chiều dài đoạn mút thì chọn liên liếp các line, hoặc chọn liên tiếp các pline, hoặc chọn liên tiếp 2 điểm để vẽ. Nhờ anh chị trong diễn đàn giúp đỡ. Xin cảm ơn! (defun C:VTT() (command "undo" "be") (setq cmd (getvar "cmdecho") osm (getvar "osmode")) (setvar "cmdecho" 0) (or (and mut (or (= (type mut) 'int) (= (type mut) 'real))) (setq mut 30)) (setq mut (cond ((getdist (strcat "\nChieu dai doan mu <" (rtos mut 2 2) ">: "))) (mut))) (setq dt (entsel "\nChon duong thang: ")) (if (= dt nil) (progn (setq p1 (getpoint "\nChon diem dau") p2 (getpoint p1 "\nChon diem cuoi"))) (if (= "LWPOLYLINE" (cdr (assoc 0 (entget (car dt))))) (progn (setq pt (acet-geom-vertex-list (car dt)) p1 (car pt) p2 (last pt))) (if (= "LINE" (cdr (assoc 0 (entget (car dt))))) (progn (setq dt (car dt) dt (entget dt) p1 (cdr (assoc 10 dt)) p2 (cdr (assoc 11 dt)))) (princ "\nChon sai")))) (setvar "osmode" 0) (setq p3 (polar p1 (+ pi (angle p1 p2)) mut) p4 (polar p2 (angle p1 p2) mut)) (command ".mline" p3 p4 "") (setvar "osmode" osm) (setvar "cmdecho" cmd) (command "undo" "e") (princ))
×