Thú vị hơn với Python. cán bộ

Chúng tôi đã giới thiệu Python dưới dạng môi trường lập trình mã nguồn mở trong bài viết trước và trình bày cách sử dụng Python và Dynamo để tạo các đối tượng AutoCAD

[Ghi chú của biên tập viên. Mặc dù pyautocad tập trung vào AutoCAD nhưng các ý tưởng cũng áp dụng cho các môi trường CAD khác. Chúng tôi sẽ đi sâu vào các công cụ lập trình bổ sung trong các bài viết sắp tới dành cho những người sử dụng các chương trình CAD khác nhau. ]

Vì Python là một ngôn ngữ thông dịch, cấp cao, nên bạn có thể dễ dàng tạo các ứng dụng tự động hóa các tác vụ lặp đi lặp lại, trong môi trường độc lập hoặc trong môi trường CAD, ngoài việc sử dụng nó với Dynamo. Bạn có thể viết tập lệnh Python ActiveX Automation cho AutoCAD bằng thư viện pyautocad tiện dụng, đặc biệt hữu ích để làm việc với tọa độ, lặp lại và tìm kiếm đối tượng cũng như nhập và xuất dữ liệu

Bài viết này sẽ giới thiệu cách bắt đầu với pyautocad, viết một số mã cơ bản để tự động hóa các tác vụ AutoCAD và xem xét một số cách sử dụng tiềm năng của pyautocad để tạo các ứng dụng phức tạp hơn trong tương lai

Bắt đầu

Bạn có thể thêm pyautocad theo cách tương tự như cách thêm Python nếu bạn đã cài đặt Python trên máy tính của mình (xem bài viết trước). Các bước tiếp theo giả định rằng bạn đang sử dụng Windows. Bạn có thể cần cải thiện kiến ​​thức quản lý tệp của mình cho các bước này và bạn có thể thấy dễ dàng hơn khi hoàn thành chúng theo những cách khác, nhưng hãy bắt đầu với các bước này để mọi thứ diễn ra suôn sẻ. )

1. Xác định vị trí cài đặt Python trên máy tính của bạn. Thông thường, nó có thể được tìm thấy trong khu vực được mô tả dưới đây

Nhấp vào hình ảnh để phóng to

2. Kiểm tra xem chương trình pip, được sử dụng để cài đặt các chương trình khác, có trong thư mục Tập lệnh không

Nhấp vào hình ảnh để phóng to

Cài đặt gói — Hướng dẫn sử dụng gói Python Nếu trình cài đặt pip chưa được cài đặt với Python, bạn có thể tìm thêm thông tin tại đây

3. Sau khi pip đã được thiết lập, bạn có thể cài đặt pyautocad bằng cách khởi chạy cửa sổ nhắc lệnh, chuyển đến thư mục thích hợp và nhập các lệnh sau

cài đặt pip pyautocad

Bạn sẽ thấy một cái gì đó giống như sau khi pyautocad đã được cài đặt trên máy tính của bạn do nhập câu lệnh đơn giản đó

Nhấp vào hình ảnh để phóng to

Giao tiếp với AutoCAD

Bây giờ pyautocad đã được cài đặt, bạn có thể chuyển sang các tác vụ thú vị hơn, chẳng hạn như tự động hóa các tác vụ AutoCAD, bằng cách kết nối pyautocad với AutoCAD trước tiên. Tài liệu pyautocad chứa các hướng dẫn về điều này và các lệnh pyautocad khác, và tài liệu Python bổ sung cũng được cung cấp cùng với bản cài đặt Python

1. Mở một bản vẽ mới trong AutoCAD

2. Để khởi chạy trình thông dịch Python, hãy chọn Python từ menu Bắt đầu của Windows

Thú vị hơn với Python. cán bộ

3. Để nhập AutoCAD và khởi chạy phiên bản AutoCAD bằng Python, hãy nhập các dòng mã sau

từ pyautocad nhập Autocad

học viện = Autocad()

4. Nhập dòng sau để hiển thị tên bản vẽ nhằm xác minh rằng pyautocad có liên lạc với AutoCAD

in (autocad. tài liệu. Tên)

Nhấp vào hình ảnh để phóng to

