Tuval harika! - sayfa 93

 
Nikolai Semko #:

Andrei, sadece bir resim mi elde etmek istiyorsun yoksa MQL5'in bir resmini mi elde etmek istiyorsun?
Kolayca görselleştirebilirim, ancak görselleştirme için daha gelişmiş araçlar var.
Örneğin, formülünüz bu kaynakta göründüğü gibi:
https://www.desmos.com/3d/887356da26.

oops, oradaki formülde bir hata yapmışım
işte doğru formül:
https://www.desmos.com/3d/b06327c043

 
Andrey Dik #:
Nasıl yapılacağından emin değilim, ancak yüzey formülü şu şekildedir:

Resim MQL5'te de benzerdir

farklı ölçek:


noktaların sıklığı ve boyutu giriş parametrelerinde değiştirilebilir

Nokta matrisi boyutu 500x500 (250 000 nokta) olsa bile hiç gecikme yaşamıyorum.

Kişisel görüşüm, yüzeyleri çizgiler ve üçgenler yerine noktalarla çizmenin avantajları olduğu yönünde. Şeffaflık ve daha iyi performans gibi. Ayrıca yüzeyler yerine bulutlar da oluşturabilirsiniz.

Dosyalar:
iCanvas_CB.mqh  71 kb
SurfaceDik.mq5  14 kb
 

bazı koordinatlara bağlı olarak bir ısı haritası ile çizilebilir.


Dosyalar:
SurfaceDik.mq5  15 kb
 
Andrey Dik #:

İşte bir soru, bir test fonksiyonunu optimize ederken bir yüzey üzerinde noktalar çizmem gerekiyor, bunu nasıl yapacağımı bulamıyorum.

Şöyle bir şey olmalı:

Yüzeye çizim yapma yeteneği ile ilgili soruya gelince, bu da sorun değil.
5 satır kod ekleyin ve bitti:


Dosyalar:
SurfaceDik.mq5  15 kb
 
Harika!!! Örneklerle ilgili yardımınız için teşekkürler!
 
Nikolai Semko #:

Yüzey üzerinde çizim yapabilme konusuna gelince, bu konuda da bir sorun yok.
5 satır kod ekleyin ve işiniz bitsin:

"Çizmek" - farklı, programlı olarak yüzey üzerinde noktalar oluşturmayı kastettim, noktaların yüzey üzerinde "çalışması" gerekecek.

Ancak, bu elle çizme yeteneği de harika bir özelliktir.

 
Andrey Dik #:

"Çiz" - Farklı, programlı olarak yüzey üzerinde noktaların çizilmesini kastetmiştim, noktaların yüzey üzerinde "çalışması" gerekir.

3D'deki yakınsama yollarını görmek ilginç olacaktır.

 
fxsaber #:

3D'deki yakınsama yollarını görmek ilginç olurdu.

Evet, bunun için.
 
fxsaber #:

Yakınsama yollarını 3D üzerinde görmek ilginç olurdu.

Evet, Brownian hareketi büyüleyici ;)
 
Andrey Dik #:

"Çizmek" - farklı, programlı olarak yüzey üzerinde noktalar çizmek demek istedim, noktaların yüzey üzerinde "çalışması" gerekir.

Ancak, bu elle çizme yeteneği de harika bir özelliktir.

Aynı boyutta bir bool dizisi olduğunda da aynı şekilde yapabilirsiniz. Veya, çok fazla çalışan nokta yoksa, indeksi y*side_size+x olan 3d noktaların ana dizisinin indekslerinden bir dizi (çalışan nokta sayısına eşit boyutta) oluşturun
Neden: