Đến nội dung


Hình ảnh
- - - - -

Hỏi về lisp nối line, pline (nn, lj,...)


  • Please log in to reply
13 replies to this topic

#1 tuvanthietke.hcm

tuvanthietke.hcm

    biết lệnh array

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

Đã gửi 16 March 2011 - 11:43 AM

Sao mình dùng nó chỉ biến các line thành pline không nối liền 2 line hay pline lại với nhau?

Hình đã gửi
  • 0

#2 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 16 March 2011 - 12:01 PM

Chỉ có thể nói 1 câu : chắc mọi người chịu
- nn,lj... của bạn là cái lisp như thế nào? lisp ở đâu ? nội dung ra làm sao ?
- Lúc dùng thì nó báo như thế nào ???
- File cad ra làm sao ??

Giả sử mình hỏi bạn,"- Hỏi về lisp thống kê tkt, tkth..."- " Sao mình dùng nó không ra cái j", bạn là người đọc, kể cả bạn có biết cái tkt đấy, bạn có giúp được hem :)
  • 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


#3 namnhim

namnhim

    biết vẽ polygon

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

Đã gửi 25 March 2011 - 03:44 PM

Cho mượn Topic này hỏi về nội dung tương tự nhé Bac!
em có mót được trên diễn đàn cái lisp chuyển Line sang Pline, những đường Line đơn giản thì chuyển rất ok nhưng đường Line em gửi lên đây thì bị tình trạng như trong hình vẽ kèm theo. nhờ các bác khắc phục giúp em với!
Đây là lisp:
http://www.cadviet.c..._sang_pline.lsp
Đây là bản vẽ:
http://www.cadviet.c.../10010103_1.dwg
  • 0

#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 25 March 2011 - 04:09 PM

Cho mượn Topic này hỏi về nội dung tương tự nhé Bac!
em có mót được trên diễn đàn cái lisp chuyển Line sang Pline, những đường Line đơn giản thì chuyển rất ok nhưng đường Line em gửi lên đây thì bị tình trạng như trong hình vẽ kèm theo. nhờ các bác khắc phục giúp em với!
Đây là lisp:
http://www.cadviet.c..._sang_pline.lsp
Đây là bản vẽ:
http://www.cadviet.c.../10010103_1.dwg

Tiếc là tôi không rành mấy thứ vl, vla, vlax, acep... nên không sửa trực tiếp file lisp của bạn được (dù file rất gọn).
Nhưng bạn dùng cái này xem (cũng trên CADViet, tôi "mông má" lại). Nó không bị lỗi đó.
http://www.cadviet.c...duong_pline.lsp
P/S: À, mới tìm ra. Có 2 cách:
1. Bạn sửa số "10" thành số "0".
2. Bạn format đơn vị đo về càng nhỏ càng tốt.
  • 0

* 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 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 25 March 2011 - 06:39 PM

@ Chủ topic : Trên diễn đàn có khá nhiều lisp nối *Line rồi đó bạn, nếu chịu khó dùng công cụ search thì sẽ thấy kha khá.
@ Doan Van Ha : thực chất trong lisp này chỉ có duy nhất 1 lệnh vl-cmdf, và mình nghĩ bạn nên tiếp cận dần dần với Visual Lisp để hoàn thiện hơn, đúng không nào ^^
- Mình xin nói qua 1 chút ý mình hiểu về Vl-cmdf : vl-cmdf cũng giống như command của autolisp, thực hiện các lệnh commandline, tuy nhiên thằng này xịn hơn ở chỗ nó sẽ kiểm tra các đối số trước khi thực hiện lệnh (khác với command là đọc từ trái sang phải, gặp lỗi thì ngưng).Trong trường hợp gặp lỗi, nó trả về thông báo lỗi của biểu thức, và.. tiếp tục thực hiện biểu thức tiếp theo.vl-cmdf vì thế tiện hơn trong việc đọc lỗi và try^^
Cũng chính vì vậy, lisp chủ topic đưa cho không cần if
  • 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


#6 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 696 (tốt)

Đã gửi 25 March 2011 - 07:09 PM

- Mình xin nói qua 1 chút ý mình hiểu về Vl-cmdf : vl-cmdf cũng giống như command của autolisp, thực hiện các lệnh commandline, tuy nhiên thằng này xịn hơn ở chỗ nó sẽ kiểm tra các đối trước khi thực hiện lệnh (khác với command là đọc từ trái sang phải, gặp lỗi thì ngưng).Trong trường hợp gặp lỗi, nó trả về thông báo lỗi của biểu thức, và.. tiếp tục thực hiện biểu thức tiếp theo.vl-cmdf vì thế tiện hơn trong việc đọc lỗi và try^^
Cũng chính vì vậy, lisp chủ topic đưa cho không cần if

