1. Trang chủ
  2. » Địa lý lớp 11

Phát triển AutoCAD bằng ActiveX & VBA - Mở đầu

7 25 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 757,05 KB

Nội dung

Những ví dụ này giúp ta hình dung được cách thức để kết hợp tính đa năng của môi trường lập trình Visual Basic for Applications với sức mạnh của giao tiếp AutoCAD ActiveX để tạo ra nhữ[r]

(1)

M

M ĐĐUU

Trong chương này

ƒ Tổng quan công nghệ AutoCAD ActiveX

Chương trình bày khái niệm nhằm làm rõ đối tượng AutoCAD thông qua giao diện ActiveX lập trình đối tượng thơng qua môi trường phát triển ứng dụng Visual Basic for Application (VBA) Ngồi ra, chương cịn có phần giới thiệu loại tài liệu mã ví dụ dùng AutoCAD ActiveX VBA

ƒ Tổ chức sách ƒ Tìm mã lệnh ví dụ

ƒ Ưu điểm kết hợp AutoCAD ActiveX VBA ƒ Tổng quan giao diện

(2)

1 Tng quan v công ngh AutoCAD ActiveX

AutoCAD ActiveX đưa cấu để lập trình điều khiển AutoCAD từ bên ngồi AutoCAD Q trình thực cách “trưng bày” tất đối tượng AutoCAD với “thế giới bên ngồi” Khi đó, đối tượng AutoCAD truy cập thơng qua nhiều ngơn ngữ lập trình chương trình khác Microsoft® Word VBA Excel VBA

Có hai ưu điểm bật sử dụng giao tiếp ActiveX cho AutoCAD:

ƒ Khả lập trình truy cập vào vẽ AutoCAD mở rộng cho nhiều môi trường lập trình khác Trước có ActiveX Automation, người lập trình bị giới hạn mơi trường AutoLISP C++

ƒ Khả chia sẻ liệu với ứng dụng Windows® khác, chẳng hạn Microsoft Excel® Word®, thực dễ dàng nhiều

1.1 Tng quan v đối tượng AutoCAD ActiveX

Đối tượng tảng xây dựng nên ứng dụng ActiveX Mỗi đối tượng AutoCAD ActiveX thân phần AutoCAD Có nhiều loại đối tượng khác giao tiếp AutoCAD ActiveX Chẳng hạn như:

ƒ Các đối tượng đồ họa: line, arc, text, dimension…

ƒ Thiết lập định dạng: linetype, dimension style…

ƒ Cấu trúc tổ chức: layer, group, block…

ƒ Đối tượng liên quan đến hiển thị vẽ: view, viewport,…

(3)

2 Tng quan v giao din AutoCAD Visual Basic for Applications (VBA)

Microsoft VBA mơi trường lập trình hướng đối tượng có khả phát triển ứng dụng mạnh mẽ với tính phong phú tương tự Visual Basic (VB) Điểm khác biệt VBA VB VBA thực thi tiến trình ứng dụng AutoCAD đưa môi trường phát triển ứng dụng thơng minh nhanh chóng bên AutoCAD

VBA có khả tích hợp với ứng dụng có khả lập trình VBA khác Điều có nghĩa sử dụng thư viện đối tượng ứng dụng khác, AutoCAD Automation Controller1 cho ứng dụng khác Microsoft Word Excel

Có bốn ưu điểm sử dụng VBA AutoCAD:

ƒ Ngơn ngữ lập trình Visual Basic dễ học dễ sử dụng

ƒ VBA thực thi tiến trình với AutoCAD, chương trình có tốc độ thực thi nhanh

ƒ Xây dựng giao diện hộp thoại nhanh chóng hiệu Điều cho phép người lập trình tạo mẫu thử chương trình nhận phản hồi nhanh chóng q trình thiết kế

ƒ Dự án phân phối riêng nhúng vẽ Khả cho phép người lập trình phân phối ứng dụng cách linh hoạt

2.1 Cách thc thc thi ca VBA AutoCAD

VBA gửi thông điệp cho AutoCAD thông qua giao tiếp AutoCAD ActiveX Automation AutoCAD VBA cho phép môi trường VBA thực thi đồng thời với AutoCAD cung cấp khả lập trình điều khiển AutoCAD thông qua giao tiếp ActiveX Automation Bộ đôi AutoCAD, ActiveX Automation VBA, tạo giao diện lập trình mạnh mẽ khơng q trình xử lý đối tượng AutoCAD mà trình gửi liệu nhận liệu từ ứng dụng khác Có ba yếu tố cấu thành giao diện lập trình ActiveX VBA AutoCAD Yếu tố thân AutoCAD với tập đối tượng vơ phong phú, đóng gói tất thực thể, liệu dòng lệnh AutoCAD Do AutoCAD ứng dụng thiết kế với cấu trúc mở, với nhiều tầng giao diện khác nên quen thuộc với khả AutoCAD, ta lập trình VBA hiệu nhiều Người lập trình với AutoLISP® thường hiểu

