Đến nội dung


Hình ảnh
* * * - - 2 Bình chọn

Viết Lisp theo yêu cầu


  • Chủ đề bị khóa Chủ đề bị khóa
2780 replies to this topic

#1701 phuquang113

phuquang113

    biết vẽ line

  • Members
  • PipPip
  • 20 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 13 March 2009 - 08:31 AM

Mong các cao thủ lisp giúp giùm em.
Em có một bình đồ gồm nhiều đường đồng mức (mỗi đường DM là một PL. Nhưng em lại chỉ muốn các đường đồng mức thể hiện trong vùng em chọn mà thôi(vùng chọn được bao bằng PL) còn phần ngoài ẩn đi. Mong các cao thủ lisp giúp em. Cám ơn các bác nhiều.
  • 0

#1702 nguyenkhoadung98

nguyenkhoadung98

    biết vẽ pline

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

Đã gửi 13 March 2009 - 10:42 AM

Chào bạn nguyenkhoa dung98,
Yêu cầu của bạn không khó khăn gì, bạn có thể tự sửa đoạn lisp trên như sau:
1/- Cut dòng lisp: ln (entsel "\n Chon duong chuan ") trong main lisp Paste vào dưới dòng (setq sl 0) trong lisp AO. Trêm vào trước ln các ký tự (setq và cuối dòng ký tự ) thành dòng lisp hoàn chỉnh sau: (setq ln (entsel "\n Chon duong chuan "))
2/- Cut dòng lisp: h (getreal "\n Nhap khoang cach dat text : ") trong main lisp paste vào dưới dòng lisp trên và cũng thêm cácký tự như trên để thành dòng lisp hoàn chỉnh: (setq h (getreal "\n Nhap khoang cach dat text : "))
3/- Bạn hãy kiểm tra lại chế độ osnap của bạn trước khi chạy lisp nhé vì lisp đã trả biến hệ thống "osmode" về giá trị oldos ban đầu của bản vẽ rồi mà. Có thể là do bạn đã đặt giá trị biến này là 128 từ trước lúc chạy lisp rồi nên sau khi chạy nó mới chỉ còn một chế độ truy bắt perpencular bạn ạ.

Rất mong bạn đạt được mong muốn.


hic ý bạn lúc cut dòng lệnh: h (getreal "\n Nhap khoang cach dat text : ") trong main lisp vào dòng lện TRÊN thì trên ở đây là dòng lệnh : (setq sl 0) trong lisp AO phải kô, nếu đúng thế thì mình làm vậy mà sau khi load lisp nó báo là unknown command AO. hic :undecided:
  • 0

#1703 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 13 March 2009 - 11:27 AM

hic ý bạn lúc cut dòng lệnh: h (getreal "\n Nhap khoang cach dat text : ") trong main lisp vào dòng lện TRÊN thì trên ở đây là dòng lệnh : (setq sl 0) trong lisp AO phải kô, nếu đúng thế thì mình làm vậy mà sau khi load lisp nó báo là unknown command AO. hic :undecided:

Đây bạn:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun Check (/ans);;; Kiem tra dieu kien lap
(if (= ans "y")
(main text)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun main (text /)
(setq Oldos (getvar "osmode"))
(setvar "osmode" 128)
(setq text (entsel "\n Chon text can hieu chinh ")
lst1 (entget (car text))
p1 (cdr (assoc 10 lst1))


p2 (getpoint "\n Chon diem phia dat text")
p3 (getpoint p2 "\n Lay diem tren duong chuan")
gc (angle p2 p3)

)
;;;(setvar "pdmode" 3)
(setq p4 (polar p3 (+ pi gc) h))
;;;;(command "point" p4)
(if (and (< pi gc) (> (* 2 pi) gc))
(Progn
(setq lst1 (subst (cons 10 p4) (assoc 10 lst1) lst1))
(entmod lst1)
(setq lst1 (subst (cons 50 (+ gc (/ pi 2))) (assoc 50 lst1) lst1))
(entmod lst1)
(entupd (car text))
)
(Progn
(setq lst1 (subst (cons 10 p4) (assoc 10 lst1) lst1))
(entmod lst1)
(setq lst1 (subst (cons 50 (- gc (/ pi 2))) (assoc 50 lst1) lst1))
(entmod lst1)
(entupd (car text))
)
)
(setq sl (1+ sl))
(setvar "osmode" oldos)
(setq ans (getstring "\n Tiep tuc? [y or n] : "))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun C:ao (/ text ans sl oldos lst1 p1 p2 p3 p4 ln gc h)
(setq sl 0)
(setq ln (entsel "\n Chon duong chuan "))
(setq h (getreal "\n Nhap khoang cach dat text : "))
(main text)
(while (= ans "y")
(check ans)
)
(alert (strcat "Ban da chinh lai vi tri cua " (itoa sl) " text"))
(princ)
)

Bạn hãy so sánh cái lisp này và cái lisp trước sẽ hiểu cái mình đã hướng dẫn bạn. Nếu bạn làm đúng thì không có chuyện cad không hiểu lệnh AO được bạn a.
Bạn hãy cố gắng tìm hiểu kỹ hơn về lisp và thông qua các đoạn lisp bạn đã có. Cần phải hiểu rõ về các lisp này thì việc ứng dụng và hiệu chỉnh nó mới có hiệu quả cho công việc của bạn. Nếu bạn không hiểu rõ tác dụng của từng dòng code thì nhiều lúc sẽ mang họa vì dùng lisp đấy bạn ạ.
Thực ra trong đoạn lisp trên dòng code: p1 (assoc 10 list1) là thừa. Song vì nó không gấy hại nên mình cũng không sửa nó bạn ạ. Bạn có thể vô hiệu hóa nó mà không ảnh hưởng gì tới kết quả của bạn.
Chúc bạn thành công.
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1704 nguyenkhoadung98

nguyenkhoadung98

    biết vẽ pline

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

Đã gửi 13 March 2009 - 05:15 PM

Đây bạn:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun Check (/ans);;; Kiem tra dieu kien lap
(if (= ans "y")
(main text)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun main (text /)
(setq Oldos (getvar "osmode"))
(setvar "osmode" 128)
(setq text (entsel "\n Chon text can hieu chinh ")
lst1 (entget (car text))
p1 (cdr (assoc 10 lst1))


p2 (getpoint "\n Chon diem phia dat text")
p3 (getpoint p2 "\n Lay diem tren duong chuan")
gc (angle p2 p3)

)
;;;(setvar "pdmode" 3)
(setq p4 (polar p3 (+ pi gc) h))
;;;;(command "point" p4)
(if (and (< pi gc) (> (* 2 pi) gc))
(Progn
(setq lst1 (subst (cons 10 p4) (assoc 10 lst1) lst1))
(entmod lst1)
(setq lst1 (subst (cons 50 (+ gc (/ pi 2))) (assoc 50 lst1) lst1))
(entmod lst1)
(entupd (car text))
)
(Progn
(setq lst1 (subst (cons 10 p4) (assoc 10 lst1) lst1))
(entmod lst1)
(setq lst1 (subst (cons 50 (- gc (/ pi 2))) (assoc 50 lst1) lst1))
(entmod lst1)
(entupd (car text))
)
)
(setq sl (1+ sl))
(setvar "osmode" oldos)
(setq ans (getstring "\n Tiep tuc? [y or n] : "))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun C:ao (/ text ans sl oldos lst1 p1 p2 p3 p4 ln gc h)
(setq sl 0)
(setq ln (entsel "\n Chon duong chuan "))
(setq h (getreal "\n Nhap khoang cach dat text : "))
(main text)
(while (= ans "y")
(check ans)
)
(alert (strcat "Ban da chinh lai vi tri cua " (itoa sl) " text"))
(princ)
)

Bạn hãy so sánh cái lisp này và cái lisp trước sẽ hiểu cái mình đã hướng dẫn bạn. Nếu bạn làm đúng thì không có chuyện cad không hiểu lệnh AO được bạn a.
Bạn hãy cố gắng tìm hiểu kỹ hơn về lisp và thông qua các đoạn lisp bạn đã có. Cần phải hiểu rõ về các lisp này thì việc ứng dụng và hiệu chỉnh nó mới có hiệu quả cho công việc của bạn. Nếu bạn không hiểu rõ tác dụng của từng dòng code thì nhiều lúc sẽ mang họa vì dùng lisp đấy bạn ạ.
Thực ra trong đoạn lisp trên dòng code: p1 (assoc 10 list1) là thừa. Song vì nó không gấy hại nên mình cũng không sửa nó bạn ạ. Bạn có thể vô hiệu hóa nó mà không ảnh hưởng gì tới kết quả của bạn.
Chúc bạn thành công.

cảm ơn bạn. tại mình kô hiểu về lisp cũng muốn tìm hiểu lắm. nhưng mà kô nhiều tài liệu về nó , thanks nhiều nhé
  • 0

#1705 quynhnn

quynhnn

    biết zoom

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

Đã gửi 16 March 2009 - 07:35 PM

Bác nào có lisp chuyển từ point thành vòng tròn không? Em đang cần gấp. Cảm ơn các bác!
  • 0

#1706 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 16 March 2009 - 08:03 PM

Bác nào có lisp chuyển từ point thành vòng tròn không? Em đang cần gấp. Cảm ơn các bác!

Vòng tròn đó có đường kính bao nhiêu vậy bạn? hay đường kính là số do ta nhập vào? bạn phải nói rõ chứ?
  • 0

#1707 quynhnn

quynhnn

    biết zoom

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

Đã gửi 16 March 2009 - 08:18 PM

Vòng tròn đó có đường kính bao nhiêu vậy bạn? hay đường kính là số do ta nhập vào? bạn phải nói rõ chứ?

em cần chọn tất cả các point, sau đó biến các point đó thành vòng tròn. Còn bán kính thì có thể lựa chọn ngay thì càng tốt, vì sau đó có thể chọn cả rồi thay đổi cũng được mà. Em export từ chương trình Mapsource ra thì các cột điện (hình tròn) biến thành điểm point hết.
  • 0

#1708 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 16 March 2009 - 09:15 PM

em cần chọn tất cả các point, sau đó biến các point đó thành vòng tròn. Còn bán kính thì có thể lựa chọn ngay thì càng tốt, vì sau đó có thể chọn cả rồi thay đổi cũng được mà. Em export từ chương trình Mapsource ra thì các cột điện (hình tròn) biến thành điểm point hết.

Một đường tròn khi vẽ phải có tâm và bán kính.
Bạn sử dụng đoạn Lisp này nhé :
(defun c:PT()
(setq po (ssget '((0 . "point"))))
(setq R (getdist "\n Cho ban kinh :"))
(setq n (sslength po)
i 0)

(while (< i n)
(setq sn (entget(ssname po i)))
(setq tam (cdr(assoc 10 sn)))
(Command "Circle" tam R)
(setq i (+ i 1))
)


(Command "erase" po "")
(Princ)
)
Hy vọng bạn hài lòng.
Chúc thành công nhé. :undecided:
  • 3

#1709 quynhnn

quynhnn

    biết zoom

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

Đã gửi 16 March 2009 - 10:43 PM

Tuyệt vời. Rất tốt bác ạ. Em làm được rồi. Em cảm ơn bác nhiều nha. Thanksss
  • 0

#1710 oanhvang

oanhvang

    biết zoom

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

Đã gửi 19 March 2009 - 12:55 PM

chào các bạn, các bạn có thể cho mình xin cái lisp như sau kô :

bản vẽ của mình chi có các đuờng line, có thể có 2 hoặc 2 đuờng giao nhau ( ngã 3 hoặc ngã 4)
bây giờ mình muốn vẽ 1 doi tuong cố định ( gom 1 duong thang va 1 hinh tron co DTEXT o trong) tại tat ca các điểm ngã 3 hoặc ngã 4.

mình muốn xin 1 lisp có thể làm như sau :

1.chọn cái doi tuong cố định mẫu ( tự mình đã vẽ tại 1 nút nào đó rồi )

2.lisp tự động nhận ra các ngã 3 và ngã 4 để thêm vào các đối tuợng cố định mà mình đã chọn với 1 điều kiện chữ trong hình tròn tự tăng thêm 1 đơn vị (1 thì thành 2, 2 thì thành 3.........) với cách đánh số trong hình tròn theo thu tu chiều kim đồng hồ và và từ trên xuống duới

cảm ơn các bạn nhiều, đây là hình minh hoạ

http://www.cadviet.c...ntitled_117.jpg
  • 0

#1711 hocvecad

hocvecad

    biết vẽ arc

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

Đã gửi 19 March 2009 - 06:22 PM

Nhờ các bác viết cho em cái lisp để lock và unlock viewport trong layout mà không cần mở cửa sổ Property. EM cảm ơn nhiều.
  • 0

#1712 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 19 March 2009 - 08:56 PM

chào các bạn, các bạn có thể cho mình xin cái lisp như sau kô :

bản vẽ của mình chi có các đuờng line, có thể có 2 hoặc 2 đuờng giao nhau ( ngã 3 hoặc ngã 4)
bây giờ mình muốn vẽ 1 doi tuong cố định ( gom 1 duong thang va 1 hinh tron co DTEXT o trong) tại tat ca các điểm ngã 3 hoặc ngã 4.

mình muốn xin 1 lisp có thể làm như sau :

1.chọn cái doi tuong cố định mẫu ( tự mình đã vẽ tại 1 nút nào đó rồi )

2.lisp tự động nhận ra các ngã 3 và ngã 4 để thêm vào các đối tuợng cố định mà mình đã chọn với 1 điều kiện chữ trong hình tròn tự tăng thêm 1 đơn vị (1 thì thành 2, 2 thì thành 3.........) với cách đánh số trong hình tròn theo thu tu chiều kim đồng hồ và và từ trên xuống duới

cảm ơn các bạn nhiều, đây là hình minh hoạ

http://www.cadviet.c...ntitled_117.jpg

Chào bạn oanhvang,
Gớm, cái tên bạn thật khác với cái bạn trình bày quá. Cứ tưởng oanhvang thì phải hót vang, rõ ràng, mạch lạc, vậy mà đọc cái bạn trình bày với xem cái hình bạn post thì chả thấy rõ ràng chi cả.
Bạn nói copy cái đối tượng có sẵn vào các vị trí giao nhau mà mình thấy bạn gắn nó vào cả những điểm cuối chả đụng chạm tới thằng tây nào là sao nhỉ?
Lại còn có chỗ giao nhau thì có . có chỗ lại không có là sao? Bạn hãy lấy một cái ngã tư mà xem, có tới tám điểm giao nhau nhưng chỉ có 4 điểm được gắn huy chương thôi, sao lại nhất bên trọng nhất bên khinh thế nhỉ??
Bạn nên post bản vẽ CAD thì hơn là post hình ảnh thế này, người đọc chỉ xem được hình chứ chả hiểu tí gì về các đối tượng của bạn cả. Như vậy rất khó viết lisp bạn ạ.
Bạn hãy gắng trình bày cái bạn muốn mạch lạc , rõ ràng và chính xác như cái tên rất kêu của bạn nhé.
Thanks
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1713 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 4105 Bài viết
Điểm đánh giá: 4495 (đỉnh cao)

Đã gửi 19 March 2009 - 09:04 PM

Nhờ các bác viết cho em cái lisp để lock và unlock viewport trong layout mà không cần mở cửa sổ Property. EM cảm ơn nhiều.

Lệnh là UV (Unlock Viewport) và LV (Lock Viewport)

(defun c:lv()
(command "-vports" "l" "on")
)

(defun c:uv()
(command "-vports" "l" "off")
)

  • 0

#1714 oanhvang

oanhvang

    biết zoom

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

Đã gửi 20 March 2009 - 09:17 AM

Chào bạn oanhvang,
Gớm, cái tên bạn thật khác với cái bạn trình bày quá. Cứ tưởng oanhvang thì phải hót vang, rõ ràng, mạch lạc, vậy mà đọc cái bạn trình bày với xem cái hình bạn post thì chả thấy rõ ràng chi cả.
Bạn nói copy cái đối tượng có sẵn vào các vị trí giao nhau mà mình thấy bạn gắn nó vào cả những điểm cuối chả đụng chạm tới thằng tây nào là sao nhỉ?
Lại còn có chỗ giao nhau thì có . có chỗ lại không có là sao? Bạn hãy lấy một cái ngã tư mà xem, có tới tám điểm giao nhau nhưng chỉ có 4 điểm được gắn huy chương thôi, sao lại nhất bên trọng nhất bên khinh thế nhỉ??
Bạn nên post bản vẽ CAD thì hơn là post hình ảnh thế này, người đọc chỉ xem được hình chứ chả hiểu tí gì về các đối tượng của bạn cả. Như vậy rất khó viết lisp bạn ạ.
Bạn hãy gắng trình bày cái bạn muốn mạch lạc , rõ ràng và chính xác như cái tên rất kêu của bạn nhé.
Thanks


híc xin lỗi.mình hơi bị sơ suất : mình bổ sung là gắn huy truơng lên những điểm giao nhau ( ngã 3 và ngã 4) và những điểm cuối của đuờng thẳng. còn chỗ giao nhau chỉ có 4 điểm giao nhau thôi mà. làm j có 8 điểm giao nhau chỉ tính khi có ít nhất 2 đuờng giao nhau thôi,đoạn uốn cong thì kô tính. hic xin đinh chinh đính chính :undecided:
  • 0

#1715 anhlylyhuynh

anhlylyhuynh

    biết zoom

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

Đã gửi 20 March 2009 - 09:51 AM

Chào các bác,
Nhờ các bác viết dùm đọan code vẽ mặt cắt ngang theo vết cắt định trước cắt qua các điểm có cao độ là các text 2d
chiều dài mặt cắt ngang được vẽ là chiều dài vết cắt và các điểm cao độ sẽ được pick từ các điểm gần nhất với vết cắt, khoảng cách lẻ trong mặt cắt ngang là khoảng các giữa hình chiếu vuông góc của các điểm trên. Đoạn lisp này cho phép
chọn tỷ lệ bản vẽ, chiều cao chữ, và mức so sánh.
Đây là đường link của file vidu, nhờ bác giúp đỡ.
http://www.cadviet.c...es/VE_MCN_1.dwg
Xin cám ơn bác Nguyen Hoang!
  • 0

#1716 tritam

tritam

    Chưa sử dụng CAD

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

Đã gửi 20 March 2009 - 10:11 AM

Chào các bác,
Nhờ các bác viết dùm đoạn code ghi lại thuộc tính từ các "BLOCK thuộc tính" trong bản vẽ và toạ độ điểm chèn của các block đó. Các thuộc tính đó và toạ độ được xuất ra file text
Xin cảm ơn các bác nhiều
  • 0

#1717 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 20 March 2009 - 04:19 PM

Chào các bác,
Nhờ các bác viết dùm đoạn code ghi lại thuộc tính từ các "BLOCK thuộc tính" trong bản vẽ và toạ độ điểm chèn của các block đó. Các thuộc tính đó và toạ độ được xuất ra file text
Xin cảm ơn các bác nhiều

Chào bạn Tritam,
Bạn cần nêu rõ khái niệm ghi lại thuộc tính từ các block nghĩa là gi? Bạn muốn ghi lại tên thuộc tính hay giá trị của thuộc tính hay tất cả mọi cái có liên quan tới thuộc tính chứ? Bởi vì mỗi thuộc tính của một block có rất nhiều thông số kèm theo nó được mã hóa bạn ạ.
Tốt nhất bạn nên post bản vẽ của bạn và cái kết quả bạn cần thì mọi người mới giúp được.
Mong bạn lưu ý hơn khi trình bày yêu cầu của mình.
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1718 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 20 March 2009 - 04:26 PM

híc xin lỗi.mình hơi bị sơ suất : mình bổ sung là gắn huy truơng lên những điểm giao nhau ( ngã 3 và ngã 4) và những điểm cuối của đuờng thẳng. còn chỗ giao nhau chỉ có 4 điểm giao nhau thôi mà. làm j có 8 điểm giao nhau chỉ tính khi có ít nhất 2 đuờng giao nhau thôi,đoạn uốn cong thì kô tính. hic xin đinh chinh đính chính :undecided:

Bạn oanhvang ơi,
Bạn hãy post file bản vẽ lên nhé, mình đã hiểu ý bạn nhưng chưa hiểu cái cấu trúc file bản vẽ của bạn nên chưa thể viết lisp được.
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#1719 baodenhp

baodenhp

    biết vẽ arc

  • Members
  • PipPip
  • 41 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 20 March 2009 - 04:59 PM

Mình muốn dùng lệnh mesure hay devide để chèn block thuộc tính theo đối tượng, Bạn nào có cách nào cho phép mình nhập giá trị thuộc tính của block cho mỗi block được chèn vào ko? cảm ơn nhiều!!!
  • 0

#1720 Phiphi-

Phiphi-

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 434 Bài viết
Điểm đánh giá: 175 (tàm tạm)

Đã gửi 21 March 2009 - 06:13 PM

Chào các bác,
Nhờ các bác viết dùm đọan code vẽ mặt cắt ngang theo vết cắt định trước cắt qua các điểm có cao độ là các text 2d
chiều dài mặt cắt ngang được vẽ là chiều dài vết cắt và các điểm cao độ sẽ được pick từ các điểm gần nhất với vết cắt, khoảng cách lẻ trong mặt cắt ngang là khoảng các giữa hình chiếu vuông góc của các điểm trên. Đoạn lisp này cho phép
chọn tỷ lệ bản vẽ, chiều cao chữ, và mức so sánh.
Đây là đường link của file vidu, nhờ bác giúp đỡ.
http://www.cadviet.c...es/VE_MCN_1.dwg
Xin cám ơn bác Nguyen Hoang!

Chuyển các các điểm có cao độ là các text 2d thành các contours rồi sử dụng lệnh QP của Lisp được post ở bài #22: http://www.cadviet.c...o...=9019&st=20 và xem video clip demo ở bài #29.
Kết quả được PP làm thử: http://www.cadviet.c...CUA_LISP_QP.zip
  • 1