Đế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

#1441 tyanhCAD

tyanhCAD

    Chưa sử dụng CAD

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

Đã gửi 29 December 2008 - 06:04 PM

Chào bạn phamthanhbinh. Mình đã nói là viết cho mình một cái lisp chứ không phải là biểu vẽ hình đó ra. Là như vậy nè, viết lisp khung giống như vậy để mình đưa vào autocad xong mình chỉ nhập kích thước của chiều cao từng tầng . Ví dụ 3 tầng thì nhập chiều cao 3 lần, nhập chiều rộng bước cột thì sẽ cho ra một cái khung như vậy. Ý mình là vậy?
  • 0

#1442 transu

transu

    biết vẽ spline

  • Members
  • PipPip
  • 93 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 29 December 2008 - 06:28 PM

Chào các bác.
Em đang làm ở 1 dự án Khu đô thị mới. Bọn em đang phải làm công tác ĐBGPMB nhưng các sếp lại không cho mua phần mềm mà NV phải tự làm.
Em có 1 cái khó khăn là phải làm sơ họa cho các thửa đất cần ĐBGP như file gửi kèm:
Hình đã gửi
- phải có chiều dài từng cạnh của thửa đất (nếu chiều dài được đặt trên phương của cạnh thì càng tốt)
Các bác xem có cách nào giúp em giải quyết việc pick chiều dài từng cạnh 1 cách nhanh nhất được không ạ?
Thanks!

vấn đề của bác đã đc giải đáp phía trên ,bài của ssq,bác hỏi mà ko đọc bài trước dễ bị bực lắm đó.vì vấn đề này vừa giải đáp xong ở trang 72
  • 0

#1443 goodfriends20041

goodfriends20041

    biết pan

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

Đã gửi 01 January 2009 - 11:39 AM

bach Hoành cho em xin cái LÍP sửa TEXT va Dim TRONG Block với a!em tìm không được!thanks bác trước!
  • 0

#1444 goodfriends20041

goodfriends20041

    biết pan

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

Đã gửi 01 January 2009 - 11:44 AM

bach Hoành cho em xin cái LÍP sửa TEXT va Dim TRONG Block với a! và một Lisp như sau:vẽ n đường thẳng vào giữa 2 đường làm gốc tất cả song song nhau và tất cả các đường thẳng vừa vẽ và 2 đường thẳng gốc cách đều nhau! em tìm không được!thanks bác trước!
  • 0

#1445 transu

transu

    biết vẽ spline

  • Members
  • PipPip
  • 93 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 01 January 2009 - 12:54 PM

bach Hoành cho em xin cái LÍP sửa TEXT va Dim TRONG Block với a!em tìm không được!thanks bác trước!

bạn có thể sửa block bằng cách lick 2 lần vào block
  • 0

#1446 transu

transu

    biết vẽ spline

  • Members
  • PipPip
  • 93 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 01 January 2009 - 01:01 PM

bach Hoành cho em xin cái LÍP sửa TEXT va Dim TRONG Block với a! và một Lisp như sau:vẽ n đường thẳng vào giữa 2 đường làm gốc tất cả song song nhau và tất cả các đường thẳng vừa vẽ và 2 đường thẳng gốc cách đều nhau! em tìm không được!thanks bác trước!

bạn có thể vẽ các đường song song bằng hatch:ở bảng hatch vào hộp thoại type-use defined- ở ô spacing chỉnh khoảng cách.dùng lệnh explode phá khối.
  • 0

#1447 goodfriends20041

goodfriends20041

    biết pan

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

Đã gửi 01 January 2009 - 01:40 PM

bạn có thể sửa block bằng cách lick 2 lần vào block

cam ơn bạn đã trả lời nhưng mà làm như bạn làm sao mà sửa text trong block được?
  • 0

#1448 goodfriends20041

goodfriends20041

    biết pan

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

Đã gửi 01 January 2009 - 09:52 PM