Dấu nhắc lệnh của trình thông dịch Python được biểu thị bằng ba ký hiệu >>>, nhưng đầu ra — trong trường hợp này là tên bản vẽ — được hiển thị mà không có dấu nhắc lệnh

Tạo đối tượng AutoCAD

Hãy bắt đầu bằng cách xác định hai điểm và vẽ một đường nối hai điểm đó trong AutoCAD khi pyautocad đang tương tác với AutoCAD

1. Nhập các dòng bên dưới vào trình thông dịch Python để nhập đối tượng Điểm AutoCAD và tạo hai điểm

từ pyautocad nhập APoint

p1 = AĐiểm(0, 0)

p2 = AĐiểm(5, 5)

2. Nhập dòng sau để vẽ một đường nối hai điểm này

học viện. người mẫu. Thêm Dòng(p1, p2)

3. Hiển thị đường được vẽ từ Python trong AutoCAD bằng cách chuyển đổi

Thú vị hơn với Python. cán bộ

Tự động hóa các tác vụ dự phòng

Bằng cách sử dụng các khả năng của Python hoặc bất kỳ ngôn ngữ lập trình nào khác, bạn có thể tự động hóa các tác vụ tốn thời gian, viết các chương trình thống nhất thay vì các chương trình Python riêng lẻ và nhóm nhiều dòng mã lại với nhau. Hãy xem một ví dụ phức tạp hơn một chút để xem nó hoạt động như thế nào. hãy tưởng tượng bạn muốn vẽ nhiều đường và bạn muốn cho mỗi đường một màu khác nhau

1. Xóa đường vẽ bằng Python trong AutoCAD

2. Nhập các dòng sau vào trình thông dịch Python

từ pyautocad nhập Autocad, APoint

học viện = Autocad()

p1 = AĐiểm(0, 0)

p2 = AĐiểm(5, 5)

cho tôi trong phạm vi (5)

mô hình = myline = acadAddLine(p1, p2)

câu nói của tôi. màu = tôi

p2. y += 5

3. Nhấn Enter để kết thúc hành động

4. Mở AutoCAD để xem các dòng mà mã Python của bạn đã vẽ

Thú vị hơn với Python. cán bộ

Như với ví dụ trước, chúng tôi đã nhập AutoCAD và tạo một phiên bản AutoCAD trong trình thông dịch Python trước khi viết mã tạo ra những dòng này. Ta tiến hành tạo hai điểm như trước, nhưng lần này tạo hàng loạt đường chứ không chỉ một đường, vì ta đã nhập đối tượng Điểm AutoCAD vào cùng một dòng mà AutoCAD đã nhập. Giá trị y của mỗi điểm cuối (p2) đã được tăng thêm 5 trong vòng lặp for, đây là một phần mã có thể được lặp lại một số lần được xác định trước, để đạt được điều này

Màu AutoCAD có thể được tham chiếu bằng số màu (1 đến 255) hoặc tên màu (e. g. , đỏ) và cũng được thay đổi trong vòng lặp bằng cách truy cập thuộc tính color. g. , màu đỏ)Trong trường hợp này, giá trị thuộc tính màu của đối tượng được gọi là myline được tăng thêm 1 để thay đổi màu của đối tượng

Xây dựng trên cơ sở

Bạn có thể sử dụng Python để tạo hầu hết mọi đối tượng AutoCAD khác, chẳng hạn như hình tròn, hình đa giác, đường đa tuyến, văn bản, v.v.; . Tương tự như cách thực hiện trong ví dụ, bạn có thể thay đổi lớp, độ dày của đường và độ dày của đối tượng ngoài màu sắc của đối tượng

Nếu bạn muốn trao đổi thông tin giữa AutoCAD và các nguồn dữ liệu bên ngoài, bạn có thể nhập và xuất thông tin từ bảng tính Excel, tệp văn bản và các nguồn khác. Bạn cũng có thể lấy thông tin bản vẽ, chẳng hạn như số lượng đối tượng của một loại cụ thể hoặc tên lớp trong bản vẽ. Các lập trình viên Python nâng cao kết hợp những tính năng này và các tính năng khác để quản lý và sửa đổi bản vẽ, truy vấn bản vẽ để biết thông tin và quản lý nhiều bản vẽ theo nhiều cách khác nhau. Thư viện pyautocad cũng có một số tiện ích hữu ích, chẳng hạn như bộ đếm thời gian và các công cụ định dạng văn bản khác nhau