rõ cấu trúc AutoCAD Tuy nhiên, lập trình hướng đối tượng VBA có nhiều điểm khác so với AutoLISP®

1Automation Controller: ngơn ngữ lập trình, chẳng hạn như VBA, có khả năng hỗ trợ công nghệ

Automation Microsoft Một ứng dụng lập trình sử dụng Automation Controller

(4)

Yếu tố thứ hai giao tiếp AutoCAD ActiveX Automation trình hình thành thông điệp (hay giao tiếp) với đối tượng AutoCAD Người lập trình VBA cần phải có kiến thức ActiveX Automation Ta tìm hiểu thêm giao tiếp AutoCAD ActiveX Automation “ActiveX and

VBA Reference” Ngay người lập trình VB kinh nghiệm nhận thấy

rằng kiến thức giao tiếp AutoCAD ActiveX Automation vơ giá để hiểu rõ phát triển ứng dụng AutoCAD VBA

Yếu tố thứ ba mơi trường lập trình VBA với hệ thống đối tượng, từ khóa, số,… cung cấp khả lập trình, điều khiển, gỡ lỗi thực thi ứng dụng Microsoft cung cấp công cụ trợ giúp cho VBA bên AutoCAD VBA truy cập trực tiếp VBA IDE cách sau:

ƒ Nhấn phím F1 bàn phím

ƒ Chọn mục Help từ trình đơn VBA IDE

ƒ Bấm chuột vào biểu tượng dấu hỏi công cụ VBA IDE 2.2 Ph thuc hn chế s dng AutoCAD VBA

Để đảm bảo làm việc bình thường ứng dụng AutoCAD Active VBA cần phải đảm bảo hệ thống có điều kiện sau:

Windows NT® 4.0

Yêu cầu phải có Windows NT4.0 Service Pack để chạy AutoCAD ActiveX VBA

Windows® 95 Windows 98

Khơng có u cầu đặc biệt

Cài đặt, Cài đặt lại Dỡ bỏ Microsoft Office ứng dụng VBA khác

Nếu ta cài đặt, cài đặt lại dỡ bỏ Microsoft Office ứng dụng VBA khác sau cài đặt AutoCAD, cần phải cài đặt lại AutoCAD Đương nhiên, sau cài đặt AutoCAD, cần phải khởi động lại hệ thống

3 Ưu đim ca s kết hp AutoCAD ActiveX VBA

Giao tiếp AutoCAD ActiveX/VBA thể nhiều điểm bật so với mơi trường lập trình AutoCAD API khác:

ƒ Tốc độ

Do thực thi tiến trình với VBA nên ứng dụng ActiveX nhanh so với ứng dụng AutoLISP ADS

ƒ Dễ sử dụng

(5)

ƒ Khả hoạt động liên thông với Windows

ActiveX VBA thiết kế để sử dụng với ứng dụng Windows khác cung cấp khả giao tiếp thông tin với ứng dụng khác

ƒ Tạo mẫu nhanh

Khả xây dựng giao diện nhanh VBA mơi trường hồn hảo để xây dựng ứng dụng mẫu, ứng dụng phát triển ngôn ngữ khác

ƒ Cơ sở lập trình

Trên khắp giới có hàng triệu lập trình viên Visual Basic Cơng nghệ AutoCAD ActiveX VBA mở khả tùy biến phát triển ứng dụng AutoCAD cho lập trình viên học Visual Basic tương lai

4 T chc ca cun sách

Cuốn sách cung cấp thông tin cách phát triển ứng dụng ActiveX VBA cho AutoCAD 2000 Thông tin chi tiết ứng dụng phát triển sử dụng VBA đề cập chương - “LÀM QUEN VỚI VBA” chương 11 –

PHÁT TRIỂN ỨNG DỤNG BẰNG VBA” Các lập trình viên sử dụng ActiveX từ

một mơi trường phát triển khác với VBA bỏ qua hai chương Tuy nhiên, lưu ý mã ví dụ sách trình bày mơi trường VBA Bài tập thực hành trình bày chương 13 – “THIẾT KẾ ĐƯỜNG ĐI DẠO

TRONG VƯỜN - MỘT VÍ DỤ VỀ ActiveX/VBA” Bài tập hướng đến

người học thông qua việc tạo chương trình vẽ đường dạo vườn AutoCAD sử dụng ActiveX VBA

Phụ lục B – “CHUYỂN ĐỔI TỪ AutoCAD PHIÊN BẢN 14.01” tổng kết thay đổi AutoCAD ActiveX VBA kể từ AutoCAD phiên 14.01

5 Tìm mã lnh ví d

Có 800 chương trình VBA sách tài liệu “ActiveX and VBA

Reference” minh họa cách sử dụng phương thức, thuộc tính kiện

ActiveX

