Discusión sobre el artículo "Cómo crear gráficos 3D en DirectX en MetaTrader 5"

 

Artículo publicado Cómo crear gráficos 3D en DirectX en MetaTrader 5:

Los gráficos en 3D resultan de gran ayuda a la hora de analizar grandes volúmenes de datos, ya que permiten visualizar regularidades ocultas. Estas tareas también se pueden resolver directamente en MQL5: las funciones de trabajo con DireсtX permiten MetaTrader 5. Comience el estudio dibujando figuras de volumen sencillas.

Al principio, cuando las computadoras y las tarjetas gráficas no eran tan potentes como ahora, cada polígono se dividía en triángulos, dado que, con la ayuda de un triángulo, se puede describir de forma unívoca la posición de una pequeña área de la superficie y calcular sobre ella parámetros tan necesarios como la iluminación y el reflejo de la luz incidente. Un conjunto de varios de estos pequeños triángulos permite crear una imagen realista en tres dimensiones de un objeto. Aquí y en lo sucesivo, triángulo y polígono van a actuar como sinónimos, ya que representar un triángulo resulta bastante más sencillo que representar un polígono con N vértices.


Cubo compuesto por triángulos.

De esta forma, para crear un modelo tridimensional de un objeto, basta con describir las coordenadas de cada vértice del triángulo, para después calcular las coordenadas de cada punto del objeto, incluso si el propio objeto se desplaza en el espacio o cambia la posición del observador. Los picos del triángulo se llaman vértices (vertex), los segmentos que los unen se llaman bordes (edge), y la superficie confinada entre los segmentos se llama cara (face). Conociendo la ubicación de un triángulo en el espacio, podremos construir el vector normal (el vector que parte desde la superficie y es perpendicular a la misma) con respecto al mismo según las leyes del álgebra lineal, y calcular de esta forma cómo la luz que incide en la cara procedente de una fuente coloreará la superficie y se reflejará en ella.


Ejemplos de objetos sencillos con vértices, bordes, caras y vectores normales. El vector normal es la flecha de color rojo.

Autor: MetaQuotes

 
Vaya, Canvas3D tiene muchas posibilidades. Gracias. Sin este artículo sería un bosque oscuro.
 
2020.04.18 08:39:08.454 Step1_Create_Box(EURUSD,H1) Error creando lienzo: 5151
la descripción del error 5151 no está en la ayuda
 

dar gráficos tridimensionales como aplicación práctica.

Equipo Metaquotes.

 

Me gusta el ejemplo de la superficie, gracias. ¿Es posible dar el mismo ejemplo breve para un gráfico de barras 3D?


En el caso de una superficie, los puntos de la matriz m_data se conectan suavemente durante la visualización. Esto no se puede hacer para un diagrama. Por favor, muestre un ejemplo.

 
fxsaber:

¿Es posible dar el mismo ejemplo breve para un gráfico de barras 3D?

Creo que es más fácil crear un par de docenas de CDXBoxes y fijar un borde y mover el borde opuesto en altura dependiendo de los datos del histograma.

 
Igor Makanu:

Creo que es más fácil crear un par de docenas de CDXBoxes y fijar un borde y mover el borde opuesto en altura dependiendo de los datos del histograma

Necesitas un ejemplo listo para m_data.

 
fxsaber:

Necesito un ejemplo listo para m_data.

En el artículo hay

En este artículo hemos mostrado cómo las funciones DirectX permiten crear figuras geométricas sencillas y gráficos 3D animados para el análisis visual de datos. En la carpeta de instalación del terminal MetaTrader 5 encontrará ejemplos más complejos: los expertos "Correlation Matrix 3D" y "Math 3D Morpher", así como el script "Remnant 3D".


 
Rashid Umarov:

Quiero decir, hay un artículo en el artículo

Gracias, pero por desgracia.

Error creating canvas: 5151
DXContextCreate devuelve INVALID_HANDLE.
 
fxsaber:

Gracias, pero desafortunadamente

DXContextCreate devuelve INVALID_HANDLE.

En mi portátil también me da el error 5151.

Aquí Renat explicó por qué DirectX https://www.mql5.com/ru/forum/327001/page10#comment_14021506 no me funciona.

quizás tu driver de video tampoco es compatible con DirecrX 11.

Новые графические возможности в MQL5 с прямым доступом к DirectX 11
Новые графические возможности в MQL5 с прямым доступом к DirectX 11
  • 2019.11.26
  • www.mql5.com
27 ноября 2019 года мы выпустим релиз с новыми графическими возможностями для построения сложных 3D визуализаций...
 
Igor Makanu:

También me aparece el error 5151 en mi portátil.

aquí Renat explicó por qué DirectX no funcionará para mí https://www.mql5.com/ru/forum/327001/page10#comment_14021506

Puede que tampoco tengas un driver de video compatible con DirecrX 11.

Gracias, no estoy listo para actualizar mi hardware.