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

#1241 smilingman82

smilingman82

    biết vẽ arc

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

Đã gửi 23 October 2008 - 09:33 PM

Tôi thực sự buồn vì suy nghĩ của bạn đấy smilingman82 ạ.

Nếu bạn tự code được thì đừng có post yêu cầu lên đây. Nếu bạn không code được thì bạn hãy yêu cầu thật cụ thể, sẽ có người code giúp bạn. Những người có thể code được lisp trên diễn đàn này không cần bất cứ một sự trợ giúp lisp nào cả, hoặc giả sử có cần họ cũng sẽ biết search và lấy nó ra từ internet. Bạn spam ở mục này làm người khác khó chịu đấy.

mình mới chỉ ở mức độ newbie, chưa viết đc chương trình, mình chỉ mún nhờ các bác sao cho thật nhanh thui....có thể làm bác tự ái thì xin lỗi vậy....mong bác hiểu được thành ý của mình ....mãi mà ko upload đc bản vẽ....bác júp một tay nhá...thank
  • 0

#1242 smilingman82

smilingman82

    biết vẽ arc

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

Đã gửi 23 October 2008 - 09:36 PM

cái code trên là m tìm thấy trên này của bác VN...ex...dos nhá.....Ghi chú rõ ở dưới r mà, chứ ko phải m viết đâu.....chưa đủ trình.......
  • 0

#1243 smilingman82

smilingman82

    biết vẽ arc

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

Đã gửi 23 October 2008 - 09:39 PM

chắc bác hoanh hiểu nhầm rùi, mình copy nguyên xi phần code của bác VN và cả comment củabác ý nũa
*****

Tặng Bommak đọan code này nè. Cái này mà bây giờ bạn cố nghĩ cũng chẳng biết để làm gì đâu. Nhưng mà dùng được đấy.
Nội dung: lấy tất cả các đỉnh của một LINE, PLINE hoặc MLINE...
--------------------
cuongvk@daitri.biz
vkcuong.23@gmail.com
Skype: cuong.vokien
Phone: 01689924187
Dreams have come true if you still believe...
*************

cái này của bác VNex...dos >>>m ghi rõ mà
  • 0

#1244 smilingman82

smilingman82

    biết vẽ arc

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

Đã gửi 23 October 2008 - 09:47 PM

link file đây các bác ạ>>>
http://www.cadviet.c...ddddddddddd.bmp
  • 0

#1245 trinhks

trinhks

    biết vẽ circle

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

Đã gửi 02 November 2008 - 12:27 AM

chào bác Hoành và tất cả các bác.em đang cần 1 lisp mà em post từ rất lâu rùi mà ko thấy ai giúp đỡ cả,phải chăng em yêu cầu hơi quá hay là ko có lisp như vầy.Em post lại yêu cầu về lisp nhé:'Chào các pro về autolisp,em đang cần 1 lisp có nội dung như thế này:trong 1 bản vẽ cad em làm việc với nhiều tỉ lệ khác nhau(vd:1-1,1-2,1-5...).mỗ lần muốn dùng 1 tỷ lệ thì lại phải di chuột lên hộp thoại dim style cotrol chọn rất mất thời gian,em muốn có 1 lisp có thể đặt các tỷ lệ đó là các phím tắt để mỗi lần cần sử dụng tỷ lệ nào chỉ cần gõ phím tắt là sử dụng ngay tỷ lệ đó đc.ko bit trên diễn đàn đã có ai post lisp này lên chưa mà e tìm mãi ko thấy.bác nào có hoặc viết đc giúp em thì post lên diễn đàn cho em với nhá.Cám ơn các bác trước nhé!' Vì em đang rất cần nên em tìm kiếm rất nhiều mà chưa đc.các bác đọc yc của em nếu ko thể có lisp nào như vậy thì các báo cho e bit 1 tiếng để em đỡ mất công tìm kiếm.Thanks các bác nhiều!!

Bài viết đã được chỉnh sửa nội dung bởi trinhks: 02 November 2008 - 12:29 AM

  • 0

#1246 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 02 November 2008 - 07:32 AM

