Đến nội dung


Hình ảnh
- - - - -

[Đã Xong] Lisp Vẽ Đường Đồng Mức Tốc Độ Cao


  • Please log in to reply
15 replies to this topic

#1 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 13 November 2016 - 11:09 AM

Thấy nhiều bạn than phiền các lisp vẽ Đường Đồng Mức (ĐĐM) thường chạy chậm, thậm chí đôi khi treo máy, nên tôi làm cái này phục vụ cộng đồng.

Lisp có một phần nguồn từ Internet, tôi hiệu chỉnh và bổ sung để tăng tốc độ xử lý. Một phần khác tự viết.

Code mở nên mọi người tha hồ vọc. Lệnh: DDM.

Test với bản vẽ 22629 points ở máy tôi chỉ mất 60 giây (với các thông số mặc định trong lisp).

Chức năng: vẽ các tam giác TIN, vẽ ĐĐM, tô màu theo cao độ cho ĐĐM.

Đối tượng: tập các point, hoặc tập các text, hoặc tập các block_att cao độ.

File Cad để test:

http://www.mediafire..._Contour_HA.dwg

File Lisp:

http://www.mediafire..._Contour_HA.lsp

File Image:

http://www.mediafire..._Contour_HA.png

 

Còn vài điều chưa hài lòng lắm, sẽ sửa sau. Hy vọng được đem đến nguồn vui cho mọi người!


  • 9

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


#2 thanhduan2407

thanhduan2407

    biết lệnh adcenter

  • Advance Member
  • PipPipPipPipPipPipPip
  • 992 Bài viết
Điểm đánh giá: 223 (khá)

Đã gửi 13 November 2016 - 11:13 AM

Thấy nhiều bạn than phiền các lisp vẽ Đường Đồng Mức (ĐĐM) thường chạy chậm, thậm chí đôi khi treo máy, nên tôi làm cái này phục vụ cộng đồng.

Lisp có nguồn trên Internet, tôi hiệu chỉnh và bổ sung để tăng tốc độ xử lý.

Code mở nên mọi người tha hồ vọc. Lệnh: DDM.

Test với bản vẽ 22629 points ở máy tôi chỉ mất 60 giây.

Chức năng: vẽ các tam giác TIN, vẽ ĐĐM, tô màu theo cao độ cho ĐĐM.

Đối tượng: tập các point, hoặc tập các text, hoặc tập các block_att cao độ.

File Cad để test:

http://www.mediafire..._Contour_HA.dwg

File Lisp:

http://www.mediafire..._Contour_HA.lsp

File Image:

http://www.mediafire..._Contour_HA.png

 

Còn vài điều chưa hài lòng lắm, sẽ sửa sau. Hy vọng được đem đến nguồn vui cho mọi người!

Cháu cảm ơn bác Hạ nhiều! Chúc bác sức khỏe và thành công trong cuộc sống!


  • 0



Tôi là con kiến bò trên sa mạc kiến thức bao la. Biển học thật rộng lớn







#3 hoquangvinh

hoquangvinh

    biết lệnh mirror

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

Đã gửi 13 November 2016 - 05:12 PM

chưa test hết các vấn đề nhưng lisp đã chạy ngon rồi

thanks bác HA rất nhiều


  • 0

#4 KangKung

KangKung

    biết lệnh array

  • Members
  • PipPipPip
  • 189 Bài viết
Điểm đánh giá: 227 (khá)

Đã gửi 13 November 2016 - 11:00 PM

