Đến nội dung


Hình ảnh
- - - - -

visual basic fro autocad


  • Please log in to reply
10 replies to this topic

#1 dinhloi88

dinhloi88

    biết pan

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

Đã gửi 14 August 2010 - 08:51 AM

em hiện đang tìm hiểu về cách lập trình visual basic trong autocad để ứng dụng thiế kế một số cơ cấu cơ bản trong cơ khí. Anh có tài liệu hay kinh nghiệm gi hãh chỉ giáo giumg em nhé!
dinhquangloi88@gmail.com

  • 0

#2 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 14 August 2010 - 01:08 PM

Cái chương trình trong youtube kia là của bạn à?
  • 0
Clear sky!

MF Rock collection.

#3 dinhloi88

dinhloi88

    biết pan

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

Đã gửi 15 August 2010 - 10:39 AM

em đâu có tài vậy chứ. em chỉ mong mình làm được một phần của đồ án đó thôi.có bác nào biết chỉ dùm em cái đi tự học sao khó quá à. cảm ơn anhcos đã để ý đến bài viết của em
  • 0

#4 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 16 August 2010 - 08:25 AM

Mình có thể giúp bạn, nhưng có một số lưu ý:
- Code viết bằng VB.NET, vì các module của mình đều viết trên nền này (tiện dụng hơn VB nhiều)
- Không sử dụng các thư viện đối tượng của CAD, tức là không tham chiếu đến các thư viện của CAD. Mọi đối tượng CAD đều khai báo là Object, vì thế chương trình sẽ chạy với tất cả các phiên bản của AutoCAD.

Còn về phần bạn, chọn một kết cấu cơ khí nào đó đơn giản nhất + phần lý thuyết + tính toán của nó.
  • 0
Clear sky!

MF Rock collection.

#5 phuonghuynhduy

phuonghuynhduy

    biết vẽ line

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

Đã gửi 16 August 2010 - 06:49 PM

Mình có thể giúp bạn, nhưng có một số lưu ý:
- Code viết bằng VB.NET, vì các module của mình đều viết trên nền này (tiện dụng hơn VB nhiều)
- Không sử dụng các thư viện đối tượng của CAD, tức là không tham chiếu đến các thư viện của CAD. Mọi đối tượng CAD đều khai báo là Object, vì thế chương trình sẽ chạy với tất cả các phiên bản của AutoCAD.

Còn về phần bạn, chọn một kết cấu cơ khí nào đó đơn giản nhất + phần lý thuyết + tính toán của nó.


Hi Anhcos!
Mình cũng đang nghiên cứu viết VB.Net vào CAD. Mình thấy bạn nói "Mọi đối tượng CAD đều khai báo là Object" mình chưa hiểu lắm. Bạn có thể share cho mình code và bạn viết để nghiên cứu thử. Nhân tiện mình tìm tài liệu về Autocad.Net khó quá, bạn có tài liệu nào hay chỉ giúp mình với. Email: phuonghuynhduy80@gmail.com
Cảm ơn.
  • 0

#6 dinhloi88

dinhloi88

    biết pan

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

Đã gửi 16 August 2010 - 07:16 PM

em giờ mới tìm hiểu thôi có anh nào rành thì tư vấn dùm em vá các bạn trong diễn đàn đi do em tự hoc nên không biết nhiều chỉ biết dùng VBA trong CAD nhưng không biết thời điểm này nên dùng phiên bản VBA nào?trong trường em chỉ có tài liệu về VBA6.0 nên em đang tìm hiểu nó.mong có anh nào biết chỉ dùm em để em đi đúng hướng
  • 0

#7 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 16 August 2010 - 09:57 PM

Hi Anhcos!
Mình cũng đang nghiên cứu viết VB.Net vào CAD. Mình thấy bạn nói "Mọi đối tượng CAD đều khai báo là Object" mình chưa hiểu lắm. Bạn có thể share cho mình code và bạn viết để nghiên cứu thử. Nhân tiện mình tìm tài liệu về Autocad.Net khó quá, bạn có tài liệu nào hay chỉ giúp mình với. Email: phuonghuynhduy80@gmail.com
Cảm ơn.

Mình sẽ không tham chiếu đến thư viện đối tượng của AutoCAD, vì thế các đối tượng sẽ chưa được khai báo trước. Vì thế kiểu của đối tượng sẽ được ép vào khi chương trình thực thi.

Ví dụ:

Dim Acad 
try
Acad = GetObject(,"AutoCAD.Application")
catch
Acad = CreateObject("AutoCAD.Application")
end try

dim dwg = Acad.ActiveDocument
Dim layers = Dwg.Layers

Tài liệu mình dùng là file help của cad: acad_dev.chm và gogồ thôi.

em giờ mới tìm hiểu thôi có anh nào rành thì tư vấn dùm em vá các bạn trong diễn đàn đi do em tự hoc nên không biết nhiều chỉ biết dùng VBA trong CAD nhưng không biết thời điểm này nên dùng phiên bản VBA nào?trong trường em chỉ có tài liệu về VBA6.0 nên em đang tìm hiểu nó.mong có anh nào biết chỉ dùm em để em đi đúng hướng


