6 votos

Determinación de la dirección de polígonos?

enter image description hereHay una manera en QGIS para averiguar la dirección de un polígono, si no hay valores dados? Lo que necesito saber es si un polígono es dirigido hacia el sur.

Quiero saber la dirección de una casa, porque de un solar de investigación. Quiero decir si el lado más largo de la casa se dirige a la calle y esta dirección es sur o al norte o al oeste o al este.

is there a way to say "draw a (simple) line from the centriod of a polygon to the longest side of the polygon?

4voto

cyberzed Puntos 1125
  1. Como no hay ningún identificador único en el edificio de la capa, crear. enter image description here
  2. Crear orientada al mínimo las cajas de contorno (OMBB) de las herramientas de geoprocesamiento. OMBB
  3. Combinación de ellos por ubicación (cruza) con los edificios. merge
  4. Cambiar el tipo de geometría de la capa combinados de polígonos líneas (herramienta: polígonos líneas). polygons to lines
  5. Las líneas de división en secciones individuales (herramienta: líneas de división).
  6. En la capa con líneas de división de uso "Seleccionar por la expresión" para elegir el menor de dos segmentos de la OMBB de cada edificio ("gid" es la identidad de cada edificio y es necesario)

$length < (minimum( $length , "gid" )+ 0.1)

La menor de las secciones de cada uno de los edificios tienen la misma o cerca de la misma longitud, por lo que dos de las secciones seleccionadas para cada edificio. Por alguna razón, no todas las líneas necesarias son seleccionados y tuve que seleccionar varias líneas manualmente. ¿Alguien sabe por qué? Como alternativa (o tal vez mejor) uso este:

$length != maximum($length, "gid")

  1. Crear una nueva capa de la seleccionada.
  2. En la calculadora de campo, crear un campo para la nueva capa con un identificador único ($id).
  3. Crear una capa de puntos con el centro de cada segmento (centro de gravedad? No estoy seguro sobre el nombre en inglés de esta herramienta).
  4. En este punto, los atributos se perdió de nuevo, por lo que necesita para combinar según la ubicación. Cambie el valor en la exactitud de campo si es necesario. enter image description here
  5. Crear líneas de fusionó capa de puntos (herramienta: punto de ruta) usar el campo "gid" como identidad de cada edificio.

enter image description here

  1. En el campo de la calculadora agregar el azimut nueva capa con líneas: degrees (azimuth(point_n($geometry,1),(point_n($geometry,2)))) enter image description here

Veo dos problemas en este método: 1. No se sabe que es la línea que va de norte a sur o de sur a norte. 2. Para algunas geometrías, el resultado puede ser diferente de lo esperado (véase más grande de la geometría de arriba).

Obras en QGIS 2.18 y más tarde. No funciona en los mayores.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X