
GeneralPath con grandes numeros tipo Double (Java)
Publicado por carlos (1 intervención) el 25/07/2016 19:15:38
Hola a todos,
Estoy deserrollando una aplicacion que requiere de entorno de diseño grafico para Topografia.
Para el diseño de carreteras y Ferrovias en necesario dibujar lineas, curvas y clotoides (curvas de Transicion).
Las rectas y curvas no he tenido problemas de implementar el diseño.
Al contrario con las curvas de transicion uso formulas ya conocidas para el calculo de puntos en ese intervalo sin ningun problema.
El problema comienza cuando intento dibujar el path en Java con un List<point2D.double> los resultados son inesperados.
1.- Si uso coordenadas con numeros mayores tipo UTM el dibujo del Path sale con quiebras. (Como si no entendiese los decimales).

2.- Si uso coordenadas con numeros menores (Osea trasladando los puntos a coordenadas menores) el dibujo se muestra bien, tal y como se esperaba.

He revisado el listado de puntos y esta bien (Incluso lo he comparado e importado en Autocad). El problema solo ocurre quando son coordenadas de valores altos.
En principio pense que los valores de coordenadas podian estar fuera del rango de valores entre Double.MIN_VALUE y Double.MAX_VALUE pero he comprobado los valores y se encuentran en el intervalo.
Tambien he comprobado si estaba interferiendo la clase BasicStroke que regula el tipo de linea, pero tambien no es, pues estoy usando la misma clase basica sin ningun detalle. "new BasicStroke(0)"
Alguien me puede ayudar en esta cuestión.
Gracias a todos.
Estoy deserrollando una aplicacion que requiere de entorno de diseño grafico para Topografia.
Para el diseño de carreteras y Ferrovias en necesario dibujar lineas, curvas y clotoides (curvas de Transicion).
Las rectas y curvas no he tenido problemas de implementar el diseño.
Al contrario con las curvas de transicion uso formulas ya conocidas para el calculo de puntos en ese intervalo sin ningun problema.
El problema comienza cuando intento dibujar el path en Java con un List<point2D.double> los resultados son inesperados.
1.- Si uso coordenadas con numeros mayores tipo UTM el dibujo del Path sale con quiebras. (Como si no entendiese los decimales).

2.- Si uso coordenadas con numeros menores (Osea trasladando los puntos a coordenadas menores) el dibujo se muestra bien, tal y como se esperaba.

He revisado el listado de puntos y esta bien (Incluso lo he comparado e importado en Autocad). El problema solo ocurre quando son coordenadas de valores altos.
En principio pense que los valores de coordenadas podian estar fuera del rango de valores entre Double.MIN_VALUE y Double.MAX_VALUE pero he comprobado los valores y se encuentran en el intervalo.
Tambien he comprobado si estaba interferiendo la clase BasicStroke que regula el tipo de linea, pero tambien no es, pues estoy usando la misma clase basica sin ningun detalle. "new BasicStroke(0)"
Alguien me puede ayudar en esta cuestión.
Gracias a todos.
Valora esta pregunta


0