VBA thường chạy trên nền một ứng dụng khác (như VBA cho CAD, Excel..), còn Visual Basic (VB6) or VB.NET thì có thể chạy độc lập. Về cú pháp nói chung cả 3 đều na ná nhau. Còn dùng cái nào là do bạn thích or cũng phải liều mà chơi cái mới, dần rồi sẽ quen.
  • 0
Clear sky!

MF Rock collection.

#8 phuonghuynhduy

phuonghuynhduy

    biết vẽ line

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

Đã gửi 26 August 2010 - 11:34 AM

Hi AnhCos!
Tôi nghiên cứu viết VB.net viết cho autocad được rồi nhưng theo cách viết ra *.dll rồi dùng lệnh netload trong Autocad để thực thi chương trình.
Nhưng tôi muốn viết 1 ứng dụng bằng VB.Net độc lập, xử lý số liệu trên form rồi mới vẽ trên Autocad. Tìm tài liệu hoài mà chưa có. Bạn có thể hướng dẫn mình được không?
Hạn chế của cách viết DLL là khi debug phải khởi động cùng Autocad, cực quá. Tôi muốn viết ứng dụng độc lập, xử lý số liệu xong rồi vẽ trên Autocad. Tôi có thấy 1 ứng dụng viết kiểu này, nhưng chưa nghiên cứu ra.
Mong anhcos và các bạn giúp.
Thanks.
  • 0

#9 phantuhuong

phantuhuong

    biết dimstyle

  • Moderator
  • PipPipPipPipPip
  • 383 Bài viết
Điểm đánh giá: 200 (khá)

Đã gửi 26 August 2010 - 12:13 PM

Hi AnhCos!
Tôi nghiên cứu viết VB.net viết cho autocad được rồi nhưng theo cách viết ra *.dll rồi dùng lệnh netload trong Autocad để thực thi chương trình.
Nhưng tôi muốn viết 1 ứng dụng bằng VB.Net độc lập, xử lý số liệu trên form rồi mới vẽ trên Autocad. Tìm tài liệu hoài mà chưa có. Bạn có thể hướng dẫn mình được không?
Hạn chế của cách viết DLL là khi debug phải khởi động cùng Autocad, cực quá. Tôi muốn viết ứng dụng độc lập, xử lý số liệu xong rồi vẽ trên Autocad. Tôi có thấy 1 ứng dụng viết kiểu này, nhưng chưa nghiên cứu ra.
Mong anhcos và các bạn giúp.
Thanks.


Không dll thì exe vậy, có gì đâu.
  • 0
Bồi dưỡng Excel & VBA cho các đơn vị ở Hà Nội và khu vực lân cận

Từng bước loại đồ Tàu ra khỏi cuộc sống!


#10 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 26 August 2010 - 02:20 PM

Hi AnhCos!
Tôi nghiên cứu viết VB.net viết cho autocad được rồi nhưng theo cách viết ra *.dll rồi dùng lệnh netload trong Autocad để thực thi chương trình.
Nhưng tôi muốn viết 1 ứng dụng bằng VB.Net độc lập, xử lý số liệu trên form rồi mới vẽ trên Autocad. Tìm tài liệu hoài mà chưa có. Bạn có thể hướng dẫn mình được không?
Hạn chế của cách viết DLL là khi debug phải khởi động cùng Autocad, cực quá. Tôi muốn viết ứng dụng độc lập, xử lý số liệu xong rồi vẽ trên Autocad. Tôi có thấy 1 ứng dụng viết kiểu này, nhưng chưa nghiên cứu ra.
Mong anhcos và các bạn giúp.
Thanks.

Bạn tham khảo code ứng dụng AddText với VB.Net độc lập : tạo 1 TEXT vào bản vẽ hiện hành.
(tốc độ của ứng dụng độc lập không cao)
Hình đã gửi

file EXE : http://www.cadviet.c...s/3/addtext.zip

Code vb.Net
Chú ý :
- tạo TextBox1 nhập giá trị Text
- tạo TextBox2 nhập chiều cao Text
- tạo Button1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim txt = TextBox1.Text
If (txt = "") Then
MessageBox.Show("Hãy nhập giá trị cho Text !", "Thông báo")
Return
End If

Dim chcao As Double
Try
chcao = Double.Parse(TextBox2.Text)
Catch
MessageBox.Show("Vui lòng nhập chiều cao Text ", "Thông báo")
Return
End Try

If chcao <= 0 Then
MessageBox.Show("Chiều cao Text phải là số thực duơng!", "Thông báo")
Return
End If

Dim AcadApp As Object
Try
AcadApp = GetObject(, "AutoCAD.Application")
Catch
AcadApp = CreateObject("AutoCAD.Application")
AcadApp.Visible = True
End Try

Dim pt As Object
pt = AcadApp.ActiveDocument.Utility.GetPoint(, vbCr & "Chọn điểm để tạo đối tượng TEXT :")

AcadApp.ActiveDocument.ModelSpace.AddText(txt, pt, chcao)

End Sub

  • 0

#11 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 26 August 2010 - 03:48 PM

(tốc độ của ứng dụng độc lập không cao)


Mình cũng thấy thế, nhưng chưa biết cải thiện như thế nào.
  • 0
Clear sky!

MF Rock collection.