Lisp của bác Hạ chạy tốt, người viết Lisp có tâm, tuy nhiên còn có lỗi lấy nhầm Justify của Text. Chỉ đúng khi Justify là Left còn lại thì lấy sai điểm dẫn đến lưới mô hình độ cao bị lệch do đó đường đồng mức cũng lệch theo. Bác Hạ nên thay đoạn mã này: (setq lstXYZ (mapcar '(lambda(ent) (cdr (assoc 10 (entget ent)))) lstEnt))
bằng đoạn mã sau đây: (setq lstXYZ (mapcar '(lambda(ent) (if (= (+ (cdr(assoc 72 (setq txt(entget ent)))) (cdr(assoc 73 txt))) 0) (cdr (assoc 10 txt)) (cdr (assoc 11 txt)))) lstEnt))
  • 1

#5 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 14 November 2016 - 07:33 AM

Like mạnh.

 

Lisp của bác Hạ chạy tốt, người viết Lisp có tâm, tuy nhiên còn có lỗi lấy nhầm Justify của Text ...

@ KangKung : chuyện nhỏ mà ?!


  • 0

#6 thanhduan2407

thanhduan2407

    biết lệnh adcenter

  • Advance Member
  • PipPipPipPipPipPipPip
  • 992 Bài viết
Điểm đánh giá: 223 (khá)

Đã gửi 15 November 2016 - 07:49 AM

Các bác cho em hỏi là với bản vẽ em gửi dưới đây các bác chạy hết bao nhiêu giây ạ?

http://www.mediafire...OA_TL500_L3.dwg

Em chạy nó mất hơn 800 giây


  • 0



Tôi là con kiến bò trên sa mạc kiến thức bao la. Biển học thật rộng lớn







#7 Bee

Bee

    biết lệnh extend

  • Members
  • PipPipPip
  • 195 Bài viết
Điểm đánh giá: 66 (tàm tạm)

Đã gửi 15 November 2016 - 01:11 PM

Các bác cho em hỏi là với bản vẽ em gửi dưới đây các bác chạy hết bao nhiêu giây ạ?

http://www.mediafire...OA_TL500_L3.dwg

Em chạy nó mất hơn 800 giây

Của mình 172s bước 1m.

 

Untitled6f1f2.png


  • 0

#8 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 15 November 2016 - 02:18 PM

Máy mọi người sao chậm nhỉ? Máy mình:

- Bước 2.0m: 63 giây

- Bước 1.0m: 116 giây

- Bước 0.5m: 224 giây


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


#9 Bee

Bee

    biết lệnh extend

  • Members
  • PipPipPip
  • 195 Bài viết
Điểm đánh giá: 66 (tàm tạm)

Đã gửi 15 November 2016 - 04:21 PM

Máy mọi người sao chậm nhỉ? Máy mình:

- Bước 2.0m: 63 giây

- Bước 1.0m: 116 giây

- Bước 0.5m: 224 giây

Máy bác i7, máy e Pen IV. ^_^


  • 0

#10 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 15 November 2016 - 04:43 PM

Oa! Vậy tôi sẽ cải tiến cho nhanh hơn chút nữa.


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


#11 Tuynh

Tuynh

    biết vẽ arc

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

Đã gửi 15 November 2016 - 05:22 PM

Cám ơn bác nhé lisp chạy rất ngon. Tiện đây em cũng yêu cầu bác có thể thêm lệnh phát sinh điểm trên mô hình tam giác Polyline3D không tức là tăng dày thêm điểm trêm mô hình 


  • 0

#12 ndtnv

ndtnv

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 437 Bài viết
Điểm đánh giá: 384 (khá)

Đã gửi 16 November 2016 - 10:45 AM

Thấy nhiều bạn than phiền các lisp vẽ Đường Đồng Mức (ĐĐM) thường chạy chậm, thậm chí đôi khi treo máy, nên tôi làm cái này phục vụ cộng đồng.

Lisp có một phần nguồn từ Internet, tôi hiệu chỉnh và bổ sung để tăng tốc độ xử lý. Một phần khác tự viết.

Code mở nên mọi người tha hồ vọc. Lệnh: DDM.

Test với bản vẽ 22629 points ở máy tôi chỉ mất 60 giây (với các thông số mặc định trong lisp).

Chức năng: vẽ các tam giác TIN, vẽ ĐĐM, tô màu theo cao độ cho ĐĐM.

Đối tượng: tập các point, hoặc tập các text, hoặc tập các block_att cao độ.

File Cad để test:

http://www.mediafire..._Contour_HA.dwg

File Lisp:

http://www.mediafire..._Contour_HA.lsp

File Image:

http://www.mediafire..._Contour_HA.png

 

Còn vài điều chưa hài lòng lắm, sẽ sửa sau. Hy vọng được đem đến nguồn vui cho mọi người!

Tôi cũng có dự định viết chương trình Đường Đồng Mức bằng ARX và đã viết xong phần tạo lưới tam giác. Tuy nhiên đến phần vẽ ĐĐM, tham khảo các file cad tôi thấy ĐĐM vẽ bằng các line xấp xỉ Spline nên rất mịn. Search tìm công thức Spline chưa ra, mặt khác vì không có chuyên môn sâu về trắc địa nên không rõ nguyên tắc xấp xỉ Spline như thế nào nên còn để đó.

Tham khảo file test thì thấy lisp của bạn Doan Van Ha chạy còn thiếu nhiều chỗ (>15), ĐĐM còn thô nên không biết có đạt y/c TCVN không?

Về câu hỏi bên http://www.cadviet.c...142#entry410604

bạn thử dùng cách chọn các line cùng cao độ rồi dùng lệnh PEDIT Join của cad xem.


  • 0

#13 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 16 November 2016 - 02:03 PM

Tôi cũng có dự định viết chương trình Đường Đồng Mức bằng ARX và đã viết xong phần tạo lưới tam giác. Tuy nhiên đến phần vẽ ĐĐM, tham khảo các file cad tôi thấy ĐĐM vẽ bằng các line xấp xỉ Spline nên rất mịn. Search tìm công thức Spline chưa ra, mặt khác vì không có chuyên môn sâu về trắc địa nên không rõ nguyên tắc xấp xỉ Spline như thế nào nên còn để đó.

Tham khảo file test thì thấy lisp của bạn Doan Van Ha chạy còn thiếu nhiều chỗ (>15), ĐĐM còn thô nên không biết có đạt y/c TCVN không?

Về câu hỏi bên http://www.cadviet.c...142#entry410604

bạn thử dùng cách chọn các line cùng cao độ rồi dùng lệnh PEDIT Join của cad xem.

1). Thiếu nhiều chỗ là do khoảng cách lấy mặc định 30m không đủ khép tam giác. User có quyền tăng mà.

2). Pedit chậm lắm, nhất là khi xử lý tập lớn.


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


#14 ndtnv

ndtnv

    biết lệnh minsert

  • Members
  • PipPipPipPipPipPip
  • 437 Bài viết
Điểm đánh giá: 384 (khá)

Đã gửi 16 November 2016 - 02:28 PM

Test trên máy tôi :

Bước 2.0m: 121 giây

PEDIT Join trên bv mẫu:

Select objects:   15090 found

14935 segments added to 154 polylines : 4687 millisecs


  • 0

#15 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 17 November 2016 - 09:49 PM

Draw_Contour_HA1.png

Đây là lisp giải quyết các trường hợp máy cùi:
http://www.mediafire...ontour_HA02.fas

Làm từ thiện bây giờ khó lắm: MC Phan Anh.

Post bài lên CV bây giờ còn khó hơn: tôi

Giá như có ai đó có Web tốt để theo?


  • 3

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


#16 thanhduan2407

thanhduan2407

    biết lệnh adcenter

  • Advance Member
  • PipPipPipPipPipPipPip
  • 992 Bài viết
Điểm đánh giá: 223 (khá)

Đã gửi 18 November 2016 - 07:15 AM

Draw_Contour_HA1.png

Đây là lisp giải quyết các trường hợp máy cùi:
http://www.mediafire...ontour_HA02.fas

Làm từ thiện bây giờ khó lắm: MC Phan Anh.

Post bài lên CV bây giờ còn khó hơn: tôi

Giá như có ai đó có Web tốt để theo?

Bác giỏi và thật nhiệt tình.

Mong anh Hoành nâng cấp Web chứ nhiều thứ hơi bất tiện.

Ví dụ:

Em muốn Up ảnh lên cứ phải up lên trang khác rồi copy link. 

Muốn xóa bài mình vừa đăng sai mà không được.

Thời gian đăng bài nó báo nhanh quá cũng ko được, cứ phải chờ 1 lúc mới đăng được.

Các trang hiển thị hơi ít, toàn bị trôi, phải vào phần bài viết cá nhân hoặc các chủ đề mới thấy được.

.......


  • 0



Tôi là con kiến bò trên sa mạc kiến thức bao la. Biển học thật rộng lớn