Bất kỳ trình soạn thảo văn bản nào cũng có thể được sử dụng để viết mã Python, mặc dù các trình soạn thảo văn bản nâng cao hơn như Visual Studio Code hoặc Notepad++ có thể thuận lợi hơn cho việc viết các tập lệnh phức tạp hơn. Nhấp vào Tệp từ giao diện trình bao Python sẽ cho phép bạn lưu mã của mình để sử dụng sau. Tài liệu Python cung cấp thêm chi tiết về cách thực thi các tập lệnh, sau đó bạn có thể thực hiện điều đó từ một dòng lệnh

Nhấp vào hình ảnh để phóng to

Bước tiếp theo

Với sự hiểu biết cơ bản về mô hình đối tượng của AutoCAD, bạn có thể truy cập gần như mọi đối tượng, phương thức và thuộc tính mà bạn có thể truy cập thủ công trong AutoCAD. Với phần giới thiệu ngắn gọn này, bạn có thể thấy cách Python và pyautocad có thể được sử dụng cùng nhau để tự động hóa các tác vụ AutoCAD khác nhau. Sự sáng tạo của bạn là điều duy nhất ngăn cản các chương trình của bạn tinh vi hơn

Nếu bạn có đề xuất cụ thể cho các chủ đề lập trình, vui lòng gửi email cho chúng tôi. Chúng ta sẽ tiếp tục khám phá cách sử dụng Python và các công cụ khác trong các bài viết sau

Trong một bài viết trước, chúng tôi đã giới thiệu Python là một nền tảng lập trình mã nguồn mở. Chúng ta cũng đã xem cách sử dụng Python kết hợp với Dynamo để tạo các đối tượng AutoCAD

[Ghi chú của biên tập viên. Mặc dù pyautocad lấy AutoCAD làm trung tâm nhưng các khái niệm này cũng áp dụng cho các môi trường CAD khác. Đối với những người sử dụng các chương trình CAD khác nhau, chúng tôi sẽ đào sâu vào các công cụ lập trình khác trong các bài viết sau. ]

Python có thể được sử dụng theo nhiều cách khác ngoài Dynamo. Vì Python là ngôn ngữ thông dịch, cấp cao, nên bạn có thể dễ dàng phát triển các ứng dụng tự động hóa các tác vụ lặp đi lặp lại, trong môi trường độc lập hoặc trong môi trường CAD. Trong thế giới AutoCAD, một thư viện tiện dụng có tên là pyautocad có thể giúp bạn viết tập lệnh ActiveX Automation cho AutoCAD bằng Python. Nó đặc biệt hữu ích khi làm việc với tọa độ, lặp và tìm kiếm đối tượng cũng như nhập và xuất dữ liệu

Trong bài viết này, chúng tôi sẽ xem xét cách bắt đầu với pyautocad và viết một số mã đơn giản để tự động hóa các tác vụ AutoCAD. Chúng ta cũng sẽ khám phá một số ý tưởng về cách sử dụng pyautocad để phát triển các ứng dụng phức tạp hơn sau này

Bắt đầu

Nếu bạn đã cài đặt Python trên máy tính của mình (xem bài viết trước), bạn có thể thêm pyautocad theo cách tương tự như được sử dụng cho Python. (Ghi chú. Các bước sau giả sử bạn đang sử dụng Windows. Bạn có thể cần trau dồi một số kỹ năng quản lý tệp cho các bước này và bạn cũng có thể tìm thấy những cách dễ dàng hơn để hoàn thành các bước này, nhưng hãy thử các bước sau để bắt đầu. )

1. Xác định nơi Python được cài đặt trên máy tính của bạn. Nó thường được tìm thấy ở một vị trí tương tự như được hiển thị bên dưới

Nhấp vào hình ảnh để phóng to

2. Điều hướng đến thư mục Tập lệnh và xác nhận rằng bạn có một ứng dụng có tên là pip, ứng dụng này được sử dụng để cài đặt các ứng dụng khác

