Giáo trình hướng dẫn phân tích ứng dụng các phương pháp lập trình trên autocad p1
Số trang: 5
Loại file: pdf
Dung lượng: 790.64 KB
Lượt xem: 9
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tham khảo tài liệu 'giáo trình hướng dẫn phân tích ứng dụng các phương pháp lập trình trên autocad p1', công nghệ thông tin, đồ họa - thiết kế - flash phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
Giáo trình hướng dẫn phân tích ứng dụng các phương pháp lập trình trên autocad p1 Giáo trình hướng dẫn phân tích ứng dụng các phương pháp lậpHtrình V: LẬP autocadN AUTOCAD C ƯƠNG trên TRÌNH TRÊ FileType Tham số tuỳ chọn, là hằng số xác định kiểu tệp bản vẽ sẽ được lưu. Các hằng số có thể là: : tệp AutoCAD Release14/LT97 DWG (*.dwg) acR14_DWG : tệp AutoCAD Release14/LT97 DXF (*.dxf) acR14_DXF : tệp AutoCAD 2000 DWG (*.dwg) acR15_DWG : tệp AutoCAD 2000 DXF (*.dxf) acR15_DXF acR15_Template: tệp AutoCAD 2000 Drawing Template File (*.dwt) : tệp bản vẽ được lưu với kiểu tệp mới nhất ứng với phiên bản acNative AutoCAD hiện hành. Trong AutoCAD 2002, giá trị này tương đương với hằng số acR15_DWG. Ví dụ sau sẽ lưu bản vẽ hiện hành sử dụng tên tệp sẵn có đồng thời cũng lưu bản vẽ với một tên khác. Sub SaveActiveDrawing() ’ Lưu bản vẽ hiện hành sử dụng tên tệp sẵn có ThisDrawing.Save ’ Lưu bản vẽ sử dụng tên khác ThisDrawing.SaveAs MyDrawing.dwg End Sub Thông thường, trước khi thoát khỏi phiên làm việc của AutoCAD hoặc trước khi đóng bản vẽ, người lập trình thường muốn kiểm tra xem bản vẽ đã được lưu đổi hay chưa. Để làm được việc này, có thể sử dụng thuộc tính Saved có trong đối tượng chứa bản vẽ đó (đối tượng Document tương ứng). Ví dụ sau sẽ kiểm tra xem bản vẽ đã được lưu hay chưa và sẽ hỏi người dùng xem có đồng ý để lưu bản vẽ hay không, nếu không đồng ý, sẽ thoát khỏi chương trình. Nếu đồng ý, sẽ sử dụng phương thức Save để lưu bản vẽ hiện hành. Sub TestIfSaved() If Not (ThisDrawing.Saved) Then If MsgBox(Do you wish to save this drawing?, _ vbYesNo) = vbYes Then ThisDrawing.Save End If End If End Sub Đóng bản vẽ Để đóng bản vẽ, sử dụng phương thức Close có trong đối tượng Document. Cú pháp của phương thức Close như sau: object.Close([SaveChanges][, FileName]) Tham số Giải thích object Đối tượng kiểu Document, là đối tượng chứa bản vẽ cần đóng. SaveChanges Tham số tuỳ chọn, xác định xem có cần phải lưu bản vẽ lại trước khi đóng hay không. Nếu bằng TRUE, sẽ lưu bản vẽ, ngược lại là FALSE. Giá trị mặc định của tham số này là TRUE. 203 FileName Tham số tuỳ chọn, xác định tên của bản vẽ sẽ được lưu trong trường hợp bản vẽ chưa được lưu lần nào. Trong trường hợp chưa có sự thay đổi trong bản vẽ, các tham số trên được bỏ qua và phương thức Close chỉ đơn giản là đóng bản vẽ đang được tham chiếu. Nếu đã có sự thay đổi trong bản vẽ, tham số SaveChanges sẽ xác định xem bản vẽ có được lưu hay không: Nếu SaveChanges bằng TRUE và bản vẽ chưa được lưu lần nào, tham số FileName sẽ được dùng để làm tên tệp lưu bản vẽ. Nếu không có tham số FileName, bản vẽ được lưu với tên mặc định trong thư mục hiện hành của AutoCAD. Trong trường hợp bản vẽ đã được lưu trước đó, tham số FileName sẽ bị bỏ qua. Nếu SaveChanges bằng FALSE, bản vẽ sẽ được đóng mà không được lưu. Ví dụ sau sẽ hỏi người dùng có muốn đóng bản vẽ hay không, sau đó kiểm tra xem tệp đã được lưu lần đầu chưa, tiếp đó mới thực sự đóng bản vẽ lại sử dụng phương thức Close có trong đối tượng bản vẽ hiện hành. Sub CloseDrawing() If MsgBox(Bạn có muốn đóng bản vẽ: & ThisDrawing.WindowTitle, _ vbYesNo + vbQuestion) = vbYes Then If ThisDrawing.FullName Then ‘←Đóng bản vẽ hiện hành ThisDrawing.Close SaveChanges:=True Else MsgBox(ThisDrawing.Name & chưa được lưu nên không thể đóng!) End If End If End Sub Ngoài ra, người lập trình có thể sử dụng phương thức Close có trong tập đối tượng Documents để đóng tất cả các bản vẽ hiện đang có trong phiên làm việc hiện hành của AutoCAD. Phương thức này thực hiện tương tự như khi sử dụng phương thức Close cho từng đối tượng bản vẽ với tham số SaveChanges được gán bằng TRUE. Do không kiểm soát được quá trình đóng của từng bản vẽ nên phương thức Close của tập đối tượng Documents nên hạn chế sử dụng. 5.1.2. Khởi động và thoát khỏi chương trình AutoCAD Khởi động chương trình AutoCAD Do được thực thi bên trong AutoCAD nên các chương trình viết bằng VBA trong AutoCAD không cần phải thực hiện thao tác khởi động chương trình AutoCAD. Tuy nhiên, khi người dùng viết mã lệnh từ các ứng dụng nền khác, chẳng hạn như viết chương trình bằng VBA trong Excel, thì cần thiết phải viết mã lệnh khởi động chương trình AutoCAD. Thực chất của đoạn mã lệnh này là tạo ra đối tượng Application. Việc khởi động chương trình AutoCAD từ một chương trình ngoài cũng cần phải thực hiện các thao tác tương tự như khi khởi động chương trình Excel từ chương trình ngoài (tham khảo mục “Khởi động Excel từ chương trình khác” trang 149). Ở đây, người dùng sẽ phải tham chiếu đến thư viện mở rộng của AutoCAD với tên là “AutoCAD 2000 Object Library”. Với các phiên bản của chương trình AutoCAD khác nhau thì tên thư viện mở rộng có thể khác nhau. 204 CHƯƠNG V: LẬP TRÌNH TRÊN AUTOCAD Hình V-8: Hộp thoại References trong VBAIDE của Excel. Đoạn mã lệnh sau sẽ khởi động chương trình AutoCAD từ VBA trong Excel. Sub ConnectToAcad() Dim acadApp As AcadApplication On Error Resume Next Set acadApp = GetObject(, AutoCAD.Application) If Err Then Err.Clear Set acadApp = CreateObject(AutoCAD.Application) If Err Then MsgBox Err.Description ...
Nội dung trích xuất từ tài liệu:
Giáo trình hướng dẫn phân tích ứng dụng các phương pháp lập trình trên autocad p1 Giáo trình hướng dẫn phân tích ứng dụng các phương pháp lậpHtrình V: LẬP autocadN AUTOCAD C ƯƠNG trên TRÌNH TRÊ FileType Tham số tuỳ chọn, là hằng số xác định kiểu tệp bản vẽ sẽ được lưu. Các hằng số có thể là: : tệp AutoCAD Release14/LT97 DWG (*.dwg) acR14_DWG : tệp AutoCAD Release14/LT97 DXF (*.dxf) acR14_DXF : tệp AutoCAD 2000 DWG (*.dwg) acR15_DWG : tệp AutoCAD 2000 DXF (*.dxf) acR15_DXF acR15_Template: tệp AutoCAD 2000 Drawing Template File (*.dwt) : tệp bản vẽ được lưu với kiểu tệp mới nhất ứng với phiên bản acNative AutoCAD hiện hành. Trong AutoCAD 2002, giá trị này tương đương với hằng số acR15_DWG. Ví dụ sau sẽ lưu bản vẽ hiện hành sử dụng tên tệp sẵn có đồng thời cũng lưu bản vẽ với một tên khác. Sub SaveActiveDrawing() ’ Lưu bản vẽ hiện hành sử dụng tên tệp sẵn có ThisDrawing.Save ’ Lưu bản vẽ sử dụng tên khác ThisDrawing.SaveAs MyDrawing.dwg End Sub Thông thường, trước khi thoát khỏi phiên làm việc của AutoCAD hoặc trước khi đóng bản vẽ, người lập trình thường muốn kiểm tra xem bản vẽ đã được lưu đổi hay chưa. Để làm được việc này, có thể sử dụng thuộc tính Saved có trong đối tượng chứa bản vẽ đó (đối tượng Document tương ứng). Ví dụ sau sẽ kiểm tra xem bản vẽ đã được lưu hay chưa và sẽ hỏi người dùng xem có đồng ý để lưu bản vẽ hay không, nếu không đồng ý, sẽ thoát khỏi chương trình. Nếu đồng ý, sẽ sử dụng phương thức Save để lưu bản vẽ hiện hành. Sub TestIfSaved() If Not (ThisDrawing.Saved) Then If MsgBox(Do you wish to save this drawing?, _ vbYesNo) = vbYes Then ThisDrawing.Save End If End If End Sub Đóng bản vẽ Để đóng bản vẽ, sử dụng phương thức Close có trong đối tượng Document. Cú pháp của phương thức Close như sau: object.Close([SaveChanges][, FileName]) Tham số Giải thích object Đối tượng kiểu Document, là đối tượng chứa bản vẽ cần đóng. SaveChanges Tham số tuỳ chọn, xác định xem có cần phải lưu bản vẽ lại trước khi đóng hay không. Nếu bằng TRUE, sẽ lưu bản vẽ, ngược lại là FALSE. Giá trị mặc định của tham số này là TRUE. 203 FileName Tham số tuỳ chọn, xác định tên của bản vẽ sẽ được lưu trong trường hợp bản vẽ chưa được lưu lần nào. Trong trường hợp chưa có sự thay đổi trong bản vẽ, các tham số trên được bỏ qua và phương thức Close chỉ đơn giản là đóng bản vẽ đang được tham chiếu. Nếu đã có sự thay đổi trong bản vẽ, tham số SaveChanges sẽ xác định xem bản vẽ có được lưu hay không: Nếu SaveChanges bằng TRUE và bản vẽ chưa được lưu lần nào, tham số FileName sẽ được dùng để làm tên tệp lưu bản vẽ. Nếu không có tham số FileName, bản vẽ được lưu với tên mặc định trong thư mục hiện hành của AutoCAD. Trong trường hợp bản vẽ đã được lưu trước đó, tham số FileName sẽ bị bỏ qua. Nếu SaveChanges bằng FALSE, bản vẽ sẽ được đóng mà không được lưu. Ví dụ sau sẽ hỏi người dùng có muốn đóng bản vẽ hay không, sau đó kiểm tra xem tệp đã được lưu lần đầu chưa, tiếp đó mới thực sự đóng bản vẽ lại sử dụng phương thức Close có trong đối tượng bản vẽ hiện hành. Sub CloseDrawing() If MsgBox(Bạn có muốn đóng bản vẽ: & ThisDrawing.WindowTitle, _ vbYesNo + vbQuestion) = vbYes Then If ThisDrawing.FullName Then ‘←Đóng bản vẽ hiện hành ThisDrawing.Close SaveChanges:=True Else MsgBox(ThisDrawing.Name & chưa được lưu nên không thể đóng!) End If End If End Sub Ngoài ra, người lập trình có thể sử dụng phương thức Close có trong tập đối tượng Documents để đóng tất cả các bản vẽ hiện đang có trong phiên làm việc hiện hành của AutoCAD. Phương thức này thực hiện tương tự như khi sử dụng phương thức Close cho từng đối tượng bản vẽ với tham số SaveChanges được gán bằng TRUE. Do không kiểm soát được quá trình đóng của từng bản vẽ nên phương thức Close của tập đối tượng Documents nên hạn chế sử dụng. 5.1.2. Khởi động và thoát khỏi chương trình AutoCAD Khởi động chương trình AutoCAD Do được thực thi bên trong AutoCAD nên các chương trình viết bằng VBA trong AutoCAD không cần phải thực hiện thao tác khởi động chương trình AutoCAD. Tuy nhiên, khi người dùng viết mã lệnh từ các ứng dụng nền khác, chẳng hạn như viết chương trình bằng VBA trong Excel, thì cần thiết phải viết mã lệnh khởi động chương trình AutoCAD. Thực chất của đoạn mã lệnh này là tạo ra đối tượng Application. Việc khởi động chương trình AutoCAD từ một chương trình ngoài cũng cần phải thực hiện các thao tác tương tự như khi khởi động chương trình Excel từ chương trình ngoài (tham khảo mục “Khởi động Excel từ chương trình khác” trang 149). Ở đây, người dùng sẽ phải tham chiếu đến thư viện mở rộng của AutoCAD với tên là “AutoCAD 2000 Object Library”. Với các phiên bản của chương trình AutoCAD khác nhau thì tên thư viện mở rộng có thể khác nhau. 204 CHƯƠNG V: LẬP TRÌNH TRÊN AUTOCAD Hình V-8: Hộp thoại References trong VBAIDE của Excel. Đoạn mã lệnh sau sẽ khởi động chương trình AutoCAD từ VBA trong Excel. Sub ConnectToAcad() Dim acadApp As AcadApplication On Error Resume Next Set acadApp = GetObject(, AutoCAD.Application) If Err Then Err.Clear Set acadApp = CreateObject(AutoCAD.Application) If Err Then MsgBox Err.Description ...
Tìm kiếm theo từ khóa liên quan:
giáo trình đại học tài liệu mạng giáo trình cơ điện giáo trình thiết kế tài liệu kế toánGợi ý tài liệu liên quan:
-
Giáo trình phân tích một số loại nghiệp vụ mới trong kinh doanh ngân hàng quản lý ngân quỹ p5
7 trang 470 0 0 -
MARKETING VÀ QUÁ TRÌNH KIỂM TRA THỰC HIỆN MARKETING
6 trang 295 0 0 -
122 trang 212 0 0
-
QUY CHẾ THU THẬP, CẬP NHẬT SỬ DỤNG CƠ SỞ DỮ LIỆU DANH MỤC HÀNG HÓA BIỂU THUẾ
15 trang 200 1 0 -
BÀI GIẢNG KINH TẾ CHÍNH TRỊ MÁC - LÊNIN - TS. NGUYỄN VĂN LỊCH - 5
23 trang 196 0 0 -
Giáo trình chứng khoán cổ phiếu và thị trường (Hà Hưng Quốc Ph. D.) - 4
41 trang 191 0 0 -
Giáo trình hướng dẫn phân tích các thao tác cơ bản trong computer management p6
5 trang 187 0 0 -
BÀI GIẢNG LÝ THUYẾT MẠCH THS. NGUYỄN QUỐC DINH - 1
30 trang 169 0 0 -
Giáo trình phân tích giai đoạn tăng lãi suất và giá trị của tiền tệ theo thời gian tích lũy p10
5 trang 165 0 0 -
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG - NGÂN HÀNG ĐỀ THI HẾT HỌC PHẦN HỌC PHẦN: TOÁN KINH TẾ
9 trang 161 0 0