Bổ sung thêm là hàm command trả về nil còn vl-cmdf trả về T. hì hì
  • 0
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!

#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 25 March 2011 - 09:13 PM

@ Chủ topic : Trên diễn đàn có khá nhiều lisp nối *Line rồi đó bạn, nếu chịu khó dùng công cụ search thì sẽ thấy kha khá.
@ Doan Van Ha : thực chất trong lisp này chỉ có duy nhất 1 lệnh vl-cmdf, và mình nghĩ bạn nên tiếp cận dần dần với Visual Lisp để hoàn thiện hơn, đúng không nào ^^
- Mình xin nói qua 1 chút ý mình hiểu về Vl-cmdf : vl-cmdf cũng giống như command của autolisp, thực hiện các lệnh commandline, tuy nhiên thằng này xịn hơn ở chỗ nó sẽ kiểm tra các đối trước khi thực hiện lệnh (khác với command là đọc từ trái sang phải, gặp lỗi thì ngưng).Trong trường hợp gặp lỗi, nó trả về thông báo lỗi của biểu thức, và.. tiếp tục thực hiện biểu thức tiếp theo.vl-cmdf vì thế tiện hơn trong việc đọc lỗi và try^^
Cũng chính vì vậy, lisp chủ topic đưa cho không cần if

Cám ơn bác, tôi sẽ học vlisp. Nhưng dù sao thì tôi cũng đã P/S rồi mà. Và nó đúng chứ?
  • 0

* 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 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 25 March 2011 - 09:32 PM

Ồ, đúng rồi mà.Sửa số 10 thành số 0 tức là fuzzz = 0, tức là Object nào chạm nhau nó với nối, và tất nhiên k có lỗi mà chủ topic đề cầp.
Sửa đơn vị nhỏ đi cũng có nghĩa giảm fuzzz thực tế, nên cũng có thể giải quyết được vấn đề ^^
  • 1

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


#9 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 25 March 2011 - 10:02 PM

Ồ, đúng rồi mà.Sửa số 10 thành số 0 tức là fuzzz = 0, tức là Object nào chạm nhau nó với nối, và tất nhiên k có lỗi mà chủ topic đề cầp.
Sửa đơn vị nhỏ đi cũng có nghĩa giảm fuzzz thực tế, nên cũng có thể giải quyết được vấn đề ^^

Bác Ketxu à, sửa 10 thành 0 thì dễ hiểu nhưng sửa bằng cách format cho đơn vị đo nhỏ đi thì tôi chưa hiểu
thấu đáo(mặc dù đã dùng).
Vì trong bài toán của topic 2 line này "chạm". Có lẻ do góc giao nhau quá nhỏ?
  • 0

* 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.


#10 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 25 March 2011 - 10:25 PM

Thực ra mình cũng chưa test trên bản vẽ đó, mình chỉ suy luận ra distance CAD tính theo đơn vị unit, giảm nó đi tức trên thực tế cũng giảm khoảng cách tối đa để nối. Còn về góc để nối khi dùng lệnh Pedit, mình nghĩ là không ảnh hưởng đâu, vì kể cả khi nó = 0 thì mình thấy vẫn nối như thường
  • 1

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


#11 namnhim

namnhim

    biết vẽ polygon

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

Đã gửi 28 March 2011 - 12:09 PM

oh đúng rồi, mình đã sửa và chạy không bị như trước nữa.
cảm ơn 2 bác nhé!
  • 0

#12 namnhim

namnhim

    biết vẽ polygon

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

Đã gửi 01 April 2011 - 04:01 PM

các bác giúp em 1 chút nữa với là làm thế nào chuyển cả Line, Arc, Spline thành Pline vậy?
em thêm Spline vào:
(if (setq ss (ssget '((0 . "*line,arc,spline"))))
mà vẫn không được!
  • 0

#13 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 01 April 2011 - 04:10 PM

Theo mình biết thì với CAD<08 thì không nối Spline vào được. Còn cad12 mình đang test thì nối vô tư, không biết 09,10,11 có vậy không :)
  • 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


#14 namnhim

namnhim

    biết vẽ polygon

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

Đã gửi 01 April 2011 - 06:06 PM

oh, vậy thì tiếc nhỉ vì em đang dùng cad2004 chưa dùng thử trên cad đời sau này! có lẽ phải khám phá cái mới thôi không cứ dậm chân tại chỗ với cái 2004 miết người ta cười mình bác nhỉ! :rolleyes:
  • 0