Nhấp vào hình ảnh để phóng to

Trình cài đặt pip sẽ được cài đặt bằng Python, nhưng nếu không, bạn có thể tìm thêm thông tin về cài đặt tại đây. Cài đặt gói — Hướng dẫn sử dụng gói Python

3. Khi bạn đã cài đặt pip, bạn có thể cài đặt pyautocad bằng cách mở cửa sổ nhắc lệnh, điều hướng đến thư mục thích hợp và nhập nội dung sau

cài đặt pip pyautocad

Sau khi nhập câu lệnh đơn giản đó, pyautocad sẽ được cài đặt trên máy tính của bạn và bạn sẽ thấy nội dung tương tự như sau

Nhấp vào hình ảnh để phóng to

Giao tiếp với AutoCAD

Khi đã cài đặt pyautocad, giờ đây bạn có thể chuyển sang những nội dung thú vị hơn, chẳng hạn như tự động hóa các tác vụ AutoCAD. Để làm điều này, trước tiên bạn cần kết nối pyautocad với AutoCAD. Bạn có thể tìm hướng dẫn về điều này và nhiều lệnh pyautocad khác trong tài liệu pyautocad. Tài liệu Python bổ sung cũng được bao gồm trong bản cài đặt Python

1. Khởi động AutoCAD và mở một bản vẽ mới

2. Từ menu Start của Windows, chọn Python để mở trình thông dịch Python

Thú vị hơn với Python. cán bộ

3. Trong Python, nhập các dòng mã sau để nhập AutoCAD và tạo phiên bản AutoCAD

từ pyautocad nhập Autocad

học viện = Autocad()

4. Để xác nhận pyautocad đang giao tiếp với AutoCAD, hãy nhập dòng sau để hiển thị tên bản vẽ

in (autocad. tài liệu. Tên)

Nhấp vào hình ảnh để phóng to

Ba biểu tượng >>> đóng vai trò là dấu nhắc lệnh trong trình thông dịch Python. Đầu ra — trong trường hợp này, tên bản vẽ — được hiển thị mà không có dấu nhắc lệnh

Tạo đối tượng AutoCAD

Bây giờ pyautocad đang giao tiếp với AutoCAD, bạn có thể tạo một số đối tượng trong AutoCAD. Hãy bắt đầu bằng cách xác định hai điểm và vẽ một đường thẳng nối hai điểm đó

1. Trong trình thông dịch Python, nhập các dòng sau để nhập đối tượng Điểm AutoCAD và tạo hai điểm

từ pyautocad nhập APoint

p1 = AĐiểm(0, 0)

p2 = AĐiểm(5, 5)

2. Tạo một đường kết nối hai điểm này bằng cách nhập dòng sau

học viện. người mẫu. Thêm Dòng(p1, p2)

3. Chuyển sang AutoCAD để hiển thị đường được vẽ từ Python

Thú vị hơn với Python. cán bộ

Tự động hóa các tác vụ dự phòng

Để thực sự khai thác các khả năng của Python hoặc bất kỳ ngôn ngữ lập trình nào, bạn có thể tự động hóa các tác vụ dư thừa và tiết kiệm thời gian. Bạn cũng có thể nhóm nhiều dòng mã lại với nhau và viết các chương trình hợp nhất, thay vì nhập từng dòng riêng lẻ trong Python. Hãy xem cách nó hoạt động với một ví dụ nâng cao hơn một chút. Giả sử bạn muốn vẽ nhiều đường và tạo cho mỗi đường một màu riêng

1. Trong AutoCAD, xóa đường vừa vẽ bằng Python

2. Trong trình thông dịch Python, nhập các dòng sau

từ pyautocad nhập Autocad, APoint

học viện = Autocad()

p1 = AĐiểm(0, 0)

p2 = AĐiểm(5, 5)

cho tôi trong phạm vi (5)

dòng của tôi = acad. người mẫu. Thêm Dòng(p1, p2)

câu nói của tôi. màu = tôi

p2. y += 5

3. Nhấn Enter để hoàn thành quy trình

4. Chuyển sang AutoCAD để hiển thị các đường được vẽ bằng mã Python của bạn

