Đến nội dung


Hình ảnh
- - - - -

Tạo lưới tam giác ( delaunay) bằng đường lwpolyline?


  • Please log in to reply
2 replies to this topic

#1 rangxeng

rangxeng

    Chưa sử dụng CAD

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

Đã gửi 07 October 2013 - 09:52 AM

Em xin chào các cao thủ trên cadviet.com em đang gặp vấn đề này mà em ko biết giải quyết như thế nào, em rất mong được các cao nhân về vba ở đây chỉ dậy cho cái đầu óc em được khai sáng về vấn đề này với 
Chả là em đang phải xây dựng lươí tam giác delaunay bằng các đường lwpolyline, tại thời điểm nay em chưa biết mình nên phải viết cái gì đầu tiên nữa hic hic.

Rất mong được các anh chị giúp đỡ, em xin chân thành cảm ơn ạ !!!


  • -1

#2 rangxeng

rangxeng

    Chưa sử dụng CAD

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

Đã gửi 07 October 2013 - 04:26 PM

híc, ko bác nào giúp em ạ :(


  • 0

#3 ledungtdc

ledungtdc

    Chưa sử dụng CAD

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

Đã gửi 06 November 2013 - 11:36 PM

Lưới tam giác không quy chuẩn delaunay được tạo trên cơ sở tập điểm. Bạn dùng lwpolyline thì mình hiểu là tập điểm 2D. Theo như những gì mình đã làm thì bạn hãy bắt đầu từ việc tạo file text chứa các điểm gồm tên và tọa độ các điểm. Dùng vba đọc nó lên mảng sau đó sử dụng thuật toán delaunay với đầu vào là mảng điểm, đầu ra là thứ tự các đỉnh tương ứng với các tam giác không quy chuẩn đã được tính toán. Cuối cùng là dựa vào mảng đỉnh đầu ra này add các lwpolyline lên Modelspace của cad.

Về thuật toán delaunay bằng VB, bạn có thể tìm trên mạng

http://www.codeproje...Mesh-Generation

là một ví dụ, tất nhiên bạn phải cải tiến theo nhu cầu và trình độ của bạn.

Đấy là trường hợp bạn làm delaunay bằng code thuần

 

Bạn có thể ứng dụng công cụ qdelaunay ở trang qhull: http://www.qhull.org/

Theo mình thấy thì đây là chương trình rất mạnh, tạo delaunay cực nhanh, (nhanh nhất mình từng biết) có thể làm với hàng triệu điểm

Để sử dụng chương trình này, bạn tạo file đầu vào theo đúng chuẩn, dùng vba truyền các tham số theo đúng chương trình qdelaunay yêu cầu (đọc help), chương trình sẽ tạo cho bạn file tẽt mới là file các tam giác không quy chuẩn được tạo từ tập điểm file đầu vào. Nhiệm vụ tiếp theo của bạn là đọc file tam giác này và add lwpolyline tương ứng với các đỉnh tam giác vào Modelspace thôi.

Nếu bạn cần chi tiết hơn mình có thể hướng dẫn nhưng vì 3,4 năm nay ko làm vba cad nên hơi chậm


  • 0