chào bác Hoành và tất cả các bác.em đang cần 1 lisp mà em post từ rất lâu rùi mà ko thấy ai giúp đỡ cả,phải chăng em yêu cầu hơi quá hay là ko có lisp như vầy.Em post lại yêu cầu về lisp nhé:'Chào các pro về autolisp,em đang cần 1 lisp có nội dung như thế này:trong 1 bản vẽ cad em làm việc với nhiều tỉ lệ khác nhau(vd:1-1,1-2,1-5...).mỗ lần muốn dùng 1 tỷ lệ thì lại phải di chuột lên hộp thoại dim style cotrol chọn rất mất thời gian,em muốn có 1 lisp có thể đặt các tỷ lệ đó là các phím tắt để mỗi lần cần sử dụng tỷ lệ nào chỉ cần gõ phím tắt là sử dụng ngay tỷ lệ đó đc.ko bit trên diễn đàn đã có ai post lisp này lên chưa mà e tìm mãi ko thấy.bác nào có hoặc viết đc giúp em thì post lên diễn đàn cho em với nhá.Cám ơn các bác trước nhé!' Vì em đang rất cần nên em tìm kiếm rất nhiều mà chưa đc.các bác đọc yc của em nếu ko thể có lisp nào như vậy thì các báo cho e bit 1 tiếng để em đỡ mất công tìm kiếm.Thanks các bác nhiều!!

Bạn muốn có 1 lệnh:
Gõ tyle,
Lisp sẽ yêu cầu bạn nhập vào tỷ lệ bạn cần vẽ tiếp theo.
Và set current dimstyle về tên của tỷ lệ, ví dụ Dim1, Dim2, Dim5, Dim20, Dim25, Dim50,....?
  • 0

#1247 trinhks

trinhks

    biết vẽ circle

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

Đã gửi 02 November 2008 - 09:53 AM

Bạn muốn có 1 lệnh:
Gõ tyle,
Lisp sẽ yêu cầu bạn nhập vào tỷ lệ bạn cần vẽ tiếp theo.
Và set current dimstyle về tên của tỷ lệ, ví dụ Dim1, Dim2, Dim5, Dim20, Dim25, Dim50,....?

Lần trước tìm trên cadviet.com em có tìm thấy 1 lisp chuyển layer rất nhanh, em ko nhớ của tác giả nào.về em đã sửa lại theo ý em và chạy rất tốt

(defun layer_style ()
(if (not (tblsearch "layer" "5.NHA" ))
(command "-layer" "new" "5.NHA" "color" 5 "5.NHA" ""))
(if (not (tblsearch "layer" "8.TEXT" ))
(command "-layer" "new" "8.TEXT" "color" 3 "8.TEXT" ""))
(if (not (tblsearch "layer" "6.DIM" ))
(command "-layer" "new" "6.DIM" "color" 92 "6.DIM" ""))
(if (not (tblsearch "layer" "7.DUONG" ))
(command "-layer" "new" "7.DUONG" "color" 1 "7.DUONG" ""))

)
;;; ===========================================================================
;;; ===========================================================================
; ====================== Tao & dat mau layer hien hanh ================
(defun taolop (mau lop / a) (setq a (tblsearch "layer" lop))
(if (null a) (command "layer" "n" lop "c" mau lop "")) (setvar "clayer" lop)
(princ "\n Layer_ hien hanh la: ") (princ lop)
(princ "\n Color layer_ hien hanh la: ") (princ mau) (princ) )
;;;===========================Chon layer hien hanh===============
(defun c:5 () (Command "clayer" "5.NHA"))
(defun c:6 () (Command "clayer" "6.DIM"))
(defun c:7 () (Command "clayer" "7.DUONG"))
(defun c:8 () (Command "clayer" "8.TEXT"))

;;; ====================== Setting Text Style =================================
(defun text_style ()
(if (not (tblsearch "style" "Times New Roman" ))
(command "-style" "Times New Roman" "Times New Roman" 0 0.8 0 "no" "no" "no"))
(if (not (tblsearch "style" "Times New Roman" ))
(command "-style" "Times New Roman" "Times New Roman" 0 0.8 0 "no" "no" "no"))
(if (not (tblsearch "style" "romant" ))
(command "-style" "Times New Roman" "Times New Roman" 0 0.8 0 "no" "no" "no"))
)
em ko bit nhiều về lissp,ko biết đã copy đủ dòng lệnh chưa vì trong lisp đó rất dài em chưa tìm hết đc tác dụng của từng đoạn code.nhưng cái lisp e đang cần nó cũng dạng như thế này đó.bác Hoành giúp em sớm nhé.cám ơn bác nhiều!!!
  • 0

#1248 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 02 November 2008 - 10:00 AM

Lần trước tìm trên cadviet.com em có tìm thấy 1 lisp chuyển layer rất nhanh, em ko nhớ của tác giả nào.về em đã sửa lại theo ý em và chạy rất tốt
....
em ko bit nhiều về lissp,ko biết đã copy đủ dòng lệnh chưa vì trong lisp đó rất dài em chưa tìm hết đc tác dụng của từng đoạn code.nhưng cái lisp e đang cần nó cũng dạng như thế này đó.bác Hoành giúp em sớm nhé.cám ơn bác nhiều!!!

