記事"MetaTrader5でDirectXを使用して3Dグラフィックスを作成する方法"についてのディスカッション

 

新しい記事 MetaTrader5でDirectXを使用して3Dグラフィックスを作成する方法 はパブリッシュされました:

3D グラフィックスは、隠れたパターンの視覚化を可能にし、膨大な量のデータを分析するための優れた手段です。 今回のタスクは MQL5 で直接解決できますが、DireсtX 関数は 3 次元オブジェクトの作成が可能です。 したがって、MetaTrader5で3Dゲームをすることも、複雑なプログラムを作成することさえ可能です。 シンプルな 3 次元図形を描画して、3D グラフィックスをしましょう。

オブジェクトの 3 次元モデルは、三角形の各頂点の座標を記述することによって作成でき、オブジェクトが移動したり、ビューワーの位置を変更したりしても、オブジェクトの各ポイントの座標をさらに計算できます。 このように、頂点、頂点を接続するエッジ、およびエッジによって形成される面を扱います。 三角形の位置がわかっている場合は、線形代数の法則を使用して面の法線を作成できます(法線はサーフェスに垂直なベクトルです)。 これより、面がどのように点灯し、そこから光がどのように反射するかを計算できます。


頂点、エッジ、面、法線を持つシンプルなオブジェクトの例。 法線は赤い矢印です。

モデル オブジェクトは、さまざまな方法で作成できます。 トポロジーは、ポリゴンが 3D メッシュをどのように形成するかを記述します。 トポロジが優れた場合、オブジェクトを記述するために最小限のポリゴン数を使用でき、オブジェクトの移動や回転がなります。

2 つのトポロジの球モデル

2 つのトポロジの球モデル。

作者: MetaQuotes

 
いやあ、Canvas3Dはいろいろな可能性を秘めていますね!ありがとう。この記事がなかったら、真っ暗な森でした。
 
2020.04.18 08:39:08.454 Step1_Create_Box(EURUSD,H1) キャンバス作成エラー: 5151
エラー5151の説明はヘルプにありません。
 

3次元グラフを実用化する。

メタクォート・チーム

 

表面の例が気に入りました。同じような短い例を3D棒グラフに与えることは可能ですか?


サーフェスの場合、m_data配列のポイントは視覚化中に滑らかに接続されます。これはダイアグラムではできません。例を示してください。

 
fxsaber:

3D棒グラフにも同じように短い例を示すことは可能ですか?

数十個のCDXBoxを作り、1つのエッジを固定し、ヒストグラムデータに応じて反対側のエッジの高さを移動させる方が簡単だと思います。

 
Igor Makanu:

CDXBoxを何十個か作って、片方のエッジを固定し、ヒストグラムのデータに応じて反対側のエッジの高さを移動させる方が簡単だと思います。

m_dataのサンプルが必要です。

 
fxsaber:

m_dataの準備ができた例が必要。

記事には

この記事では、DirectX関数を 使用して、視覚的なデータ分析のための単純な幾何学図形やアニメーション3Dグラフィックスを作成する方法を紹介しました。より複雑な例は、MetaTrader 5ターミナルのインストールフォルダーにあります:"Correlation Matrix 3D "と "Math 3D Morpher "エキスパート、そして "Remnant 3D "スクリプトです。


 
Rashid Umarov:

つまり、記事には次のようなことが書かれている。

ありがとうございます。

Error creating canvas: 5151
DXContextCreate はINVALID_HANDLE を 返します。
 
fxsaber:

ありがとうございます。

DXContextCreateはINVALID_HANDLEを 返します。

私のラップトップでもエラー5151が出ます。

ここで、RenatがDirectXhttps://www.mql5.com/ru/forum/327001/page10#comment_14021506 が動作しない理由を説明してくれました。

もしかしたら、あなたのビデオドライバもDirecrX 11と互換性がないかもしれません。

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

私のノートパソコンでもエラー5151が出ています。

RenatがDirectXが動作しない理由を説明してくれましたhttps://www.mql5.com/ru/forum/327001/page10#comment_14021506

あなたもDirecrX 11と互換性のあるビデオドライバを持っていないかもしれません。

ありがとう。ハードウェアをアップグレードする準備ができていないんだ。