Rất nhiều ứng dụng mẫu lưu thư mục Sample AutoCAD Các ứng dụng minh họa nhiều tính khác nhau, từ việc xuất liệu vẽ AutoCAD sang bảng tính Excel tới việc vẽ thực phép phân tích phức tạp cần trục tháp Những ví dụ giúp ta hình dung cách thức để kết hợp tính đa mơi trường lập trình Visual Basic for Applications với sức mạnh giao tiếp AutoCAD ActiveX để tạo ứng dụng có tính tùy biến cao 5.1 Thc thi ng dng mu

Tất mã lệnh ví dụ sách “ActiveX and VBA

Reference” chép trực tiếp từ tệp trợ giúp sang môi trường

(6)

AutoCAD phải vẽ trống khơng gian mơ hình Ngồi ra, mã sách có tệp SampleCode.dvb Events.dvb thư mục Sample

Thực thi ví dụ

1 Sao chép ví dụ từ tệp trợ giúp sang mơ-đun mã lệnh VBA cịn trống

2 Chắc chắn AutoCAD có vẽ trống mở chế độ khơng gian mơ hình

3 Mở hộp thoại Macros cách gõ lệnh VBARUN

4 Lựa chọn Macro nhấn Run

Thông tin thêm việc thực thi Macro1 hộp thoại Macro thể phần “Thực thi Macro” trang 32

5.2 Xem ng dng mu

Có 21 ứng dụng mẫu thư mục Sample Bảng sau trình bày tên, mơ tả vị trí tệp mã nguồn cho ứng dụng Rất nhiều ứng dụng có thêm tệp hỗ trợ, chứa thư mục với tệp mã nguồn Ngồi cịn có tệp readme.txt mơ tả ứng dụng cách thực thi

Ứng dụng mẫu ActiveX VBA

Tên Mô tả Đường dẫn

Dầm chữ I

3D Tthay ạo mđổi kích thột hình chước mữ I 3D ột cách linh đặc hoạt

/Sample/VBA/ibeam3d.dvb

Từ đồ

sang khối cầu

Tạo hình nhiều đường 3D khối cầu từ đường 2D ban đầu

/Sample/VBA/Map2Globe.dwg

Tuỳ biến

trình đơn Dùng MenuGroup MenuBar đối tượng /Sample/VBA/Menu.dvb Theo dõi đối

tượng Stheo dõi sử dụng khự thay ối liđổệu mi rđốộng i để tượng

/Sample/VBA/ObjectTracker.dvb

Lưu thành phiên 12

Lưu tệp đồ hoạ

AutoCAD2000 vào AutoCAD phiên 12

/Sample/VBA/SaveAsR12.dvb

Tháp Vẽ cần trục tháp thực /Sample/VBA/Tower.dwg

1Macro: một loại chương trình VBA được nạp vào AutoCAD, chi tiết vềMacro xem

(7)

Ứng dụng mẫu ActiveX VBA

Tên Mô tả Đường dẫn

các phép phân tích Chiều cao

chữ đốThay i vớđổi tấi toàn bt chộữ chi bều cao cản vủẽa ch ữ /Sample/VBA/ Lệnh gọi

ngoài Visual Basic Một Macro VBA gọi mởộ DLL t chứđc nã ăng

đăng kí

/Sample/ActiveX/ExtrnCall/ExternalCall.dvb

Tiện ích Thực kết nối AutoCAD với

một sở liệu /Sample/ActiveX/Facility/Setup/Setup.exe Tuỳ biến

VBA IDE TVBA IDE cho phép bạo công cạn tụ mải ột dự

án mang tới VBA Manager, VBA Macros hộp thoại VBA Options từ IDE

/Sample/VBA/VBAIDEMenu/acad.dvb

Xuất thuộc tính

Xuất khối liệu AutoCAD đưa

vào bảng tính /Sample/ActiveX/ExtAttr/ExtAttr.xls

Xuất thuộc tính tệp văn

Chuyển liệu đặc thù thành văn Microsoft Word, bảng tính Excel biểu đồ

/Sample/VBA/attext.dvb

Liên kết với Excel

Chỉ cách chuyển liệu từ

AutoCAD sang Excel ngược lại /Sample/VBA/ExcelLink.dvb Thay

khối

Thay khối chèn

trong vẽ với quy định khác /Sample/VBA/BlockReplace.dvb Thay đổi độ

rộng Thay đường bđổi độ rộảng cn vẽủ a toàn /Sample/VBA/chplywid.dvb Vẽđường

tâm Velip hình trịn ẽđường trục cho hình cung, /Sample/VBA/cntrline.dvb Vẽđường Chỉ cách vẽ đường từ

cửa sổ VBA /Sample/VBA/drawline.dvb

Mã ví dụ Tất mã nguồn mẫu, trừ

kiện ví dụ, sách hướng dẫn tài liệu tham khảo ActiveX and VBA Reference

/Sample/VBA/Example_Code.dvb

Sự kiện ví dụ Các kiện ví dụ ActiveX

and VBA Referene /Sample/VBA/Example_Events.dvb

Các đặc tính khác

Minh họa hàm API Automation

Ngày đăng: 09/03/2021, 03:33

TỪ KHÓA LIÊN QUAN