2 votos

Rotación de vértices de geometrías en QGIS

Tengo un gran número de geometrías de área, y geometrías de líneas y puntos que tienen una relación geométrica con el área. Eso significa que la distancia y la orientación de las líneas/puntos a las áreas son importantes.

enter image description here

Ahora tengo una nueva versión de las zonas y descubro que su posición y rotación han cambiado. El resultado es que mis líneas/puntos no se ajustan a las (nuevas) áreas. Las distancias y los ángulos son incorrectos.

enter image description here enter image description here

Las áreas se transformaron de forma muy individual, por lo que no puedo transformar mis características de línea/punto con una sola transformación. Tampoco puedo usar las funciones simples de mover y rotar de QGIS porque las características de línea están a menudo relacionadas con más de un área, si la moviera para corregir la distancia a un área destruiría su relación geométrica con otras áreas. Puedo utilizar la herramienta de vértices, que es muy buena. Selecciono todos los vértices de las líneas que están relacionadas con un área

enter image description here

y moverlo desde la esquina de la zona antigua a la esquina de la zona nueva.

enter image description here

De este modo, procedería para cada área. Pero el problema es que la herramienta de vértices sólo mueve mis puntos y vértices. La rotación necesaria no es posible. Puedes tomar como ejemplo la línea que empieza en la esquina del área antigua. Tiene un ángulo de 90 grados con el borde de la zona antigua. Después de la transformación debe tener un ángulo de 90 grados con el borde de la nueva área. Los vértices seleccionados deben ser rotados alrededor de la esquina del área con un ángulo (en mi caso calculado como la diferencia entre los ángulos absolutos de los bordes de las áreas nuevas/viejas).

enter image description here enter image description here

Mi pregunta es: ¿Alguien tiene alguna idea de cómo puedo resolver este problema? ¿Hay un plugin para ello o tiene algunos fragmentos de código para mí, lo que me lleva en el camino para crear una función propia plugin o puede pimp la herramienta de vértice?

0voto

chhh Puntos 1154

Supongo que podría conseguirlo utilizando el generador de geometría. Sin embargo, no entendí del todo lo que quieres hacer exactamente.

Pero por lo que veo quieres hacer una línea que:

a) comienza en un borde de la nueva área que

b) tiene un ángulo de 90 grados con una de las líneas del nuevo rectángulo de área y que

c) va a la geometría de la línea.

Comience con su nueva área y utilice make_line , utilizando una de las aristas de su rectángulo. Para el segundo punto, utiliza la función project y combinarlo con main_angle (para calcular un ángulo de 90 grados para la línea) y intersection (para obtener el punto donde su línea de conexión cruza la geometría de la línea dada).

Consulte la explicación de estas funciones en el editor de expresiones para obtener más detalles. Para que la geometría sea permanente, utilice la función geometry by expression de la caja de herramientas de procesamiento.

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