Bác Hoanh và các bác giúp em cái Lisp " để đưa các dim trong bản vẽ về cùng 1 tỷ lệ với ,em đang cần gấp.cảm ơn các bác trước!
  • 0

#1449 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 02 January 2009 - 07:59 AM

cam ơn bạn đã trả lời nhưng mà làm như bạn làm sao mà sửa text trong block được?

Hoàn toàn có thể sửa text trong Block được.

bạn có thể sửa block bằng cách lick 2 lần vào block

Ý của bạn Transu là sử dụng lệnh _refedit để sửa đấy bạn ạ.
  • 1

#1450 farseer86

farseer86

    Chưa sử dụng CAD

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

Đã gửi 03 January 2009 - 12:09 AM

chào các bác,em có viết một lệnh để cố định giá trj của dim ,nhưng nó chạy tập tè lắm nên em nhờ các bác sửa hộ cái.cái lisp nhw thế này:
(defun c:convert (/ _ss _sslength _i _data _oldvalue _newvalue)
(setq _ss (ssget '((0 . "dimension"))));
(setq _sslength (sslength _ss))
(setq _i 0)
(repeat _sslength
(setq _data (entget (ssname _ss _i)))
(setq _oldvalue (assoc 1 _data))
(setq _newvalue (cdr (assoc 42 _data)))
(if (= (CDR _oldvalue) "<>") ;check gia tri da bi mod chua
(PROGN
(setq _data (subst (cons 1 (rtos _newvalue)) _oldvalue _data))
(entmod _data)
)
)
(setq _i (1+ _i))
)
)
;lệnh lúc chạy lúc không,em không biết có phải viết nhầm chủ đề không,các bác thông cảm
  • 0

#1451 loiphong

loiphong

    biết vẽ circle

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

Đã gửi 05 January 2009 - 05:39 PM

Chào mọi người!
Công việc của mình thường xuyên làm việc vói các Block. Lisp ẩn và hiện lại các đối tượng rất hữu dụng trong trường hợp này. Rất mong mọi người viết dùm lisp chuyển đổi qua lại giữa các đối tượng này. Cụ thể là:
- Khi ta nhâp chon "Blank"(tên lệnh ẩn các đối tượng đó), sẽ ẩn đối tượng được chọn.
- Unblank (tên lệnh hiện lại các đối tượng ẩn), sẽ làm hiện lại các đối tượng đang ẩn.
- Reveser Blank (chuyển đổi qua lại giữa các đối tượng ẩn và hiên), các độ tượng đang ẩn sẽ hiện và các đối tượng đang hiện sẽ bị ẩn.
Hai Lisp đầu đã có, mong mọi người viết dùm minh cái Lisp thứ ba. Xin chân thành cảm ơn.
  • 0

#1452 nataca

nataca

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 712 Bài viết
Điểm đánh giá: 553 (tốt)

Đã gửi 05 January 2009 - 10:51 PM

Chào mọi người!
Công việc của mình thường xuyên làm việc vói các Block. Lisp ẩn và hiện lại các đối tượng rất hữu dụng trong trường hợp này. Rất mong mọi người viết dùm lisp chuyển đổi qua lại giữa các đối tượng này. Cụ thể là:
- Khi ta nhâp chon "Blank"(tên lệnh ẩn các đối tượng đó), sẽ ẩn đối tượng được chọn.
- Unblank (tên lệnh hiện lại các đối tượng ẩn), sẽ làm hiện lại các đối tượng đang ẩn.
- Reveser Blank (chuyển đổi qua lại giữa các đối tượng ẩn và hiên), các độ tượng đang ẩn sẽ hiện và các đối tượng đang hiện sẽ bị ẩn.
Hai Lisp đầu đã có, mong mọi người viết dùm minh cái Lisp thứ ba. Xin chân thành cảm ơn.

Xin lỗi vì để bác phải đợi lâu. Lisp đáp ứng yêu cầu của bác đây: http://www.cadviet.c.../AN_HIEN_DT.zip
( pass giải nén là www.cadviet.com)
Cái lisp này em thường dùng với thói quen lệnh của em nên không được chính xác lệnh như yêu cầu của bác (theo em ngoài việc chẳng may bị trùng với lệnh có sẵn của bác thì nó cũng tiện dụng)
Lệnh 1Q : Ẩn đối tượng chọn
Lệnh 2Q : Hiện tất cả đối tượng
Lệnh 3Q : Chỉ hiện đối tượng được chọn
Lệnh 12Q : Chuyển đổi qua lại giữa đối tượng ẩn và hiện.
Các lệnh giống như layon và layoff thôi. Mong rằng giúp ích được cho bác và cho các anh em.
  • 0

#1453 dacvien2007

dacvien2007

    biết vẽ polygon

  • Members
  • PipPip
  • 75 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 07 January 2009 - 10:57 AM

Nhờ Anh Hoành viết giúp cho lisp đổi số ra chữ
ví dụ : số 123,4 ra chữ : một trăm hai mươi ba phẩy bốn mươi mét vuông
rất cám ơn
  • 0

#1454 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 07 January 2009 - 11:37 AM

Chào bạn phamthanhbinh. Mình đã nói là viết cho mình một cái lisp chứ không phải là biểu vẽ hình đó ra. Là như vậy nè, viết lisp khung giống như vậy để mình đưa vào autocad xong mình chỉ nhập kích thước của chiều cao từng tầng . Ví dụ 3 tầng thì nhập chiều cao 3 lần, nhập chiều rộng bước cột thì sẽ cho ra một cái khung như vậy. Ý mình là vậy?

Bạn tyanhCAD ơi, Mìnhkhông phải là dân xây dựng hay kiến trúc gì cả, mình là lũ me cha ni cô nên chịu không thể hiểu được bạn. Việc viết cái lisp như bạn yêu cầu không phải là quá khó, đặc biệt là với các cao thủ ở diễn đàn này. Mình tuy chỉ võ vẽ về lisp nhưng cũng có thể viết cho bạn chạy chơi được.
Song để viết lisp, bạn cần phải cho đầy đủ các kích thước chứ, ví dụ kích thước cột, chiều cao và chiều rộng bậc tam cấp, chiều cao đặt lanhtô, v.v...... Không lẽ bạn cứ bắt người viết phải tự cho thông số sao? Nếu vậy rất có thể nó chẳng ra cái nhà mà ra cái chuồng trâu bạn ạ.
Đành rằng các thông số đó có thể do người sử dụng lisp tự nhập khi chạy lisp nhưng dân xây dựng các bạn chắc cũng phải có những quy chuẩn nhất định chứ phải không bạn? Vậy nên cái gì là thông số phải nhập thì bạn cứ ghi trên bản vẽ bằng ký hiệu a,b,c gí đó theo bạn hiểu, còn thông số nào là thông số quy chuẩn thì bạn cho giá trị cụ thể hay biểu thức tính trên bản vẽ của bạn. Từ đó người viết lisp mới có thể làm ra đúng cái ý bạn xài được chứ.
Rất mong bạn bớt chút thời gian hoàn chỉnh các thông số theo yêu cầu trên bản vẽ của bạn để mọi người có thể giúp bạn được tốt nhất.
Trong trường hợp bạn đã có thể tự sửa lisp có sẵn theo ý mình thì việc bạn yêu cầu mọi người viết hộ là hơi khiên cưỡng và bạn có thể tham khảo ngay cái lisp Venha của bác SSG trên diễn đàn này để hoàn chỉnh cái lisp bạn mong muốn.
Cám ơn bạn và 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.

#1455 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 07 January 2009 - 01:10 PM

Nhờ Anh Hoành viết giúp cho lisp đổi số ra chữ
ví dụ : số 123,4 ra chữ : một trăm hai mươi ba phẩy bốn mươi mét vuông
rất cám ơn

Bạn xem ở đây: Lisp đọc số thành chữ
  • 0

#1456 loiphong

loiphong

    biết vẽ circle

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

Đã gửi 07 January 2009 - 08:10 PM

Xin lỗi vì để bác phải đợi lâu. Lisp đáp ứng yêu cầu của bác đây: http://www.cadviet.c.../AN_HIEN_DT.zip
( pass giải nén là www.cadviet.com)
Cái lisp này em thường dùng với thói quen lệnh của em nên không được chính xác lệnh như yêu cầu của bác (theo em ngoài việc chẳng may bị trùng với lệnh có sẵn của bác thì nó cũng tiện dụng)
Lệnh 1Q : Ẩn đối tượng chọn
Lệnh 2Q : Hiện tất cả đối tượng
Lệnh 3Q : Chỉ hiện đối tượng được chọn
Lệnh 12Q : Chuyển đổi qua lại giữa đối tượng ẩn và hiện.
Các lệnh giống như layon và layoff thôi. Mong rằng giúp ích được cho bác và cho các anh em.

Cám ơn bạn nataca rất nhiều, Lisp của bạn sử dụng rất tốt, nhưng rất tiếc là file *.vlx. Nếu có thể được, bạn có thể cho mình xin file*.Lisp được không vậy? Vì mình muốn dụa trên Lisp đó để phát triển thêm một số lệnh như : Ẩn hoặc hiện các Block cùng tên, cùng nhóm tên..., Nếu được bạn có thể up lên diễn đàn hoặc gửi qua email : hongphuc1080@yahoo.com
Xin chân thành cám ơn bạn.!
  • 0

#1457 nataca

nataca

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 712 Bài viết
Điểm đánh giá: 553 (tốt)

Đã gửi 08 January 2009 - 08:36 AM

Cám ơn bạn nataca rất nhiều, Lisp của bạn sử dụng rất tốt, nhưng rất tiếc là file *.vlx. Nếu có thể được, bạn có thể cho mình xin file*.Lisp được không vậy? Vì mình muốn dụa trên Lisp đó để phát triển thêm một số lệnh như : Ẩn hoặc hiện các Block cùng tên, cùng nhóm tên..., Nếu được bạn có thể up lên diễn đàn hoặc gửi qua email : hongphuc1080@yahoo.com
Xin chân thành cám ơn bạn.!


;;=======================================================
;;;------------ CHI HIEN DOI TUONG DUOC CHON--------------
;;;=======================================================

(defun C:3Q (/ SSet0 SSet Count Elem)

(setq SSet (cadr (ssgetfirst)))
(prompt "\n Chon cac doi tuong se hien: ")
(if (null SSet)
(setq SSet (ssget))
)
(cond ( (setq SSet0 (ssget "_X"))
(repeat (setq Count (sslength SSet0))
(setq Count (1- Count)
Elem (ssname SSet0 Count)
)
(if (/= 4 (logand 4 (Dxf 70 (tblobjname "layer" (Dxf 8 Elem)))))
(if (Dxf 60 Elem)
(entmod (subst '(60 . 1) (assoc 60 (entget Elem)) (entget Elem)))
(entmod (append (entget Elem) (list '(60 . 1))))
)
)
)
)
)
(cond ( SSet
(repeat (setq Count (sslength SSet))
(setq Count (1- Count)
Elem (ssname SSet Count)
)
(if (/= 4 (logand 4 (Dxf 70 (tblobjname "layer" (Dxf 8 Elem)))))
(if (Dxf 60 Elem)
(entmod (subst '(60 . 0) (assoc 60 (entget Elem)) (entget Elem)))
(entmod (append (entget Elem) (list '(60 . 0))))
)
)
)
)
)
)
;;;=======================================================
;;;--------DOI TUONG AN VA HIEN DOI CHO CHO NHAU----------
;;;=======================================================

(defun C:12Q (/ SSet0 SSet Count Elem)

(setq SSet (ssget "_X" '((60 . 1))))
(cond ( (setq SSet0 (ssget "_X"))
(repeat (setq Count (sslength SSet0))
(setq Count (1- Count)
Elem (ssname SSet0 Count)
)
(if (/= 4 (logand 4 (Dxf 70 (tblobjname "layer" (Dxf 8 Elem)))))
(if (Dxf 60 Elem)
(entmod (subst '(60 . 1) (assoc 60 (entget Elem)) (entget Elem)))
(entmod (append (entget Elem) (list '(60 . 1))))
)
)
)
)
)
(cond ( SSet
(repeat (setq Count (sslength SSet))
(setq Count (1- Count)
Elem (ssname SSet Count)
)
(if (/= 4 (logand 4 (Dxf 70 (tblobjname "layer" (Dxf 8 Elem)))))
(if (Dxf 60 Elem)
(entmod (subst '(60 . 0) (assoc 60 (entget Elem)) (entget Elem)))
(entmod (append (entget Elem) (list '(60 . 0))))
)
)
)
)
)
)

  • 4

#1458 phamthanhhungks

phamthanhhungks

    biết vẽ polygon

  • Members
  • PipPip
  • 74 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 08 January 2009 - 11:05 AM

Mọi người thông cảm em tìm hòai trên diễn đàn mà hổng thấy có một cái List nào như em cần nên ....... Anh Hoành ơi nhờ anh viết dùm em 1 cái list để vẽ đường Parabon đi, em làm bên kết cấu dạo này đang vướng vào 1 công trình dùng sàn ứng lực, nên cần 1 cái List để vẽ mặt cắt cáp sàn. thank anh
  • 0

#1459 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 08 January 2009 - 12:58 PM

Mọi người thông cảm em tìm hòai trên diễn đàn mà hổng thấy có một cái List nào như em cần nên ....... Anh Hoành ơi nhờ anh viết dùm em 1 cái list để vẽ đường Parabon đi, em làm bên kết cấu dạo này đang vướng vào 1 công trình dùng sàn ứng lực, nên cần 1 cái List để vẽ mặt cắt cáp sàn. thank anh

Bạn xem ở đây: Vẽ đồ thị hàm số toán học trong AutoCAD
  • 0

#1460 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

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

Đã gửi 08 January 2009 - 02:02 PM

Mọi người thông cảm em tìm hòai trên diễn đàn mà hổng thấy có một cái List nào như em cần nên ....... Anh Hoành ơi nhờ anh viết dùm em 1 cái list để vẽ đường Parabon đi, em làm bên kết cấu dạo này đang vướng vào 1 công trình dùng sàn ứng lực, nên cần 1 cái List để vẽ mặt cắt cáp sàn. thank anh

Mặt cắt cáp sàn dự ứng lực như thế này phải không bạn?
Hình đã gửi

Bạn xem ở đây: Vẽ đồ thị hàm số toán học trong AutoCAD

Ở chủ đề Vẽ đồ thị hàm số toán học trong AutoCAD chưa thể giải quyết được vấn đề này đâu bác Hoành ạ.
Vì ở chủ đề đó khi chúng ta có cặp điểm thì mới xây dựng được đồ thị trong toán học được.

Mình nói bài toán đó như thế này không biết có đúng ý bạn không?
Nhìn vào hình vẽ trên ta thấy độ võng lớn nhất là -150 và độ võng bé nhất là -55
Ý bạn có phải muốn nói là vẽ một đường cong thể hiện tọa độ cáp như trên hình vẽ và nó đi qua độ võng lớn nhất là -150 và độ võng bé nhất là -55 như trên hình vẽ phải không?

Có lẽ bạn phamthanhhungks chưa diễn giải đủ ý để mọi người có thể hiểu hết được. Mong bạn hãy viết bài diễn giải cho thật đầy đủ (có thể kèm theo các hình ảnh minh họa nếu cần để mọi người có thể hiểu và từ đó mới giúp cho bạn được và cũng để đỡ tốn thời gian cho mọi người bạn nhé.

TB : LISP là chữ viết tắt của cụm từ tiếng Anh : LISp Processor (Xử lý danh sách). (Chứ không phải List)
  • 0