Desarrollé herramientas para los petroleros que les permiten crear polígonos de arrendamientos basados en descripciones legales de PLSS en una hoja de cálculo.
La primera herramienta vive dentro de Excel y se usa para exportar descripciones legales de arrendamientos de la hoja de cálculo a un archivo xml. El libro de trabajo contiene VBA que hace referencia a una clase de transferencia de datos . La clase está escrita en .NET con un contenedor invocable COM . El técnico de Excel escribió el código que recorre las filas de la hoja de cálculo, creando instancias de los objetos de arrendamiento. Uno de los atributos del objeto de arrendamiento es una descripción legal bien formada. Podría describir algo así como la mitad N de la sección del cuarto SE de la Sección 21 Township cualquiera que sea el rango que sea. Los arrendamientos de petróleo pueden anidarse bastante profundo, hasta 1/128 de una sección, según recuerdo. La colección de arrendamientos se serializa en un archivo xml.
La segunda herramienta vive en Arcmap. El usuario primero carga una capa de polígono PLSS en el mapa (descargado desde BLM). Luego hace clic en un comando y se le solicita un archivo xml y una carpeta de salida. El comando usa el mismo dll para deserializar el archivo xml en una colección de objetos de arrendamiento. Luego usa las descripciones legales en esos arrendamientos para encontrar el polígono de Sección apropiado, luego lo divide y subdivide recursivamente según sea necesario. Estos polígonos se escriben en un archivo de forma junto con los atributos que originalmente estaban en la hoja de cálculo de Excel.
No conozco una gramática estandarizada para estas descripciones legales, por lo que el custodio de Excel y yo trabajamos juntos para inventar una. (Si alguien sabe de uno, ¡intervenga!). Normalmente, la geocodificación se considera un proceso para generar ubicaciones de puntos. Este caso de uso ilustra una situación en la que la geocodificación produce polígonos. La interpolación juega un papel en ambas formas de geocodificación. Con los puntos de geocodificación lineal se interpolan a lo largo de una línea. Con las subsecciones de geocodificación basadas en PLSS, las subsecciones secundarias, etc., se encuentran interpolando a lo largo de los lados de los polígonos para crear líneas de corte. Encontrar las esquinas de un polígono puede ser complicado: un polígono a menudo tiene más de 4 vértices. Usando un origen en el centroide del polígono, encontré el vértice en cada cuadrante que está más alejado del origen.
Si se pudiera establecer una gramática estandarizada, algún lugar como BLM podría publicar un servicio de geoprocesamiento (GP) que convierta las descripciones legales en polígonos. Luego, otros usuarios podrían utilizar este servicio de GP para escribir aplicaciones web que, por ejemplo, permitan a los usuarios copiar y pegar una descripción legal en un cuadro de texto, presionar un botón y que aparezca un polígono en un mapa.