Hôm nay: Sáu Tháng 5 10, 2024 6:01 am
Xem bài chưa có ai trả lời

Tên truy cập:     Mật khẩu:

StructDesignPro
Gửi bài mới   Trả lời chủ đề này
 
 Tác giả   Thông điệp 

structdesignpro


Site Admin


Ngày tham gia: 28 2 2009
Số bài: 668
Đến từ: Việt Nam

     
Bài gửi Gửi: CN 4 12, 2009 9:42 pm    Tiêu đề: Ví dụ VBA cho AutoCAD
 Trả lời với trích dẫn nội dung bài viết này  

'**********************************
'chon mot doi tuong la duong thang.
'array chung thang 6 doi tuong
'voi deltax=0, deltay=L/2
'(L la chieu dai doan thang
'doi mau 7 doi tuong noi tren thanh
'cac doi tuong co mau 1 den mau 7
'**********************************
Sub BT2()
Dim Deltax As Double
Dim Deltay As Double
Dim L As Double
Dim Entt As AcadEntity
Dim VarPick As Variant
Dim EntityType As String
Dim EntLine As AcadLine
Dim ObjArray As Variant
Dim i As Integer
'Get entity
EntityType = "Line"
'On Error Resume Next
ThisDrawing.Utility.GetEntity Entt, VarPick, vbCr & "CHON DOI TUONG: "
If Entt Is Nothing Then Exit Sub
If Entt.ObjectName <> "AcDb" & EntityType Then
ThisDrawing.Utility.Prompt vbCrLf & "CHON LAI DOI TUONG"
Exit Sub
End If

Set EntLine = Entt

'tinh chieu dai L
L = Sqr((EntLine.StartPoint(0) - EntLine.EndPoint(0)) ^ 2 + (EntLine.StartPoint(1) - EntLine.EndPoint(1)) ^ 2 + (EntLine.StartPoint(2) - EntLine.EndPoint(2)) ^ 2)

'bat dau array
Deltax = 0
Deltay = L / 2
ObjArray = EntLine.ArrayRectangular(7, 1, 1, Deltay, Deltax, 0)

'Doi mau doi tuong
EntLine.color = 1
For i = 1 To 6
ObjArray(i - 1).color = i + 1
ObjArray(i - 1).Update
Next
End Sub
_________________
Mời bạn đến với bách khoa toàn thư về kết cấu:.
http://vi.ketcau.wikia.com
Về Đầu Trang
Xem lý lịch thành viên Gửi tin nhắn Gửi email Website của thành viên này

structdesignpro


Site Admin


Ngày tham gia: 28 2 2009
Số bài: 668
Đến từ: Việt Nam

     
Bài gửi Gửi: CN 4 12, 2009 9:43 pm    Tiêu đề:
 Trả lời với trích dẫn nội dung bài viết này  

Tạo một file Lisp định nghĩa lệnh BT2 như sau
;*******************************************************************************
(DEFUN C:BT2(/)
(COMMAND "VBARUN" "BT2" " ")
)
;*******************************************************************************

Sau đó tải file sau vào để tạo một menu


'*************************************************************
' TAO MOT MENU CO TEN LA Test DE GOI LISP O VIDU1 VA VBA O VD2
'*************************************************************
Sub CreatMenu()
Dim Mngr As AcadMenuGroup
Dim Mnus As AcadPopupMenus
Dim Mnu As AcadPopupMenu
Dim MnuItem As AcadPopupMenuItem

Set Mngr = ThisDrawing.Application.MenuGroups(0) 'Menu Groups Custom
Set Mnus = Mngr.Menus
On Error GoTo Exitt
Set Mnu = Mnus.Add("&Test") 'Creat a menu bar
Set Mnu = Mnus("&Test")
Set MnuItem = Mnu.AddMenuItem(0, "BT &Lisp", Chr(3) + Chr(3) + "BT1 ")
Set MnuItem = Mnu.AddSeparator(1)
Set MnuItem = Mnu.AddMenuItem(2, "BT &VBA", Chr(3) + Chr(3) + "BT2 ")
Mnu.InsertInMenuBar (0)
Exitt:
Err.Clear
ThisDrawing.Utility.Prompt (vbCrLf & "Co loi xay ra")
Resume Next
End Sub
_________________
Mời bạn đến với bách khoa toàn thư về kết cấu:.
http://vi.ketcau.wikia.com
Về Đầu Trang
Xem lý lịch thành viên Gửi tin nhắn Gửi email Website của thành viên này


Trình bày bài viết theo thời gian:   

   StructDesignPro -> VBA cho AutoCAD

Gửi bài mới   Trả lời chủ đề này
 


 
Bạn không có quyền gửi bài viết
Bạn không có quyền trả lời bài viết
Bạn không có quyền sửa chữa bài viết của bạn
Bạn không có quyền xóa bài viết của bạn
Bạn không có quyền tham gia bầu chọn


Trang 1 trong tổng số 1 trang
Thời gian được tính theo giờ [GMT+ 7 giờ]

Chuyển đến 


Powered by phpBB © 2001, 2002 phpBB Group
Web Hosting Directory
This contents of this page are in no way endorsed by the Mozilla Foundation
Mozilla_Firefox theme created by Plastikaa © 2005


Free Web Hosting | File Hosting | Photo Gallery | Matrimonial


Powered by PhpBB.BizHat.com, setup your forum now!
For Support, visit Forums.BizHat.com