es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

WPF HelixToolkit Viewport3DX Límite de Vectores

Estoy intentando cargar datos de puntos en Viewport3DX.
Estoy cargando coordenadas que están en EPSG:7855. Cuando cargo los datos, el mapa está vacío, como si no hubiera pasado nada. Siento que estoy alcanzando algún tipo de límite de vector, ya que cuando intento cargar datos de prueba funciona bien.

public EffectsManager EffectsManager { get; }

public MapViewModel()
{
    this.EffectsManager = new DefaultEffectsManager();
}

private PointGeometry3D _pointGeometry;
public PointGeometry3D PointGeometry
{
    get
    {
        //return this._pointGeometry;
        var vc = new Vector3Collection();
        var id = new IntCollection();

        // Datos de prueba
        vc.Add(new Vector3(10, 19, 10));
        id.Add(0);
        vc.Add(new Vector3(19, 10, 10));
        id.Add(1);
        vc.Add(new Vector3(15, 15, 10));
        id.Add(2);

        // Datos reales (**problema aquí**)
        // vc.Add(new Vector3(693409, 6088877, 10));
        // id.Add(0);
        // vc.Add(new Vector3(693409, 6088606, 10));
        // id.Add(1);
        // vc.Add(new Vector3(694131, 6088877, 10));
        // id.Add(2);

        var g = new PointGeometry3D { Positions = vc, Indices = id };
        return g;
    }
}

Código XML

<hx:viewport3dx showcoordinatesystem="True" backgroundcolor="#FF88AACD" x:name="HelixView" zoomextentswhenloaded="True" effectsmanager="{Binding EffectsManager}">
    <hx:ambientlight3d color="#363636"></hx:ambientlight3d>
    <hx:pointgeometrymodel3d geometry="{Binding PointGeometry}" size="5 5" color="Bisque"></hx:pointgeometrymodel3d>
</hx:viewport3dx>

El problema parece ser solo con helixtoolkit.sharpdx.core.wpf, ya que helixtoolkit.core.wpf con objetos Point3D muestran los datos correctamente. Cambié a sharpdx porque leí que el rendimiento es mejor, ya que utiliza más GPU.

Resultado real
Resultado real

Resultado con datos de prueba
Resultado con datos de prueba

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Según el código proporcionado, parece que el problema podría estar relacionado con el tamaño de las coordenadas que se cargan en el objeto PointGeometry3D. Los datos de prueba parecen ser mucho más pequeños en comparación con los datos reales, y esto podría estar causando que el mapa esté vacío.

    Una posible solución es intentar reducir la escala de las coordenadas de los datos reales antes de añadirlas a Vector3Collection. Esto puede ayudar a evitar alcanzar los límites de vector que podrían estar causando el problema. Otra posible solución es verificar si el sistema de coordenadas EPSG:7855 se está manejando correctamente por la aplicación, y si es necesario aplicar alguna transformación antes de cargar los datos en Viewport3DX.

    También podría ser útil explorar otros métodos de depuración, como verificar cualquier mensaje de error o usar puntos de interrupción para localizar exactamente dónde ocurre el problema.

Comments are closed.