Chuyển đến nội dung
Diễn đàn CADViet
anhcos

Hướng dẫn lập trình với AutoCAD bằng VB.NET

Các bài được khuyến nghị

Chào các bác

em theo dõi các phần thảo luận rất nhiều về lập trình AutoCAD. trước đây em cũng đã làm một phần mềm sử dụng AutoCAD trên VB6. bây giờ chuyển sang Visual basic 2008. cúng đã tìm ra cách sử dụng các lệnh của AutoCAD nhưng có một vấn đề về Hatch thì không thể thực hiện được. nếu bác nào đã sử dụng xin chỉ giúp câu lệnh với. Hiện tại em đạng sử dụng liên kết muộn.

Xin chân thành cảm ơn các bác.

Ghi chú: nếu có thể các bác gửi vào hộp thư: thang.stgc@gmail.com

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Chào các bác

em theo dõi các phần thảo luận rất nhiều về lập trình AutoCAD. trước đây em cũng đã làm một phần mềm sử dụng AutoCAD trên VB6. bây giờ chuyển sang Visual basic 2008. cúng đã tìm ra cách sử dụng các lệnh của AutoCAD nhưng có một vấn đề về Hatch thì không thể thực hiện được. nếu bác nào đã sử dụng xin chỉ giúp câu lệnh với. Hiện tại em đạng sử dụng liên kết muộn.

Xin chân thành cảm ơn các bác.

Ghi chú: nếu có thể các bác gửi vào hộp thư: thang.stgc@gmail.com

 

Tất các các hàm có tham số hay tham trị là mảng các đối tượng thì luôn bị lỗi, ví dụ như các hàm: RemoveItems, AppendInnerLoop, AddRegion ... mình chả biết tại sao. Cách khác phục là dùng command line thôi.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Sau khi đã kết nối được autocad và vb.net. Thì theo mình thấy và tìm hiểu. Chỉ có thao tác bên vb,net. Nghĩa là mình chỉ thấy lệnh vẽ ... Trong vb.net sau đó được truyền qua autocad. Như vậy giờ mình muốn thao tác bên autocad để lấy thông tin, text. Rùi truyền qua vb.net. Như vậy liệu có được không

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Sau khi đã kết nối được autocad và vb.net. Thì theo mình thấy và tìm hiểu. Chỉ có thao tác bên vb,net. Nghĩa là mình chỉ thấy lệnh vẽ ... Trong vb.net sau đó được truyền qua autocad. Như vậy giờ mình muốn thao tác bên autocad để lấy thông tin, text. Rùi truyền qua vb.net. Như vậy liệu có được không

Câu trả lời cho bạn là được, bạn muốn lấy gì cũng được chứ ko riêng gì text

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

anhcos ơi xin chỉ giúp cách tạo hatch trong AutoCAD từ VB2008 bằng lệnh Command line với khó quá học nếu có thể bác cho xin số điện thoại để tiện liên lạc và đến tận nơi để học tập. Tel: 0976239839

Làm phiền.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Sau khi đã kết nối được autocad và vb.net. Thì theo mình thấy và tìm hiểu. Chỉ có thao tác bên vb,net. Nghĩa là mình chỉ thấy lệnh vẽ ... Trong vb.net sau đó được truyền qua autocad. Như vậy giờ mình muốn thao tác bên autocad để lấy thông tin, text. Rùi truyền qua vb.net. Như vậy liệu có được không

Như ban Detailing đã nói, phần lớn dữ liệu từ AutoCAD đều truy cập được từ VB.NET.

 

anhcos ơi xin chỉ giúp cách tạo hatch trong AutoCAD từ VB2008 bằng lệnh Command line với khó quá học nếu có thể bác cho xin số điện thoại để tiện liên lạc và đến tận nơi để học tập. Tel: 0976239839

Làm phiền.

Dạo này hơi bận, vài hôm nữa mình sẽ làm dùm bạn...

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Chào bác Anhcos!

