Thư viện python arcgis

Ở bài viết này gisgpsrs sẽ giới thiệu chi tiết các hàm biến khi viết công cụ và cách các bạn tham khảo mã thư viện mà arcgis đã cung cấp sẵn cho người dùng rất tiện ích và linh hoạt



- Bài này gisgpsrs sẽ giới thiệu công cụ viết cụ thể là làm tròn trường số thực. Ví dụ bạn có một lớp điểm cao, có trường đánh giá mức độ cao này có giá trị lấy sau dấu phẩy 1 chữ số trở lên [Vd. 9,82] -> cần làm tròn trường này không lấy sau dấu phẩy nữa [9,82 ~ 10]


- Bước 1. Tạo công cụ “Z_Làm tròn trường số thực -> Thực hiện làm tròn”. Nếu bạn chưa biết công cụ tạo như thế nào thì hãy đọc bài 1




- Bước 2. Create the first variable in Tham số bao gồm

+ Chọn dữ liệu cần làm tròn [Layer đầu vào]




+ Chọn trường dữ liệu cần làm tròn [Chọn trường cần làm tròn]




+ Chọn nơi lưu kết quả [where save layer results]


- Bước 3. Viết code vào file script để xử lý, các bạn copy đoạn code bên dưới vào file script


# -*- mã hóa. utf-8 -*-

# Tác giả. Nguyễn Viết Quân

# Web. gisgpsrs. blogspot. com

# thư điện tử. vietquan2407@gmail. com

nhập toán

nhập khẩu arcgisscripting

gp = arcgisscripting. tạo [9. 3]


def lamtron[input_fc,input_fd,newfd]

gp toàn cầu

hàng = gp. con trỏ cập nhật[input_fc]

kết quả = gp. GetCount_manager[input_fc]

đếm = int[kết quả. GetOutput[0]]

gp. SetProgressor["bước", "Đọc", 0, đếm, 1]

cho hàng trong iterrows. tiếp theo, Không có]

giatri = hàng. GetValue[input_fd]

#Trong python k có chức năng làm tròn [làm tròn] ở đây tách phần nguyên và thực thi

phanso,phannguyen = toán. modf[giatri]

if [phanso >= 0. 5]

newvalue = phannguyen + 1 #Công thêm 1

hàng ngang. SetValue[newfd,newvalue]

hàng. UpdateRow[hàng]

yêu tinh [phanso. = 0]

newvalue = phannguyen #Ko Công thêm 1

hàng ngang. SetValue[newfd,newvalue]

hàng. UpdateRow[hàng]

gp. SetProgressorPosition[]

gp. ResetProgressor[]

xóa hàng

xóa hàng

   

#Thông số đầu vào

đầu vàoShapefile = gp. GetParameterAsText[0]

trường đầu vào = gp. GetParameterAsText[1]

đầu raShapefile = gp. GetParameterAsText[2]

# khối xử lý

gp. hộp công cụ = "quản lý"

thử

#Copy sang shapefile mới

gp. CopyFeatures_manager[inputShapefile,outputShapefile]

#Xử lý chuyển đổi bảng mã

đầu vàoFL = inputFields. tách ra[";"]

cho inputField trong inputFL

lamtron[đầu raShapefile,inputField,inputField]

gp. AddMessage["Kết thúc. "]

#tài nguyên miễn phí

ngoại trừ

    gp. GetMessage[2]
del gp


- That is done this tool

- Bạn có thể tải công cụ này tại đây

- Các bạn có thể tham khảo rất nhiều mã nguồn và rất chi tiết trong tệp trợ giúp của arcgis, bạn tìm bộ trợ giúp này trong Start -> All Program -> ArcGis -> ArcGis Desktop Help

Chủ Đề