ledungtdc
-
Số lượng nội dung
4 -
Đã tham gia
-
Lần ghé thăm cuối
Bài đăng được đăng bởi ledungtdc
-
-
Diễn đàn có lỗi gì đó nên upload file hay gửi bài thì chữ loằng ngoằng, đến lúc refresh thì chỉ còn bài. Bạn hoàn toàn có thể tìm thấy tài liệu trong web trên, nó là tài liệu của AutoCAD 2007 .NET Training.3. nếu cần có thể liên hệ với mình qua email dungtdc@gmail.com mình gửi cho
-
Thực ra theo mình hiểu bạn trình bày thế này có vẻ làm người đọc khó hiểu hoặc hiểu lầm. Bạn nói thao tác trên autocad thì truyền dữ liệu qua giao diện vb, qua visual studio mình nghĩ nói thế ko đúng. VB, Visual studio là ngôn ngữ, là IDE lập trình còn cái bạn cần ở đây là truyền vào form hay chính xác hơn là bạn thao tác trên autocad thì dữ liệu sẽ được lấy và truyền lên form của một ứng dụng còn ứng dụng đó được bạn lập trình có thể là Out-of-process và In-process bằng ngôn ngữ VB, bằng IDE visual studio.
Nếu mình hiểu như vậy là đúng thì xin trả lời thắc mắc của bạn thế này
Hoàn toàn có thể làm được việc giao tiếp giữa autocad và ứng dụng của bạn. Tuy nhiên lập trình với kiểu Out of process thì khó hơn, mệt hơn vì khi đó cad và ứng dụng của bạn chạy độc lập nhau đồng nghĩa với việc bạn phải sử dụng các API hệ thống để sau khi gọi chương trình và gọi form lên thì bắt đúng vào cái form đó và các textbox, input box... trên form để truyền giá trị vào.
Với inprocess thì đơn giản hơn nhiều vì bạn lập trình tạo component có nhúng thư viện .net của CAD vào, sau khi biên dịch bạn có file .dll thực chất là add in của cad rồi. Bạn chạy dll này bằng lệnh netload. Lúc lập trình kiểu in process bạn cũng đã phải tạo các lệnh tương ứng với nhu cầu của bạn và khi đó hoàn toàn có thể sử dụng lệnh đó trong command của cad, còn việc chọn đối tượng, lấy thuộc tính, dữ liệu... sau đó truyền lên form thì bạn hoàn toàn lập trình bằng vb.net hoặc c# thôi.
Bạn có thể tham khảo tài liệu đính kèm hoặc vào trang blog sau để tham khảo thêm nhé:
http://through-the-interface.typepad.com/through_the_interface/autocad_net/
-
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.codeproject.com/Articles/492435/Delaunay-Triangulation-For-Fast-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
Các thuộc tính trong cad
trong Lập trình khác
Đã đăng · Trả lời báo cáo
Bác đưa bài toán ra anh em giúp cho có phải nhanh hơn không, đưa đoạn code mà chả biết mục đích là gì thì khó trả lời bác lắm, bác nêu bài toán cụ thể, anh em nhìn code may ra sẽ đoán chính xác mà giải thích