Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
thangtran216

code lips của em bị lỗi mọi người ai giúp em với em mới làm quen cái này gà mờ quá ạ

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

30 phút trước, thangtran216 đã nói:

Không biết bạn vẽ cái chi nhưng đang rỗi sửa lại cho bạn cho nó chạy được còn kết quả như nào thì do bạn viết

(defun c:napothong (/ d D Dp a b S )
   ;;int (cac goc hay dung)
   (setq g0 0
         g90 (* pi 0.5)
	 g180 pi
	 g270 (* pi 1.5) 
   )
   ;; luu cac bien he thong
   (setq osmode (getvar "osmode"))
   (setvar "osmode" 0)     ;; tat OSMODE
   (setq color (getvar "cecolor"))
   (setq lstnapo                 '(
				  ( 20 52 33 6 4.3 9)
				  ( 25 62 38 6 4.3 9)
				  (30 72 43 6 4.3 9)
				  (35 80 48 9 6.5 12)
				  (40 90 59 9 6.5 12)
				  (45 100 64 9 6.5 12)
				  (50 110 69 9 6.5 12)
				  (55 120 74 9 6.5 12)
				  (60 130 79 9 6.5 12)
				  (65 140 84 9 6.5 12)
				  (70 150 89 9 6.5 12)
				  )
   )
   ; nhap thong so cho nap o thong
  (setq d (getdist " nhap duong kinh truc d :  "))
  (setq pt00 (getpoint "chon dinh goc trai duoi: "))
  (setq h 20 )
  (setq napo (assoc d lstnapo))
  (setq d (nth 0 napo))
  (setq D (nth 1 napo))
  (setq Dp (nth 2 napo))
  (setq a  (nth 3 napo))
  (setq b  (nth 3 napo))
  (setq S  (nth 3 napo))
  (setq dvit 6.0)
   ;bat dau ve
  (setq pt01 (polar pt00 g180 (/ (+ D 30) 2)))
  (setq pt02 (polar pt01 g90 6.6))
  (setq pt03 (polar pt02 g0 16))
  (setq pt04 (polar pt03 g90 1))
  (setq pt05 (polar pt04 g180 1))
  (setq pt06 (polar pt05 g90 20))
  (setq pt07 (polar pt06 g0  5))
  (setq pt08 (polar pt07 g270 (- 25.6 S)))
  (setq pt08 (polar pt08 g0 (* (- 25.6 S ) 0.12278)))
  (setq pt09 (polar pt08 g0 ( - (- D 5) (* (- 25.6 S) 0.12278))))
  (setq pt10 (polar pt09 g270  (/ (- S a))))
  (setq pt11 (polar pt10 g270 (/ (- a b) 2)))
  (setq pt11 (polar pt11 g180 (/ (- Dp d) 2)))
  (setq pt12 (polar pt11 g270 b ))
  (setq pt13 (polar pt12 g0 (/ (- Dp d) 2)))
  (setq pt13 (polar pt13 g270 (/ (- Dp d) 2)))
  (setq pt14 (polar pt13 g270 (/ (- S a) 2)))
  (setq pt15 (polar pt07 g270 25.6 ))
  (setq pt16 (polar pt15 g270 1))
  (setq pt17 (polar pt14 g270 1))
  (setq pt18 (polar pt00 g90 26.6))
  ;ve mang 1
  (setq ss (ssadd))
  (command ".pline" pt01 pt02 pt03 pt04 pt05 pt06 pt07 pt08 pt09 pt10 
                    pt11 pt12 pt13 pt14 pt15 pt16 pt01 "")
  (command ".-hatch" "p" "ANSI31" 15 0 "")
  (ssadd (entlast) ss)
   ;ve mang 2
  (command ".pline" pt15 pt16 pt17 pt16 "")
  (ssadd (entlast) ss)
  ;doi xung
  (setq ss1 (ss-mirror ss pt18 pt00 1))
   (ssadd (entlast) ss)
   (proc)
 )
(defun ss-mirror (ss p1 p2 flag / ent ss1 num ind)
  (if (null ss)
    (setq ss1 NIL)
    (progn
      (if (= flag 0)
	(progn
	  (command "._mirror" ss "" p1 p2 "n" )
	  (setq ss1 ss)
	  )
	(progn
	  (setq ss1 (ssadd))
	  (setq num (sslength ss))
	  (setq ind 0)
	  (while (< ind num)
	    (setq ent (ssname ss ind))
	    (command ".mirror" ent "" p1 p2 "n")
	    (ssadd (entlast) ss1)
	    (setq ind (1+ ind))
	    ) ;while
	  ) ;progn
	); if flag
      ); progn
    ); if ss not null
  ss1
 );defun 

 

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  

×