Mình đọc bài viết của bạn viết về vb.net với Cad thấy rất hay và cũng thử tập tành một vài ví dụ. Tuy nhiên, theo cách của bạn khi tạo một đối tượng mới như Layer, TextStyle, DimStyle... Sau đó Active chúng thì toàn bị lỗi. Mong bạn chỉ cách dùm. Thank!

Mình cũng thấy có bạn hỏi về vấn đề này rồi. Nhưng chưa có câu trả lời thỏa đáng. Rất mong bạn bớt chút thời gian xem hộ anh em nhé!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Cho mình hỏi đoạn code vẽ đường line trong cad này với
 Function ve_line(ByVal dwg As Object, ByVal x1 As Double, ByVal y1 As Double, ByVal x2 As Double, ByVal y2 As Double, ByVal color As Integer) As Object  
            Dim d1(2) As Double, d2(2) As Double
            d1(0) = x1
            d1(1) = y1
            d1(2) = 0
            d2(0) = x2
            d2(1) = y2
            d2(2) = 0
            ve_line = Dwg.ModelSpace.AddLine(d1, d2)
            ve_line.color = color
    End Function

Theo mình hiểu thì (x1,y1), (x2,y2) là tọa độ của 2 điểm để vẽ nên đường line.Nhưng mình ko hiểu cái đoạn phần gán "=" và số trong ngoặc của biến d1, d2 là gì.mong mọi người giải thích cái :D

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Muốn hiểu được trước tiên ban phải tìm hiểu thế nào nào hàm, thủ tục, tham biến, tham trị, biến toàn cục, biến cục bộ. Số trong ngoặc của biến d1, d2 thì bạn phải tìm hiểu về biến mảng

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Chào bạn tungxdhn.

Biến d1,d2 là mảng 1 chiều d1(0),d1(1),d1(2) là tuơng ứng toạ độ x,y,z cua he toa do trong AutoCAD, Neu 2D thi d1(2)=0 tuc la z=0,d2 cung tuong tu.

Con phep gan bien

ta co the ve 1 line trong 2 truong hop:

 TH1: Dwg.ModelSpace.AddLine(d1, d2)

TH2: ve_line = Dwg.ModelSpace.AddLine(d1, d2)

2 truong hop nay deu ve duoc line, nhung truong hop 2 ta co the thay doi thuoc thuoc tinh cua line

VD: ve_line.color =3 'Dinh mau cho line

      ve_line.LineType = "continuous" 'Dinh kieu duong net cho line

      ve_line.Layer = "ABC" 'Gan cho line thuoc layer "ABC".

Tran trong chao ban.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 Các bác chỉ với em với, trong đoạn code dưới đây của bác anhcos là select các đối tượng trên màn hình, nhưng em chỉ muốn select các đối tượng là Line hoặc Polyline thôi  thì phải làm thế nào ạ? Và sau khi select xong, em muốn lấy các thông số Startpoint, Endpoint, vector pháp tuyến của từng Line thì phải làm thế nào ạ? Cái này em mới tìm hiểu mà tìm mãi chẳng thấy chỗ nào các bác nói đến cả, mong các bác giúp đỡ.

 

 Private Sub cmdSelectObject_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSelectObject.Click

 

        If ACADLink() Then

            Try

                Dim dwg As Object = Acad.ActiveDocument

 

                Try

                    SelSet = dwg.SelectionSets.Add("anhcos")

                Catch

                    SelSet = dwg.SelectionSets.Item("anhcos")

                End Try

                SelSet.Clear()

 

                AppActivate(Acad.Caption)

 

                SelSet.SelectOnScreen()

 

                ObjIndex = 0

                Vịtríđốitượngtrongtậpchọn()

 

                AppActivate(Me.Text)

                pgObject.SelectedObject = SelSet.Item(ObjIndex)

 

 

            Catch

                ObjIndex = -1

            End Try

        End If

    End Sub

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 Các bác chỉ với em với, trong đoạn code dưới đây của bác anhcos là select các đối tượng trên màn hình, nhưng em chỉ muốn select các đối tượng là Line hoặc Polyline thôi  thì phải làm thế nào ạ? Và sau khi select xong, em muốn lấy các thông số Startpoint, Endpoint, vector pháp tuyến của từng Line thì phải làm thế nào ạ? Cái này em mới tìm hiểu mà tìm mãi chẳng thấy chỗ nào các bác nói đến cả, mong các bác giúp đỡ.

 

 Private Sub cmdSelectObject_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSelectObject.Click

 

        If ACADLink() Then

            Try

                Dim dwg As Object = Acad.ActiveDocument

 

                Try

                    SelSet = dwg.SelectionSets.Add("anhcos")

                Catch

                    SelSet = dwg.SelectionSets.Item("anhcos")

                End Try

                SelSet.Clear()

 

                AppActivate(Acad.Caption)

 

                SelSet.SelectOnScreen()

 

                ObjIndex = 0

                Vịtríđốitượngtrongtậpchọn()

 

                AppActivate(Me.Text)

                pgObject.SelectedObject = SelSet.Item(ObjIndex)

 

 

            Catch

                ObjIndex = -1

            End Try

        End If

    End Sub