Thú vị hơn với Python. cán bộ

Hãy xem lại mã đã tạo ra những dòng này. Như với ví dụ trước, trước tiên chúng tôi đã nhập AutoCAD và tạo một phiên bản AutoCAD trong trình thông dịch Python. Chúng tôi cũng đã nhập đối tượng Điểm AutoCAD trong cùng một dòng đã nhập AutoCAD. Ta tiến hành tạo hai điểm như trước, nhưng lần này tạo một loạt đường thay vì một đường. Chúng tôi đã làm điều này với một vòng lặp for, đây là một khối mã có thể được lặp lại một số lần cố định. Trong vòng lặp, giá trị y của mỗi điểm cuối (p2) được tăng thêm 5

Cũng trong vòng lặp, màu của mỗi dòng đã được thay đổi bằng cách truy cập thuộc tính màu. Màu AutoCAD có thể được tham chiếu bằng số màu (1 đến 255) hoặc tên màu (e. g. , màu đỏ). Trong trường hợp này, thuộc tính màu của một đối tượng được gọi là myline đã được thay đổi bằng cách tăng giá trị của thuộc tính màu lên 1

Xây dựng trên cơ sở

Chúng tôi vẫn chỉ mới bắt đầu với Python và pyautocad. Ngoài việc tạo các đường, bạn có thể sử dụng Python để tạo hầu như bất kỳ đối tượng AutoCAD nào khác, chẳng hạn như hình tròn, đa giác, đa giác, văn bản, v.v. Bạn cũng có thể thay đổi các thuộc tính khác của đối tượng ngoài màu sắc, chẳng hạn như lớp, độ dày của đường và độ dày, theo cách tương tự như trong ví dụ

Bạn cũng có thể lấy thông tin bản vẽ, chẳng hạn như số lượng đối tượng của một loại nhất định hoặc tên lớp trong bản vẽ. Nếu bạn muốn trao đổi dữ liệu giữa AutoCAD và các nguồn dữ liệu bên ngoài, bạn có thể nhập và xuất dữ liệu từ bảng tính Excel, tệp văn bản và các nguồn khác. Thư viện pyautocad cũng có một số tiện ích hữu ích, chẳng hạn như bộ đếm thời gian và các công cụ định dạng văn bản khác nhau. Các lập trình viên Python nâng cao kết hợp những tính năng này và các tính năng khác để quản lý và sửa đổi bản vẽ, truy vấn bản vẽ để biết thông tin và quản lý nhiều bản vẽ theo nhiều cách khác nhau

Đối với các tập lệnh phức tạp hơn, bạn có thể muốn lưu mã của mình vào một tệp để sử dụng lại. Mã Python có thể được viết bằng bất kỳ trình soạn thảo văn bản nào, mặc dù bạn có thể hưởng lợi bằng cách sử dụng các trình soạn thảo văn bản nâng cao hơn như Visual Studio Code hoặc Notepad++. Từ giao diện trình bao Python, bạn có thể lưu mã của mình để sử dụng lại bằng cách nhấp vào Tệp. Lưu và đặt tên cho tệp của bạn. Sau đó, bạn có thể thực thi tập lệnh từ một dòng lệnh. Thông tin thêm về việc thực thi các tập lệnh có thể được tìm thấy trong tài liệu Python

Nhấp vào hình ảnh để phóng to

Bước tiếp theo

Với phần giới thiệu ngắn gọn này, bạn có thể thấy cách Python và pyautocad có thể được sử dụng cùng nhau để tự động hóa các tác vụ AutoCAD khác nhau. Với sự hiểu biết cơ bản về mô hình đối tượng của AutoCAD, bạn có thể truy cập hầu như mọi đối tượng, phương thức và thuộc tính mà bạn có thể truy cập thủ công trong AutoCAD. Mức độ phức tạp trong các chương trình của bạn chỉ bị giới hạn bởi sự sáng tạo của bạn

Chúng ta sẽ tiếp tục khám phá cách sử dụng Python và các công cụ khác trong các bài viết sau. Nếu bạn có ý tưởng cụ thể cho các chủ đề lập trình, vui lòng gửi email cho chúng tôi