Lợi ích của việc viết kịch bản bằng Python trong ArcGIS là gì?

Viết kịch bản & ArcScripts cho ArcGIS

Quay lại

  Trang trợ giúp & hướng dẫn về GIS. Quay lại
  Trang chủ SAL.

Tập lệnh & Mô hình GIS

Một trong những điểm mạnh của phần mềm ESRI [và của hầu hết các phần mềm GIS nói chung] là khả năng tạo mã hoặc tập lệnh tùy chỉnh để cho phép lặp lại các tác vụ thông thường cũng như mở rộng chức năng của phần mềm. Ngoài việc đơn giản là tạo các tập lệnh để sử dụng riêng, một mạng lưới chia sẻ các tập lệnh cũng đã phát triển giữa những người dùng GIS và qua nhiều năm, cộng đồng GIS đã đóng góp rất nhiều mã hóa để bổ sung cho phần mềm cơ bản. Các tập lệnh này thường hoàn thành một tác vụ cụ thể, sử dụng chức năng hiện có [tự động hóa các tác vụ phức tạp và/hoặc lặp lại, v.v. ]. Trong một số trường hợp, các tập lệnh này cuối cùng được tích hợp vào chính phần mềm [do đó ESRI tận dụng cơ sở người dùng để giúp xác định chức năng nào cần được xử lý và thậm chí có thể cả việc viết mã…]

Gần đây hơn, với sự ra đời của ArcGIS ModelBuilder [một công cụ tạo kịch bản đồ họa], cũng có khả năng chia sẻ các mô hình, được thiết kế để thực hiện một loạt các bước xử lý địa lý cụ thể

ArcScript