bác nào giúp em với ạ. Em xin chân thành cảm ơn.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Giới thiệu các bác phần mềm sắp lỗ khuôn ép đùn mình viết bằng VB+C# nhé.

Trong đó cốt lõi vẫn là giao diện cad của riêng mình, thực hiện được các lệnh cơ bản như acad, hỗ trợ nhập liệu từ bàn phím...

 


  • Like 1
  • Vote tăng 2

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 

Giới thiệu các bác phần mềm sắp lỗ khuôn ép đùn mình viết bằng VB+C# nhé.
Trong đó cốt lõi vẫn là giao diện cad của riêng mình, thực hiện được các lệnh cơ bản như acad, hỗ trợ nhập liệu từ bàn phím...
 

 

Lâu rồi mới thấy bác trở lại và lợi hại hơn xưa !

Không có liên quan đến chuyên môn của mình, nhưng nói chung là mất rất nhiều công sức để viết.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Nhờ các anh trợ giúp: 

Trong VB.NET tôi đã tạo ra 2 đường Polyline,

Tối muốn kiểm tra nếu 2 đường này giao nhau > 2 điểm thì TRIM cái phần giao nhau đi (hoặc BREAK 1 đường).

Cảm ơn các anh.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
5 giờ trước, nvson đã nói:

Nhờ các anh trợ giúp: 

Trong VB.NET tôi đã tạo ra 2 đường Polyline,

Tối muốn kiểm tra nếu 2 đường này giao nhau > 2 điểm thì TRIM cái phần giao nhau đi (hoặc BREAK 1 đường).

Cảm ơn các anh.

Kiểm tra 2 đường có giao nhau: dùng hàm IntersectWith

Break 1 đường: sử dụng hàm GetSplitCurves

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
10 phút trước, gia_bach đã nói:

Kiểm tra 2 đường có giao nhau: dùng hàm IntersectWith

Break 1 đường: sử dụng hàm GetSplitCurves

Bác cho e hỏi.e tạo file .dll vào cad 10 dùng ổn định mà vào cad 17 dùng lỗi.bác rỗi bác có thể giúp e đk kh ak.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
19 phút trước, gia_bach đã nói:

Kiểm tra 2 đường có giao nhau: dùng hàm IntersectWith

Break 1 đường: sử dụng hàm GetSplitCurves

 

Cảm ơn anh,

 

Lúc trước searching in google cũng thấy như vậy, tuy nhiên chưa biết sử dụng hàm GetSplitCurves như thế nào?

Bây giờ thì đã biết cách sử dụng và xóa cái phần không cần đi rồi.

 

Cảm ơn anh.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
45 phút trước, phantuhuong đã nói:

Lâu không thấy anh anhcos update gì mới. Giờ gọi nội dung này là AutoCad.net rồi.

Giờ mới biết bác là chủ trì khảo sát  công trình này   :))))

" Em chỉ là nhân viên thiết kế cầu  mà thôi :(   "

 

 

PTH.jpg

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

×