Khổ quá, nói mãi. Lisp bạn cần mà bạn tìm được rồi thì thôi khỏi cần viết lisp khác nữa đúng không?

Còn không, cụ thể bạn muốn gì bạn cứ gạch đầu dòng ra.
  • 0

#1249 trinhks

trinhks

    biết vẽ circle

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

Đã gửi 02 November 2008 - 10:06 AM

Khổ quá, nói mãi. Lisp bạn cần mà bạn tìm được rồi thì thôi khỏi cần viết lisp khác nữa đúng không?

Còn không, cụ thể bạn muốn gì bạn cứ gạch đầu dòng ra.

Khó nói cho bác hiểu quá nhỉ.lisp e pót lên là lisp chuyển layer nhanh.bây h em muốn líp chuyển đổi giữa các tỷ lệ.bác hiểu rồi chứ
  • 0

#1250 trinhks

trinhks

    biết vẽ circle

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

Đã gửi 02 November 2008 - 10:22 AM

Khổ quá, nói mãi. Lisp bạn cần mà bạn tìm được rồi thì thôi khỏi cần viết lisp khác nữa đúng không?

Còn không, cụ thể bạn muốn gì bạn cứ gạch đầu dòng ra.

trong bản vẽ của e có các tỷ lệ 1-1;1-2;góc
lisp e yc cụ thể là thế này
đặt tỷ lệ 1-1 là phím tắt 11 trên bàn phím
đặt tỷ lệ 1-2 là phím tắt 12 trên bàn phím
đặt tỷ lệ góc là phím tắt 22 trên bàn phím

Để khi em đang làm việc ở tỷ lệ 1-1,muốn chuyển sang tỷ lệ 1-2 thì em x\chỉ cần gõ phím 12 là tự động bản vẽ đc vẽ ở tỷ lệ 1-2;hoặc với góc cũng vậy
(bản vẽ e đang làm theo tỷ lệ tiêu chuẩn iso 25 trong hệ metric)
  • 0

#1251 smilingman82

smilingman82

    biết vẽ arc

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

Đã gửi 02 November 2008 - 10:33 AM

link file đây các bác ạ>>>
http://www.cadviet.c...ddddddddddd.bmp

bác nào bít júp m cái, vẫn đang cần ợ ....thank các pác
  • 0

#1252 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 02 November 2008 - 11:02 AM

trong bản vẽ của e có các tỷ lệ 1-1;1-2;góc
lisp e yc cụ thể là thế này
đặt tỷ lệ 1-1 là phím tắt 11 trên bàn phím
đặt tỷ lệ 1-2 là phím tắt 12 trên bàn phím
đặt tỷ lệ góc là phím tắt 22 trên bàn phím

Để khi em đang làm việc ở tỷ lệ 1-1,muốn chuyển sang tỷ lệ 1-2 thì em x\chỉ cần gõ phím 12 là tự động bản vẽ đc vẽ ở tỷ lệ 1-2;hoặc với góc cũng vậy
(bản vẽ e đang làm theo tỷ lệ tiêu chuẩn iso 25 trong hệ metric)

Chưa hiểu cấu trúc bản vẽ và cách vẽ của bạn.
- khi nhấn 11 thì lisp sẽ làm gì? không đơn giản như bạn nói vì 'đặt tỷ 1-1' có vô vàn ý nghĩa và thao tác khác nhau phụ thuộc vào cách vẽ của bạn.
- tỷ lệ góc? không hiểu thuật ngữ này của bạn.
- Bạn có thể upload 1 bản vẽ lên diễn được không?
  • 1

#1253 cadviet244

cadviet244

    HVKT-12

  • Members
  • PipPipPipPip
  • 245 Bài viết
Điểm đánh giá: 157 (tàm tạm)

Đã gửi 02 November 2008 - 02:01 PM

Các bác ơi! e có 1 ý tưởng về lip, các bác có thể viết lip dùm e được hông, ý tưởng là : khi mình tạo một block thi muốn trim, exten block thì phải vô block rồi mình mới chọn đối tượng cần trim hay exten thì lúc đó mình mới thực hiện lệnh được vậy có bác có thể viết lip là không cần phải vô block mà mình vẫn trim hay exten những đối tượng ở trong block được hông, giống như lệnh NCOPY.E xin cảm ơn các bác nhiều lắm
  • 0

#1254 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 02 November 2008 - 02:15 PM

Các bác ơi! e có 1 ý tưởng về lip, các bác có thể viết lip dùm e được hông, ý tưởng là : khi mình tạo một block thi muốn trim, exten block thì phải vô block rồi mình mới chọn đối tượng cần trim hay exten thì lúc đó mình mới thực hiện lệnh được vậy có bác có thể viết lip là không cần phải vô block mà mình vẫn trim hay exten những đối tượng ở trong block được hông, giống như lệnh NCOPY.E xin cảm ơn các bác nhiều lắm