ArcScript [http. //arcscripts. esri. com/] là một địa điểm trực tuyến để chia sẻ các tập lệnh được thiết kế để hoạt động với phần mềm ESRI. Lưu ý rằng nhiều nguồn trực tuyến khác cũng tồn tại để chia sẻ các tập lệnh GIS [ESRI và các nguồn khác]. Tuy nhiên, ArcScripts là một trong những phần mềm lớn nhất, được tổ chức tốt và bảo trì thường xuyên

Các tập lệnh và mô hình có thể được tìm kiếm theo Ngôn ngữ, Phần mềm, Từ khóa [chủ đề] hoặc kết hợp của chúng. Với lịch sử lâu hơn của dòng lệnh ArcInfo và ArcView 3. x, số lượng. aml và. các tập lệnh ave vượt quá các tập lệnh được viết cho ArcGIS [tệp VB, tập lệnh Python và mô hình ModelBuilder]. Tuy nhiên, sự cân bằng này đã thay đổi khi cộng đồng ESRI chuyển sang ArcGIS cho nhu cầu xử lý địa lý hàng ngày của họ cũng như 'hậu trường'

Các tập lệnh được tìm thấy thông qua các công cụ tìm kiếm được liên kết với trang Chi tiết tập lệnh [thường chứa thông tin về việc sử dụng và các giới hạn của tập lệnh], với liên kết để tải xuống tập lệnh. Các bản tải xuống thường được nén và thường có một số loại hướng dẫn hoặc tệp readme đi kèm [ngoài thông tin có trên trang Chi tiết tập lệnh trực tuyến]

Ngôn ngữ kịch bản

Các nền tảng phần mềm khác nhau sử dụng các ngôn ngữ lập trình khác nhau. Đối với người dùng ESRI, các công cụ/ngôn ngữ tập lệnh phổ biến hơn [được liệt kê từ hiện tại đến cũ hơn] là

Mô HìnhNgười Xây DựngMô Hình. Các mô hình có thể được xây dựng trong ArcMap hoặc ArcCatalog, sử dụng ArcToolbox và ModelBuilder. Các mô hình này có thể kết hợp bất kỳ công cụ nào có sẵn từ ArcToolbox cũng như các bộ dữ liệu và tham số cho một loạt các bước xử lý địa lý. Những mô hình này có thể được lưu trong một hộp công cụ [một. tbx] và được chia sẻ với những người dùng khác [những người có thể chèn bộ dữ liệu và/hoặc tham số của riêng họ]. Ngoài ra, các mô hình có thể được xuất sang tập lệnh Python để tùy chỉnh thêm. Mặc dù xuất hiện dưới dạng hiển thị đồ họa của các công cụ và dữ liệu, một mô hình thực sự là một loại tập lệnh có GUI [giao diện người dùng đồ họa] để hiển thị và thao tác nội dung, giúp đơn giản hóa rất nhiều quá trình viết. Xem ghi chú sử dụng ModelBuilder bên dưới

con trăn. Với việc phát hành ArcGIS 9. 0, ESRI đã thêm khả năng tạo tập lệnh bằng nhiều ngôn ngữ lập trình [Python, VBScript, Jscript, Perl]. Python đã được chọn [bởi ESRI và WWU] làm ngôn ngữ ưu tiên do tính dễ sử dụng của nó. Python là một ngôn ngữ thông dịch, hướng đối tượng. Nó cũng độc lập với nền tảng [nó hoạt động trên UNIX và Linux cũng như Windows] và là mã nguồn mở. Xem ghi chú sử dụng Python bên dưới

Visual Basic [VB, VBA, VBScript]. Với việc giới thiệu ArcGIS, ESRI đã chuyển nền tảng phần mềm chính của họ sang Mô hình Đối tượng Thành phần [COM] của Microsoft. Như vậy, ngôn ngữ kịch bản gốc là Visual Basic [VB]. Mã VB có thể được thêm dưới dạng 'macro' hoặc được biên dịch dưới dạng. dll cần được cài đặt qua hệ điều hành Windows. Xem ghi chú sử dụng VB bên dưới

ĐẠI LỘ. Một ngôn ngữ lập trình dành riêng cho ứng dụng, hướng đối tượng, được phát triển để tùy chỉnh ArcView [3. x]. Như với. aml, không có phương pháp nào để dịch trực tiếp một. ave sang Python, VB hoặc. aml

AML [Ngôn ngữ vĩ mô vòng cung]. đây là ngôn ngữ dành riêng cho ứng dụng [được viết riêng cho ArcInfo dòng lệnh] được phát triển để xử lý địa lý và tạo ứng dụng người dùng cuối, bao gồm đầu ra bản đồ. AML là ngôn ngữ thuật toán 'cấp cao'. Vì ArcInfo dòng lệnh là một trong những công ty hàng đầu trong ngành trong nhiều năm, một số lượng lớn. tập tin aml đã được viết. Mặc dù những thứ này không thể dịch trực tiếp sang Python hoặc VB, nhưng chúng vẫn cung cấp thư viện nếu ý tưởng… Ngoài ra, với giấy phép ArcInfo của ArcGIS, nhiều. các tệp aml có thể được sử dụng trực tiếp trong ArcGIS. Để sử dụng các tệp AML trong ArcGIS, hãy xem thêm

Trợ giúp Trực tuyến ArcGIS [trợ giúp web. esri. com/arcgisdesktop/9. 1]

[xem. Viết tập lệnh xử lý địa lý / Công cụ nhắn tin và tập lệnh / Sử dụng AML với công cụ tập lệnh]

Sử dụng các loại tập lệnh khác nhau cho ArcGIS

Hai ngôn ngữ kịch bản chính được sử dụng với ArcGIS là Python và VB. Ngoài ra, người dùng cũng có thể chia sẻ các mô hình được tạo trong ModelBuilder và Hộp công cụ tùy chỉnh [. tbx, có thể tùy ý lưu trữ trong cơ sở dữ liệu địa lý]. Chi tiết về các phương pháp viết kịch bản khác nhau này và cách sử dụng chúng được cung cấp bên dưới

1. Tệp trực quan cơ bản. Các tệp VB có ba loại để sử dụng trong ArcGIS [theo thứ tự phức tạp tăng dần]

1a. Macro VBScript và VBA

1b. VB. dll [Thư viện liên kết động]

1c. VB thực thi

1ngày. Phần mở rộng ArcGIS

2. Tập lệnh Python

3. Mô hìnhMô hình Bulder

1. Ngôn ngữ lập trình

1a. Macro VBScript và VBA. đây là các tệp VBA [Visual Basic for Applications] hoặc VBScript có thể được thêm vào một. mxd qua menu Tools/Macro/Visual Basic Editor và/hoặc menu Tools/Customize. Khi các macro [tập lệnh] này đã được thêm vào một dự án, chúng có thể được thực thi [chạy] từ menu Công cụ / Macro hoặc từ một biểu tượng được liên kết trên thanh công cụ, thực hiện một loạt các bước. Macro VB không yêu cầu quyền quản trị viên để cài đặt, vì chúng được chứa trong. mxd, không phải tệp hệ điều hành. Macro cũng có ưu điểm là có thể chỉnh sửa được [tôi. e. , người dùng có thể thay đổi mã để tùy chỉnh chức năng]. Việc cài đặt các tệp này yêu cầu người dùng phải hiểu và có thể điều hướng môi trường VBA cơ bản để tùy chỉnh ArcGIS

Các bước cơ bản để thêm tập lệnh VB vào ArcMap là

  1. Từ menu Công cụ, chọn Macro/Macro

  2. Nhập tên cho macro mới của bạn

  3. Chọn có lưu trữ macro trong hiện tại hay không. mxd [Dự án] hoặc trong Bình thường. mxt hoặc trong Tất cả các Dự án Tiêu chuẩn - nếu được lưu trữ trong Bình thường. mxt, nó sẽ khả dụng bất cứ lúc nào ArcMap được mở [lưu ý rằng tại WWU, sinh viên không có quyền truy cập để tạo/lưu Bản đồ thông thường. mxt nên muốn chọn tùy chọn Dự án]

  4. Nhấp vào Tạo

  5. Thao tác này sẽ mở trình soạn thảo VB, với cửa sổ Dự án - Mô-đun đang mở

  6. Sử dụng Sao chép và Dán, sao chép mã từ macro bạn muốn sử dụng vào cửa sổ Dự án - Mô-đun - có thể bạn sẽ cần xóa văn bản mặc định [Phụ. End Sub] trước

  7. Trong hộp thoại phía trên bên phải của cửa sổ Dự án - Mô-đun, chọn tên của mô-đun đã dán từ danh sách thả xuống

  8. Lưu Dự án [Menu Tệp/Lưu Dự án hoặc biểu tượng Lưu]

  9. Đóng trình soạn thảo Visual Basic

  10. Để chạy [thực thi] macro

  11. Một lần nữa chọn Macro/Macro từ menu Công cụ

  12. Chọn tên của macro bạn muốn chạy

  13. Nhấp vào Chạy

  14. Macro cũng có thể được chỉnh sửa bằng cách chọn Chỉnh sửa

  15. Để liên kết và chạy macro với một biểu tượng

  16. Từ menu Công cụ, chọn Tùy chỉnh

  17. Nhấp vào tab Lệnh

  18. Trong hộp thoại Danh mục [bên trái], cuộn xuống và chọn Macro

  19. Nếu macro của bạn được lưu trong. mxd, chọn. mxd trong ô Save in

  20. Kéo và thả macro mong muốn từ hộp thoại Lệnh [bên phải] vào bất kỳ thanh công cụ nào

  21. Giờ đây, biểu tượng có thể được sử dụng tương tự như bất kỳ biểu tượng nào khác trên thanh công cụ

  22. Có thể chỉnh sửa macro bằng cách nhấp chuột phải vào biểu tượng và chọn Xem nguồn

Các bước cơ bản để thêm VBScript dưới dạng UITool trong ArcMap là

  1. Từ menu Công cụ, chọn Tùy chỉnh

  2. Nhấp vào tab Lệnh

  3. Trong hộp thoại Danh mục [bên trái], cuộn xuống và chọn UIControls

  4. Trong hộp thoại Lưu vào [ở cuối cửa sổ Tùy chỉnh], chọn hiện tại. mxd hoặc Bình thường. mxt [lưu ý rằng tại WWU, sinh viên không có quyền truy cập để tạo/lưu tệp Bình thường. mxt nên muốn chọn tệp hiện tại. mxd tùy chọn]

  5. Nhấp vào UIControl mới

  6. Trong hộp thoại New UIControl, chọn UIToolControl cho Công cụ [hoặc UIButtonControl cho nút, v.v.]

  7. Nhấp vào Tạo

  8. Đóng cửa sổ Tùy chỉnh

  9. Để thêm mã cho Công cụ, nhấp chuột phải vào biểu tượng công cụ và chọn Xem Nguồn

  10. Sao chép và Dán mã cho UITool vào cửa sổ Visual Basic Editor [Tài liệu này] - có thể bạn sẽ cần xóa văn bản mặc định [Phụ. End Sub] trước

  11. Lưu Dự án [Menu Tệp/Lưu Dự án hoặc biểu tượng Lưu]

  12. Đóng trình soạn thảo Visual Basic

  13. Nhấp vào biểu tượng công cụ để sử dụng nó như bình thường [các công cụ thường cho phép chuột thực hiện chức năng mới. ]

  14. Lưu ý rằng có thể xóa UITool khỏi [hoặc định vị lại trên] thanh công cụ bằng cách chọn Tùy chỉnh từ menu Công cụ, sau đó kéo biểu tượng không mong muốn ra khỏi thanh công cụ [đến bất kỳ nơi nào khác] hoặc đến vị trí mới trên thanh công cụ. Điều này chỉ có thể được thực hiện khi cửa sổ Tùy chỉnh đang mở

Xem thêm

Trợ giúp Trực tuyến ArcGIS [trợ giúp web. esri. com/arcgisdesktop/9. 1]

[xem. Tùy chỉnh giao diện người dùng / Tạo, chỉnh sửa và chạy macro]

1b. tập tin dll VB. Các tệp Thư viện liên kết động [dll] thường phức tạp hơn một macro đơn giản. Này. dll là các tệp VB [Visual Basic] cần được ‘tải’ [cài đặt] qua hộp thoại Công cụ / Tùy chỉnh bằng nút Thêm từ tệp…. Một khi. dll đã được cài đặt, nó sẽ có sẵn từ cửa sổ Lệnh của hộp thoại Tùy chỉnh và có thể được thêm vào bất kỳ thanh công cụ nào trong ArcMap hoặc ArcCatalog. Sau khi thêm công cụ vào thanh công cụ, người dùng có thể sử dụng công cụ bằng cách nhấp vào biểu tượng như với bất kỳ công cụ nào khác trên thanh công cụ. Bởi vì. dll cần được cài đặt trong Tệp chương trình của hệ điều hành, các tệp này thường yêu cầu quyền quản trị viên để cài đặt. Sau khi cài đặt, bất kỳ thông tin đăng nhập nào cũng có thể thêm công cụ vào thanh công cụ và/hoặc sử dụng công cụ. Các tệp này được biên dịch và không thể chỉnh sửa/tùy chỉnh [mặc dù tác giả có thể chọn đưa vào mã chưa biên dịch được sử dụng để tạo tệp. dll cũng vậy]. Tuy nhiên, chúng tương đối dễ cài đặt [đơn giản hơn macro VBA]

Các bước cơ bản để cài đặt một. dll trong ArcMap là

  1. Từ menu Công cụ, chọn Tùy chỉnh

  2. Nhấp vào nút Thêm từ tệp ở cuối cửa sổ Tùy chỉnh

  3. Duyệt đến và chọn. dll được cài đặt

  4. Bấm OK trong hộp thoại Đối tượng đã thêm

  5. Nhấp vào tab Lệnh trong cửa sổ Tùy chỉnh

  6. Trong hộp thoại Danh mục [bên trái], cuộn xuống và chọn tiêu đề Danh mục cho tệp đã cài đặt. dll [bạn sẽ cần đọc tệp trợ giúp hoặc tệp readme đi kèm với. dll để xác định đây là gì/ở đâu]

  7. Trong hộp Lưu vào, chọn nơi bạn muốn lưu trữ biểu tượng công cụ này [các lựa chọn là biểu tượng hiện tại. mxd hoặc trong Bình thường. mxt [lưu ý rằng tại WWU, sinh viên không có quyền truy cập để tạo/lưu tệp Bình thường. mxt nên muốn chọn tệp hiện tại. mxd tùy chọn]

  8. Kéo và thả lệnh [công cụ] mong muốn từ hộp thoại Lệnh [bên phải] vào bất kỳ thanh công cụ nào

  9. Đóng cửa sổ Tùy chỉnh

  10. Giờ đây, biểu tượng có thể được sử dụng tương tự như bất kỳ biểu tượng nào khác trên thanh công cụ

1c. VB thực thi. Đây là những tập tin [đôi khi bao gồm một. dll] cần được cài đặt thông qua tệp thực thi [. tập tin exe]. Như với tải. dll từ hộp thoại tùy chỉnh, quá trình này yêu cầu đăng nhập quản trị viên. Quá trình cài đặt diễn ra bên ngoài ArcGIS [thông thường,. exe được chạy từ Windows Explorer]. Sau khi cài đặt, công cụ [hoặc công cụ hoặc menu] có sẵn cho tất cả người dùng ArcGIS. Như với. dll, các tệp này không thể chỉnh sửa được

Các bước cơ bản để thêm một. tập tin exe là

  1. Khuyến khích. Đóng ArcMap và/hoặc ArcCatalog nếu chúng đang mở

  2. Nhấp đúp chuột vào. tập tin exe

  3. Làm theo hướng dẫn cài đặt được cung cấp cùng với tệp hoặc qua hộp thoại trình cài đặt tệp

1ngày. Phần mở rộng ArcGIS. Về mặt kỹ thuật, một danh mục con của các tệp thực thi VB, Tiện ích mở rộng ArcGIS thường là một bộ sưu tập các công cụ và/hoặc menu được đóng gói, phức tạp hơn. Không giống như phần lớn các tập lệnh được liệt kê ở trên [thường là các tinh chỉnh và sắp xếp lại các công cụ hiện có], Tiện ích mở rộng thường bổ sung chức năng cho bộ công cụ ArcGIS cơ bản [e. g. tiện ích mở rộng Phân tích 3D]. Tiện ích mở rộng được cài đặt thông qua một. exe và như vậy yêu cầu đăng nhập quản trị viên. Quá trình cài đặt diễn ra bên ngoài ArcGIS [thông thường,. exe được chạy từ Windows Explorer]. Sau khi cài đặt, tiện ích mở rộng có sẵn cho tất cả người dùng ArcGIS. Những tập tin này không thể được chỉnh sửa

2. Tập lệnh Python

Tệp Python là tệp văn bản [thường có phần mở rộng. phần mở rộng py]. Chúng có thể được chỉnh sửa bằng bất kỳ trình soạn thảo văn bản nào. Ứng dụng chỉnh sửa ưa thích là PythonWin [trình chỉnh sửa độc lập cho các tập lệnh Python đi kèm với ArcGIS], cung cấp trợ giúp về cú pháp và mã hóa. ModelBuilder cũng có thể được sử dụng để tạo tập lệnh Python bằng cách xuất mô hình thành tập lệnh. Sau khi xuất, tập lệnh có thể được tinh chỉnh thêm [thêm chức năng không có sẵn trong ModelBuilder]

Các tập lệnh Python cho ArcGIS sử dụng các công cụ trong ArcToolbox thông qua kết nối với ArcToolbox ["Đối tượng bộ xử lý địa lý"]. Khi mối quan hệ này đã được thiết lập, bất kỳ công cụ nào trong Hộp công cụ đều có thể được sử dụng trong tập lệnh. Các tập lệnh này có thể được thực thi từ ArcMap hoặc ArcCatalog [Thêm tập lệnh vào Hộp công cụ hiện có] hoặc từ bên ngoài ArcGIS [chỉ đơn giản bằng cách chạy tập lệnh từ Windows Explorer]. Nếu được thêm vào Hộp công cụ, tập lệnh thường sẽ yêu cầu gán tham số [biến để nhận đầu vào từ người dùng khi chạy]. Các tham số này cần được chỉ định đúng theo thứ tự và loại dữ liệu của chúng để tập lệnh chạy đúng cách. Sau khi được thêm vào hộp công cụ, hộp công cụ [a. tbx] có thể được chia sẻ với những người dùng khác, cung cấp một phương tiện khác để chia sẻ tập lệnh Python [và giúp người dùng cuối không phải đặt tham số, v.v. ]

Việc thêm và chạy tập lệnh Python không yêu cầu đặc quyền của quản trị viên. Người dùng có thể chỉnh sửa các tập lệnh này khi cần

Các bước cơ bản để thêm tập lệnh Python vào ArcToolbox là

  1. Tùy chọn tạo hộp công cụ mới cho tập lệnh. nhấp chuột phải vào ArcToolbox và chọn Hộp công cụ mới

  2. Nhấp chuột phải vào hộp công cụ mong muốn để lưu trữ tập lệnh Python và chọn Thêm / Tập lệnh

  3. Nhập Tên và Nhãn cho tập lệnh [những tên này có thể giống nhau và không cần phải tương ứng với tên của chính tập lệnh - Nhãn sẽ là thứ được liệt kê trong hộp công cụ]

  4. Tùy chọn chọn hộp để Lưu trữ tên đường dẫn tương đối

  5. Bấm tiếp

  6. Duyệt đến vị trí của tập lệnh Python để sử dụng

  7. Bấm tiếp

  8. Nhập [các] Tên hiển thị và [các] Loại dữ liệu cho bất kỳ tham số nào mà tập lệnh yêu cầu [bạn có thể cần đọc tệp trợ giúp hoặc tệp readme đi kèm với tập lệnh hoặc chính tập lệnh để xác định tham số nào được yêu cầu và loại dữ liệu nào

  9. Nhấp vào Kết thúc

  10. Nhấp đúp chuột vào Tập lệnh trong hộp công cụ để chạy nó [sẽ mở hộp thoại nhắc người dùng về các tham số]

  11. Nhấp chuột phải vào tập lệnh trong hộp công cụ và chọn Thuộc tính để sửa đổi bất kỳ cài đặt nào ở trên

Người dùng muốn tìm hiểu thêm về các mô hình và sử dụng ArcGIS ModelBuilder được khuyến khích tham khảo các nguồn sau

Tại sao Python lại quan trọng trong GIS?

Python là ngôn ngữ kịch bản được tích hợp vào nhiều ứng dụng phần mềm GIS như ArcGIS và QGIS và được dùng để tự động hóa các tác vụ xử lý địa lý . Các tập lệnh Python về cơ bản là một tập lệnh dựa trên lệnh chứa các kiểu dữ liệu, câu lệnh và hàm tạo nên các hướng dẫn xử lý địa lý.

Tập lệnh Python tốt cho việc gì?

Python thường được sử dụng để phát triển trang web và phần mềm, tự động hóa tác vụ, phân tích dữ liệu và trực quan hóa dữ liệu . Vì tương đối dễ học, Python đã được nhiều người không phải là lập trình viên như kế toán và nhà khoa học áp dụng cho nhiều công việc hàng ngày, chẳng hạn như tổ chức tài chính.

Python có tốt cho GIS không?

Thư viện Python là tiện ích mở rộng cuối cùng trong GIS vì nó cho phép bạn tăng cường chức năng cốt lõi của nó . Bằng cách sử dụng các thư viện Python, bạn có thể thoát ra khỏi khuôn khổ của GIS và đi sâu vào một số ngành khoa học dữ liệu nghiêm túc. Có hơn 200 thư viện chuẩn trong Python. Nhưng cũng có hàng ngàn thư viện của bên thứ ba.

ArcGIS có cần Python không?

Sử dụng tab Python trong cài đặt ArcGIS Pro để kiểm tra phiên bản của các gói đó. Ghi chú. Trong các phiên bản ArcGIS Pro 1. 0 đến 1. 2, nếu Python được sử dụng bên ngoài ArcGIS Pro, bạn phải cài đặt Python cho ArcGIS Pro . Điều này là không cần thiết cho các phiên bản 1. 3 trở lên.

Chủ Đề