Tính toán tọa độ XY theo Độ thập phân từ dữ liệu dự kiến ​​trong mô hình hoặc tập lệnh?


8

Có thể tính toán tọa độ điểm XY theo Độ thập phân trong mô hình hoặc tập lệnh khi một lớp đối tượng nằm trong hệ tọa độ dự kiến ​​không?

Thật dễ dàng khi một FC nằm trong hệ tọa độ địa lý:

  • sử dụng công cụ Add ​​XY Tọa độ hoặc
  • sử dụng biểu thức Python, vd. !shape.extent.XMax!

Tôi đã thấy rằng các thuộc tính diện tích và độ dài của trường hình học có thể được sửa đổi bằng từ khóa chuyển đổi đơn vị hình học. Đối với các đơn vị tuyến tính của bệnh sởi, người ta có thể sử dụng @DECIMALDEGREES.
Thật không may, !shape.extent.XMax@decimaldegrees!không hoạt động vì XMax không phải là một chiều dài.

Trong tính toán Hình học chức năng (được truy cập từ nhấp chuột phải) có khả năng chọn loại đầu ra Độ thập phân ngay cả đối với lớp tính năng được chiếu.
Tôi có thể làm điều này bằng ArcPy không?


Đây là đoạn mã dựa trên giải pháp của iRfAn:

import arcpy, os
projectedFC = r"C:\tmp\test.gdb\points01_Projected"
prjFile = os.path.join(arcpy.GetInstallInfo()["InstallDir"],
            r"Coordinate Systems\Geographic Coordinate Systems\World\WGS 1984.prj")
spatialRef = arcpy.SpatialReference(prjFile)

updCursor = arcpy.UpdateCursor(projectedFC,"", spatialRef)
for row in updCursor:
    pnt = row.Shape.getPart(0)
    row.X = pnt.X
    row.Y = pnt.Y
    updCursor.updateRow(row)

del updCursor, row

Có nhất thiết phải giữ các điểm XY trong một CS được chiếu không?
Roy

@Roy: có, tôi muốn duy trì một lớp tính năng trong CS được chiếu, nhưng tính độ thập phân.
Marcin

Câu trả lời:


4

Tôi nghĩ bạn có thể.

Chỉ cần xác định Tham chiếu không gian trong WGS-84 và sử dụng con trỏ bằng Tham chiếu không gian này.

Các tọa độ được chỉ định trong thông số không gian được cung cấp và được chuyển đổi khi đang bay sang hệ tọa độ của bộ dữ liệu.

Để biết thêm chi tiết xem điều này .


Bạn có thể làm theo cách này. Từ SHAPEtrường bạn sẽ nhận được một đối tượng hình học điểm, từ đó bạn có thể nhận được các hợp âm X và Y.
om_henners

2

Tôi không chắc chắn về tập lệnh, nhưng tôi đã hoàn thành việc này theo cách tự động bằng cách sử dụng trình xây dựng mô hình: nhập tọa độ xy của bạn và chiếu chúng vào WGS 1984. Sau đó thêm các trường và tính toán hình học của các điểm theo độ thập phân. Sau đó đưa các điểm XY của bạn trở lại hệ thống tọa độ ban đầu.


đó là một chặng đường dài, tôi sẽ sử dụng con trỏ và sử dụng WGS-84 làm Tham chiếu không gian và tính toán. Không cần phải chiếu lại và sau đó tham gia.
iRfAn

@mburkenysdot: Đây là một cách giải quyết tốt khi ai đó không muốn sử dụng bất kỳ tập lệnh nào.
Marcin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.