Gire la línea de marcador del generador de geometría según la proyección del mapa QGIS


8

Me gustaría rotar la línea de marcador hecha a partir de la función del generador de geometría: la cosa es que, mediante el generador de geometría, creo una línea a través de make_line y los puntos son los valores calculados (basados ​​en valores en los campos de la tabla de atributos) en Asia Proyección cónica conforme de Lambert EPSG: 102027).

rectángulo inicial en EPSG: 102027

La cadena de línea recibida debe ser rectangular (paralela al lienzo del mapa), pero al cambiar la proyección del mapa en el lienzo del mapa, en consecuencia, estos puntos forman un rectángulo girado (aunque la etiqueta es paralela)

rectángulo recibido en proyección personalizada

¿Cómo puedo rotar (o tal vez coordenadas de punto de transformación sobre la marcha en la tabla de atributos en proyecciones personalizadas) mi rectángulo para que sea paralelo al lienzo del mapa?

Mi proyección: + proj = lcc + lat_1 = 57 + lat_2 = 63 + lat_0 = 0 + lon_0 = 133 + x_0 = 0 + y_0 = 0 + ellps = intl + unidades = m + no_defs

Mi estilo de generador de geometría: estilo

Traté de transformar mi geometría (construida con un generador de geometría) a través de la función de transformación (transform (geom, source_auth_id, dest_auth_id)) pero, sin embargo, se equivoca:

geometría transformada y etiquetas

En el dibujo de fondo no encontré ninguna funcionalidad para dibujar bordes de formas personalizadas, solo líneas continuas, pero me gustaría obtener una línea con marcadores de puntos

solo línea continua


¿Podría hacer un archivo de forma mínimo para reproducir esto y preparar los atributos para que la expresión solo se centre en el desafío geométrico? Suena como un buen rompecabezas!
bugmenot123

¡Si! Aquí está cloud.mail.ru/public/JAeg/L97RSjGQs Puede descargar shp y qlr, las fórmulas de proyección se encuentran en la publicación anterior.
Jane

Utilicé en el estilo del generador de geometría mi función personalizada para ajustar el texto en el cuadro a la cadena lineal, por lo que en el archivo de ejemplo (en el enlace) eliminé mi función porque no debes crear mi función en el editor de funciones (no tener miedo de que el rectángulo sea un poco un poco más grande que en las pantallas de impresión de arriba). De todos modos, al cambiar la proyección del mapa, el rectángulo no es paralelo al lienzo del mapa y al texto en el cuadro
Jane

¡Gracias! Sería genial hacerlo aún más general. Por lo que entiendo, está tratando de hacer un cuadro a partir de puntos donde los puntos se crean a partir de valores de atributo. Tener ese trabajo después de la transformación requeriría que también calcules las compensaciones para los puntos dependiendo de la transformación. Creo que esto es demasiado complicado y probablemente conduce a la locura. ¿Por qué no simplemente usar "Dibujar fondo" en el etiquetado?
bugmenot123

Sí, eso es lo que realmente quiero. En el fondo de dibujo no hay funcionalidad para hacer bordes personalizados para las formas, solo una línea sólida, pero quiero obtener una línea con marcadores de puntos. Agrego más información al respecto en mi descripción de la pregunta
Jane

Respuestas:


1

No es una respuesta al título de la pregunta, pero tal vez sea una solución para alcanzar el resultado deseado. ¿Has intentado generar un gráfico SVG de un rectángulo con un borde punteado y usarlo como fondo de la etiqueta? No se escalará independientemente en los ejes X e Y, y la cantidad de puntos tendrá que estar predefinida, pero debe evitar cualquier problema causado por la reproyección.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.