キャンバスがカッコいい! - ページ 2 123456789...93 新しいコメント Nikolai Semko 2018.02.16 07:59 #11 fxsaber:CCanvasは、ResourceCreateのラッパーです。ですから、例えば、配列の形で20枚の画像が用意されているとします。キャンバスで変更する場合は、高価なArrayCopy+Updateを行う必要があります。また、CCanvasを使わずに行う場合は、ResourceCreate+ChartRerdrawのみが必要です。kodobaseに動的描画の仕事をいくつか投稿しています。そこでは、CCanvasがダメなのは一目瞭然でした。Resourceのラッピングというのは納得です。定義を決める必要がある。Canvas は、私の理解では、CCanvas クラスではなく、矩形のグラフィック・リソース、つまり点の配列です。CCanvas クラスに必要なのは、作成、更新、削除のためのいくつかの関数です。かなりインテリジェントに実装されていますね。ピクセル(スムージングされていない)実装のため、他の機能は使い物にならないと見ています。また、ビットマップではなく、ベクターグラフィックスとしてのキャンバス、つまり、写真をダウンロードするのではなく、自分で画像を形成する場合に興味があります。そのため、20枚のレディメイドの画像は実用に耐えないし、MT5をビデオプレーヤーとして使うこともできない。ベクターグラフィックスの目的は、30ミリ秒以下(より良いのは10ミリ秒以下)で画像をレンダリングすることです。どうせ人間の目には1秒間に30回以上画像が変化するようには見えないので。基本的にMT5のkanvasはこのタスクによく対処しています。確かに、あの色の渦巻きは限界(つまり、私の平均的なノートパソコンでは1フレームが約30ミリ秒で形成される)ですが、MT4ではすでに遅くなっていますね。 現在、時間の許す限りCCanvasProクラスを作成中で、その中でもう少し良いものを作りたいと思っています。 これまでの円(シャドウで滑らかにしたもの)は以下のとおりです。すみません、まだコードを開いていないのです。空き容量が不足しているため。 これもスクリプトです。 ファイル: TestSpeedCanv.ex5 40 kb khorosh 2018.02.16 08:04 #12 Evgeniy Zhdan: レインボーチャートがかっこいいまた、音楽に合わせてキャンドルを踊らせたり、キャンドルの間をねじったりしたいですね利益が上がるかどうか)踊るたびにボーナス、なら参加します(^^))) Rashid Umarov 2018.02.16 08:30 #13 Nikolai Semko:もちろん効果はありますが、ひどいブレーキングが発生します。 若干の減速はありますが、ひどいブレーキングはありません。少なくともビジュアルは何も変わっていません。 Nikolai Semko 2018.02.16 08:40 #14 Rashid Umarov:若干の減速はありますが、ひどいブレーキングはありません。少なくともビジュアルは何も変わっていません。 もちろん、ちょっと厳しいことを言いました。それでも全体の性能からすると10%程度は遅くなります。 Nikolai Semko 2018.02.16 08:57 #15 Rashid Umarov:若干の減速はありますが、ひどいブレーキングはありません。少なくともビジュアルは何も変わっていません。プロファイリング上ではなく、GetMicrosecondCountで 確認。 1000フレームで3-4%のスローダウンが判明しました。原理的にはそうだが、あまり危機感がない。 while(!IsStopped()) { static ulong t0=GetMicrosecondCount(); int pos=int(i%size); if(pos==0) { C.Update(); //Sleep(30); X1= Width-(sin((double)j/100)*(double)Width); Y1= Height-(cos((double)j/140)*(double)Height); X2= Width+(cos((double)j/80)*(double)Width); Y2= Height+(sin((double)j/20)*(double)Height); if (j==101000) Print(GetMicrosecondCount()-t0); j++; } int X=pos%Width; int Y=int(pos/Width); double d= ((X1-X)*(X1-X)+(Y1-Y)*(Y1-Y))/(((X1-X)*(X1-X)+(Y1-Y)*(Y1-Y))+((X2-X)*(X2-X)+(Y2-Y)*(Y2-Y))); //C.m_pixels[pos]=XRGB(h[int(d*11520)],h[int(d*17920)],h[int(d*6400)]); C.PixelSet(X,Y,XRGB(h[int(d*11520)],h[int(d*17920)],h[int(d*6400)])); i++; } Alexey Volchanskiy 2018.02.16 09:18 #16 Nikolai Semko:CCanvas クラスを使ったカスタム・グラフィックスの機能を短いコードで示すという課題を自分に課した。 その中で出てきたのがこちら。 このスクリプトは、MQL5とMQL4の両方で動作します。しかし、MT5ではもっと速いです。 各フレームはユニークであり、繰り返さない、つまりスクリプトは循環しない。 コンパイル前にCanvas.mqhの配列m_pixels[]をprotected:からpublicに移動しておく必要があります。 30分ほど見て、離陸するのを待ちました )) Nikolai Semko 2018.02.16 09:19 #17 Alexey Volchanskiy:30分ほど見て、離陸するのを待った )):)) Georgiy Merts 2018.02.16 10:29 #18 正直なところ、何が言いたいのか理解できない。 そうですね、美しく、色鮮やかで、玉虫色で......。しかし、専門家の仕事にどのような影響を与えるのでしょうか。 ゲームを書くためにここにいるのならわかるのですが......そこでそんな機会が、ああ、どんなに需要があるのだろうと......。しかし、ここでは... 私の考えでは、不要なアクションを排除し、結果として生じるコードがシステムにできるだけ負荷をかけないようにすることが、逆に必要だと思います(クラウドにお金がかかるでしょう)。そして、メンテナンスもしやすいこと。 お客さまに "感動 "を与えることができなければ...。確かに、きれいにデザインされたアウトプットをすれば、フリーランスでより多くのお金を稼ぐことができますね...。 transcendreamer 2018.02.16 11:50 #19 とてもクールです。ありがとうございます。これで、文字通り、トレードがもっと明るくなりますね。 Alexey Volchanskiy 2018.02.16 12:58 #20 George Merts:正直なところ、何が言いたいのか理解できない。 そうですね、美しく、色鮮やかで、玉虫色で......。しかし、専門家の仕事にどのような影響を与えるのでしょうか。 ゲームを書くためにここにいるのならわかるのですが......そこでそんな機会が、ああ、どんなに需要があるのだろうと......。しかし、ここでは... 私の考えでは、不要なアクションを排除し、結果として生じるコードがシステムにできるだけ負荷をかけないようにすることが、逆に必要だと思います(クラウドにお金がかかるでしょう)。そして、メンテナンスもしやすいこと。お客さまに "感動 "を与えることができなければ...。確かに、きれいにデザインされたアウトプットは、フリーランスでより多くのお金を稼ぐことができますね...。 指標に便利かもしれませんね。このCanvasには、さまざまな矢印のインジケーターが 描かれていて、記事もありました。 123456789...93 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
CCanvasは、ResourceCreateのラッパーです。ですから、例えば、配列の形で20枚の画像が用意されているとします。キャンバスで変更する場合は、高価なArrayCopy+Updateを行う必要があります。
また、CCanvasを使わずに行う場合は、ResourceCreate+ChartRerdrawのみが必要です。kodobaseに動的描画の仕事をいくつか投稿しています。そこでは、CCanvasがダメなのは一目瞭然でした。
Resourceのラッピングというのは納得です。定義を決める必要がある。Canvas は、私の理解では、CCanvas クラスではなく、矩形のグラフィック・リソース、つまり点の配列です。CCanvas クラスに必要なのは、作成、更新、削除のためのいくつかの関数です。かなりインテリジェントに実装されていますね。ピクセル(スムージングされていない)実装のため、他の機能は使い物にならないと見ています。また、ビットマップではなく、ベクターグラフィックスとしてのキャンバス、つまり、写真をダウンロードするのではなく、自分で画像を形成する場合に興味があります。そのため、20枚のレディメイドの画像は実用に耐えないし、MT5をビデオプレーヤーとして使うこともできない。ベクターグラフィックスの目的は、30ミリ秒以下(より良いのは10ミリ秒以下)で画像をレンダリングすることです。どうせ人間の目には1秒間に30回以上画像が変化するようには見えないので。基本的にMT5のkanvasはこのタスクによく対処しています。確かに、あの色の渦巻きは限界(つまり、私の平均的なノートパソコンでは1フレームが約30ミリ秒で形成される)ですが、MT4ではすでに遅くなっていますね。
現在、時間の許す限りCCanvasProクラスを作成中で、その中でもう少し良いものを作りたいと思っています。
これまでの円(シャドウで滑らかにしたもの)は以下のとおりです。すみません、まだコードを開いていないのです。空き容量が不足しているため。
これもスクリプトです。
レインボーチャートがかっこいいまた、音楽に合わせてキャンドルを踊らせたり、キャンドルの間をねじったりしたいですね
利益が上がるかどうか)踊るたびにボーナス、なら参加します(^^)))
もちろん効果はありますが、ひどいブレーキングが発生します。
若干の減速はありますが、ひどいブレーキングはありません。少なくともビジュアルは何も変わっていません。
若干の減速はありますが、ひどいブレーキングはありません。少なくともビジュアルは何も変わっていません。
もちろん、ちょっと厳しいことを言いました。それでも全体の性能からすると10%程度は遅くなります。
若干の減速はありますが、ひどいブレーキングはありません。少なくともビジュアルは何も変わっていません。
プロファイリング上ではなく、GetMicrosecondCountで 確認。
1000フレームで3-4%のスローダウンが判明しました。原理的にはそうだが、あまり危機感がない。
CCanvas クラスを使ったカスタム・グラフィックスの機能を短いコードで示すという課題を自分に課した。
その中で出てきたのがこちら。
このスクリプトは、MQL5とMQL4の両方で動作します。しかし、MT5ではもっと速いです。
各フレームはユニークであり、繰り返さない、つまりスクリプトは循環しない。
コンパイル前にCanvas.mqhの配列m_pixels[]をprotected:からpublicに移動しておく必要があります。
30分ほど見て、離陸するのを待ちました ))
30分ほど見て、離陸するのを待った ))
正直なところ、何が言いたいのか理解できない。
そうですね、美しく、色鮮やかで、玉虫色で......。しかし、専門家の仕事にどのような影響を与えるのでしょうか。
ゲームを書くためにここにいるのならわかるのですが......そこでそんな機会が、ああ、どんなに需要があるのだろうと......。しかし、ここでは...
私の考えでは、不要なアクションを排除し、結果として生じるコードがシステムにできるだけ負荷をかけないようにすることが、逆に必要だと思います(クラウドにお金がかかるでしょう)。そして、メンテナンスもしやすいこと。
お客さまに "感動 "を与えることができなければ...。確かに、きれいにデザインされたアウトプットをすれば、フリーランスでより多くのお金を稼ぐことができますね...。
正直なところ、何が言いたいのか理解できない。
そうですね、美しく、色鮮やかで、玉虫色で......。しかし、専門家の仕事にどのような影響を与えるのでしょうか。
ゲームを書くためにここにいるのならわかるのですが......そこでそんな機会が、ああ、どんなに需要があるのだろうと......。しかし、ここでは...
私の考えでは、不要なアクションを排除し、結果として生じるコードがシステムにできるだけ負荷をかけないようにすることが、逆に必要だと思います(クラウドにお金がかかるでしょう)。そして、メンテナンスもしやすいこと。
お客さまに "感動 "を与えることができなければ...。確かに、きれいにデザインされたアウトプットは、フリーランスでより多くのお金を稼ぐことができますね...。
指標に便利かもしれませんね。このCanvasには、さまざまな矢印のインジケーターが 描かれていて、記事もありました。