Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Maping con Vertex+dx_lib32

Iniciado por crazz, 25 de Octubre de 2011, 09:40:21 PM

« anterior - próximo »

crazz

Hola todo el mundo:
Ocupo ayuda para hacer un mapa con relieves; usando vertex de dx_lib32  
Trabajo en visual basic .net  2008

Uso la siguiente funcion para orbitar una cordenada en un plano 2D

Citar
Public Function MATH_GetAngle(ByVal Xeje As Long, ByVal Yeje As Long, ByVal Xorbital As Long, ByVal Yorbital As Long) As Single
        X = (Xorbital - Xeje) * Cos(tb.Value * 0.1) - (Yorbital - Yeje) * Sin(tb.Value * 0.1) + Xeje
        Y = (Xorbital - Xeje) * Sin(tb.Value * 0.1) + (Yorbital - Yeje) * Cos(tb.Value * 0.1) + Yeje
    End Function

nesecito una formula mas para poder orbitar 3 dimensiones.

Manu343726

A ver si me he enterado... ¿quieres dibujar un escenario con relieve?
¿Algo como ésto?: http://imageshack.us/f/801/capturawc.png/

Si es así, no te recomiendo la fórmula que estás utilizando: Mucho seno y coseno. Ten en cuenta que las funciones trigonométricas tienen un coste computacional mucho mayor que las sumas o las multiplicaciones.
Te recomiendo el uso de matrices de transformación, ya que solo tendrás que calcular dicha matriz una vez y multiplicarla por cada uno de los puntos que quieras representar. Eso si tendrás que implementar tus propios algoritmos de algebra matricial, pero si te sale medianamente bien, el producto de matrices es rápido y barato.
Tienes una segunda opción: Copiar las componentes de la matriz de transformación de alguna web y implementar una función que las use. Por  la pereza que me dio en su momento, esa es la forma con la que rendericé esas imágenes.

Si me he liado y ese no es el tema, siento haber sido tan bocazas.
Suerte






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.