Đến nội dung


Hình ảnh
- - - - -

Nhờ viết lisp thêm 2 đầu cho đường MLine


  • Please log in to reply
7 replies to this topic

#1 pawuta

pawuta

    biết lệnh move

  • Members
  • PipPipPip
  • 126 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 02 June 2015 - 10:05 AM

Nhờ ae viết giúp Lisp hoặc có cách nào tương tự xin chỉ giúp. Mình vẽ 1 thanh thép V (sử dụng nhiều kích thước khác nhau, VD: V50x50x5) từ điểm A->B (VD: AB=800mm) bằng lệnh Mline

Mình muốn sau khi vẽ từ điểm A->B thì có thêm một đoạn thừa ra ở 2 đầu (tùy chọn, VD: 30mm), tức là tổng chiều dài thanh thép là 860mm. Các chỗ mình ví dụ là có thể thay thế bằng kích thước khác được. Mong anh em giúp đỡ!

Đây là bản vẽ minh họa:


  • 0

#2 pawuta

pawuta

    biết lệnh move

  • Members
  • PipPipPip
  • 126 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 02 June 2015 - 10:09 AM

Đây là bản vẽ minh họa:http://www.cadviet.c...viet_lisp_1.dwg


  • 0

#3 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 02 June 2015 - 10:26 AM

Bạn pawuta dạo này hay request lisp nhỉ :) Yêu cầu k hợp lý lắm
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#4 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 02 June 2015 - 11:16 AM

Lisp đây"

; Lisp ve thanh thep hinh tu 2 lo bulon, co doan mut. by HA, 2/6/2015
(defun C:HA( / cmd osm l p1 p2)
 (command "undo" "be") (setq cmd (getvar "cmdecho") osm (getvar "osmode")) (setvar "cmdecho" 0)
 (setq l (getreal "\nChieu dai doan mut: "))
 (command "mline")
 (command pause)
 (setq p1 (getvar "lastpoint"))
 (command pause)
 (setq p2 (getvar "lastpoint"))
 (command "")
 (entdel (entlast))
 (setvar "osmode" 0)
 (command "mline" (polar p1 (+ pi (angle p1 p2)) l) (polar p2 (angle p1 p2) l) "")
 (setvar "osmode" osm) (setvar "cmdecho" cmd) (command "undo" "e") (princ))

  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#5 pawuta

pawuta

    biết lệnh move

  • Members
  • PipPipPip
  • 126 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 02 June 2015 - 11:25 AM

Do nhu cầu công việc (vẽ cột điện cao thế) nên phải nhờ anh em để giảm bớt thao tác, với thao tác thủ công thì mất nhiều thời gian lắm!

 

Bạn pawuta dạo này hay request lisp nhỉ :) Yêu cầu k hợp lý lắm

Do nhu cầu công việc (vẽ cột điện cao thế) nên phải nhờ anh em để giảm bớt thao tác, với thao tác thủ công thì mất nhiều thời gian lắm.


  • 0

#6 pawuta

pawuta

    biết lệnh move

  • Members
  • PipPipPip
  • 126 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 02 June 2015 - 11:31 AM

 

Lisp đây"

; Lisp ve thanh thep hinh tu 2 lo bulon, co doan mut. by HA, 2/6/2015
(defun C:HA( / cmd osm l p1 p2)
 (command "undo" "be") (setq cmd (getvar "cmdecho") osm (getvar "osmode")) (setvar "cmdecho" 0)
 (setq l (getreal "\nChieu dai doan mut: "))
 (command "mline")
 (command pause)
 (setq p1 (getvar "lastpoint"))
 (command pause)
 (setq p2 (getvar "lastpoint"))
 (command "")
 (entdel (entlast))
 (setvar "osmode" 0)
 (command "mline" (polar p1 (+ pi (angle p1 p2)) l) (polar p2 (angle p1 p2) l) "")
 (setvar "osmode" osm) (setvar "cmdecho" cmd) (command "undo" "e") (princ))

Hehe, cảm ơn bạn rất nhiều, phiền bạn thêm phần lưu lại giá trị đầu mút cho các lần sau nhé!


  • -1

#7 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 02 June 2015 - 01:25 PM

Hehe, cảm ơn bạn rất nhiều, phiền bạn thêm phần lưu lại giá trị đầu mút cho các lần sau nhé!

Đây!

; Lisp ve thanh thep hinh tu 2 lo bulon, co doan mut. by HA, 2/6/2015
(defun C:HA( / cmd osm p1 p2)
 (command "undo" "be") (setq cmd (getvar "cmdecho") osm (getvar "osmode")) (setvar "cmdecho" 0)
 (or (and kc (or (= (type kc) 'int) (= (type kc) 'real))) (setq kc 30))
 (setq kc (cond ((getdist (strcat "\nChieu dai doan mu <" (rtos kc 2 2) ">: "))) (kc)))
 (command "mline")
 (command pause)
 (setq p1 (getvar "lastpoint"))
 (command pause)
 (setq p2 (getvar "lastpoint"))
 (command "")
 (entdel (entlast))
 (setvar "osmode" 0)
 (command "mline" (polar p1 (+ pi (angle p1 p2)) kc) (polar p2 (angle p1 p2) kc) "")
 (setvar "osmode" osm) (setvar "cmdecho" cmd) (command "undo" "e") (princ))

  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#8 pawuta

pawuta

    biết lệnh move

  • Members
  • PipPipPip
  • 126 Bài viết
Điểm đánh giá: -12 (hơi kém)

Đã gửi 02 June 2015 - 01:38 PM

 

Đây!

; Lisp ve thanh thep hinh tu 2 lo bulon, co doan mut. by HA, 2/6/2015
(defun C:HA( / cmd osm p1 p2)
 (command "undo" "be") (setq cmd (getvar "cmdecho") osm (getvar "osmode")) (setvar "cmdecho" 0)
 (or (and kc (or (= (type kc) 'int) (= (type kc) 'real))) (setq kc 30))
 (setq kc (cond ((getdist (strcat "\nChieu dai doan mu <" (rtos kc 2 2) ">: "))) (kc)))
 (command "mline")
 (command pause)
 (setq p1 (getvar "lastpoint"))
 (command pause)
 (setq p2 (getvar "lastpoint"))
 (command "")
 (entdel (entlast))
 (setvar "osmode" 0)
 (command "mline" (polar p1 (+ pi (angle p1 p2)) kc) (polar p2 (angle p1 p2) kc) "")
 (setvar "osmode" osm) (setvar "cmdecho" cmd) (command "undo" "e") (princ))

Oh, quá tuyệt, từ giờ dựng 1 cái trụ là đỡ tốn 2/5 thời gian rồi, hehe, cảm ơn bạn rất nhiều!


  • 0