bạn hãy sử dụng lệnh refedit có sẵn của AutoCAD trước khi trim hay extend là được.
  • 0

#1255 ph168xd

ph168xd

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 779 Bài viết
Điểm đánh giá: 309 (khá)

Đã gửi 02 November 2008 - 04:36 PM

Các Bác viết giúp em lish sau với.
Em làm ý công trình. Vẽ bằng Pline với width =220 or =110.
Sau đó em muốn chuyển toàn bộ Pl vừa vẽ về 2 line có khoảng cách 220 or 110
http://www.cadviet.c.../Drawing2_5.dwg

Em đã post yêu cầu 1 lần, nhưng ko thấy ai trả lời, chắc vì đợt đó có quá nhìu iu cầu.
Nay em xin post lại mong các bác giúp
  • 0

#1256 trinhks

trinhks

    biết vẽ circle

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

Đã gửi 02 November 2008 - 09:39 PM

Chưa hiểu cấu trúc bản vẽ và cách vẽ của bạn.
- khi nhấn 11 thì lisp sẽ làm gì? không đơn giản như bạn nói vì 'đặt tỷ 1-1' có vô vàn ý nghĩa và thao tác khác nhau phụ thuộc vào cách vẽ của bạn.
- tỷ lệ góc? không hiểu thuật ngữ này của bạn.
- Bạn có thể upload 1 bản vẽ lên diễn được không?

em post 1 bài mẫu của em lên,bác Hoành xem thử.Trong đó có cả lisp chuyển nhanh layer em đang dùng,bác ap vào bản vẽ thử xem rồi bác sẽ hiểu yc của em.
http://www.cadviet.c...les/banve_1.zip
  • 0

#1257 traitimsat034

traitimsat034

    biết vẽ pline

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

Đã gửi 02 November 2008 - 11:42 PM

em post 1 bài mẫu của em lên,bác Hoành xem thử.Trong đó có cả lisp chuyển nhanh layer em đang dùng,bác ap vào bản vẽ thử xem rồi bác sẽ hiểu yc của em.
http://www.cadviet.c...les/banve_1.zip

ko hiểu ông này viết gì nữa, em hiểu nôm na hình như ông ta muốn lệnh thay đổi dimstyle hiện hành thì phải...?????????
  • 0

#1258 trinhks

trinhks

    biết vẽ circle

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

Đã gửi 03 November 2008 - 01:15 AM

ko hiểu ông này viết gì nữa, em hiểu nôm na hình như ông ta muốn lệnh thay đổi dimstyle hiện hành thì phải...?????????

ông hiểu đúng ý tôi rồi đó.chắc là do cách diễn đạt của mình còn kém nên mọi ng ko hiểu yc của mình.ông bạn giúp tôi vụ này nhé.cám ơn ông bạn và mọi ng nhiều!!!!
  • 0

#1259 vanduong

vanduong

    biết lệnh adcenter

  • Validating
  • PipPipPipPipPipPipPip
  • 1383 Bài viết
Điểm đánh giá: 536 (tốt)

Đã gửi 03 November 2008 - 02:11 AM

ông hiểu đúng ý tôi rồi đó.chắc là do cách diễn đạt của mình còn kém nên mọi ng ko hiểu yc của mình.ông bạn giúp tôi vụ này nhé.cám ơn ông bạn và mọi ng nhiều!!!!

Lần sau các bạn cần nguời ta giúp gì thì phải nói rõ ra - thật ngắn gọn và súc tích điều mình muốn hỏi.
Các bạn hỏi - nhưng nguời ta chưa trả lời đuợc ngay là vì có nhiều lý do chẳng hạn như họ còn có công việc của họ, không online thuờng xuyên, trả lời rùi mà vẫn hỏi, ...
Đã yêu cầu nguời ta giúp thì phải biết chấp nhận và đợi chờ ....
  • 0

#1260 traitimsat034

traitimsat034

    biết vẽ pline

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

Đã gửi 03 November 2008 - 03:47 AM

ông hiểu đúng ý tôi rồi đó.chắc là do cách diễn đạt của mình còn kém nên mọi ng ko hiểu yc của mình.ông bạn giúp tôi vụ này nhé.cám ơn ông bạn và mọi ng nhiều!!!!

bạn dùng thử hai lệnh này xem

(defun c:dh1() (command ".dimstyle" "r" "1000")) ; "1000 la ten dimstyle vi du"
(defun c:dh() (command ".dimstyle" "r" "" ))
  • 1