キャンバスがカッコいい! - ページ 31

 
Nikolai Semko:

アンドレイさん、ありがとうございます。)

アンドリュー、「動画での保存は可能か」という質問に対して、私の論理的根拠を説明します。
質問に答える前に、誰が質問しているのか、どの程度のレベルなのかを、可能な限り理解するように努めています。それは、第一に、自分の答えをより正しく、わかりやすく組み立てるため、第二に、非常に不明瞭な質問の意味を理解し、質問に質問で答えないようにするためです。
明らかに - あなたのプロフィールを見てみました。
  • そこで162と言う評価を見て、掲示板歴が2~5ヶ月なら、初心者が質問しているのだと理解できたと思います。
そして、「今のところ、MT5には動画保存は実装されていませんが、ご希望であれば可能です」と簡単にお答えしたはずです。
  • しかし、フォーラムであなたの名前が頻繁に出てきたことを思い出し、あなたのプロフィールから、相手はフォーラム歴10年以上のベテランプログラマーで、投稿数が私の5倍以上あり、少なくとも1記事、完成した仕事5件、QBコード3件を武器にし、評価は私より2倍以上高いことが分かりました。
そこで、あなたはMT5の機能に非常に詳しく、ドキュメントにも詳しいと思ったので、あなたの質問は動画を保存する機能の可能性についてであり、Canvasの周辺をなんとなく知っている私の意見に興味があるのだと結論づけました。
だから、潜在能力という形でお答えするようになったんです。
  • それとも、「あなたの箒は飛ぶことができる」と、他人をからかうのが好きな、ただのお利口さんなのかもしれません。

でも、私はバンカラな人たちのことはあまり気にしていません。彼らは原則として、自分はとても頭が良いと思っているけれど、実はとても頭が良くて不器用な人たちです。 通常は、心理的な合気道のトリックが必要なだけで、大慌てで倒れてしまいます。


ZS そして、月に関しては、NOという答えに、思わず笑みがこぼれました。これを知れば、あなたの正解がわかる。このような質問に対する私の「間違った」答えは、質問する人によってもまた違ってくるでしょう。



あなたはたくさん、非常に長い時間哲学することができますが、質問の意味は表面上にあり、すぐに、明確に、一義的にあったのです。そして、画面からのビデオ録画について何か言いたいというその質問に対して......。は何かというと))レベルの憶測が好きな人はMT5のドキュメントはどうなっているのですか?

 
Dmitry Fedoseev:

そして、100年前、ここでゾロがキャンバスを通してアニメーションのGIFを再生するデモを行いましたよね。よくわからないループビデオではなく、シンプルなアニメーションGIFです。

それは知らなかった。gifの形式を把握し、それを分解してフレームを形成する必要があるのです。あまり難しいことではないと思います。でも、それならスタンダードベンドもフォーマットを理解すれば簡単に録音できます。
 
Nikolai Semko:
してないんです。gifのフォーマットを把握し、それを分解してフレームを形成する必要があるのです。あまり難しいことではないと思います。でも、それならスタンダードベンドもフォーマットを理解すれば簡単に録音できます。

無圧縮ならaviと同じで簡単です。どちらも難しいことではなく、方法を知っていればいいのですが、今のところ誰も知らないのです。GIFの方が解る確率が高いと思います。

この アドバイスに注意したほうがいい。 なぜなら、非圧縮の動画を作る方法がわかったとしても、ファイルサイズが巨大になりすぎて、なかなかうまくいかないからです。

 
Nikolai Semko:
なぜそう思うのですか?

回答から判断すると

 
動画というと、圧縮するためのアルゴリズム、つまりコーデックを思い浮かべますが、それ以外は子供の遊びのようなものです
 

もう一つの選択肢は、おそらく最も興味深く、有用なものです。Win APIです。AVIFileOpen()、AVIFileCreateStream()など。

 
Nikolai Semko:

ダイナミックタイムフレームによる最初の実験。

EURUSDは、すべての歴史がダイナミクスに。

.

フラクタルが顕著に現れています。

規矩準縄

スラットの下で、ウィンドウとスケールを選択します。


 
Nikolai Semko:

ありがとう、アンドリュー :)

アンドリュー、「動画での保存は可能か」という質問に対して、私の論理的根拠を説明します。
質問に答える前に、誰が質問しているのか、どの程度のレベルなのかを、可能な限り理解するように努めています。それは、第一に、自分の答えをより正しく、わかりやすく組み立てるため、第二に、非常に曖昧な質問の意味を理解し、質問に質問で返さないようにするためです。
明らかに - あなたのプロフィールを見てみました。
  • そこで162と言う評価を見て、掲示板歴が2~5ヶ月なら、初心者が質問しているのだと理解できたと思います。
そして、「今のところ、MT5には動画保存は実装されていませんが、ご希望であれば可能です」と簡単にお答えしたはずです。
  • しかし、フォーラムであなたの名前が頻繁に出てきたことを思い出し、あなたのプロフィールから、相手はフォーラム歴10年以上のベテランプログラマーで、投稿数が私の5倍以上あり、少なくとも1記事、完成した仕事5件、QBコード3件を武器にし、評価は私より2倍以上高いことが分かりました。
そこで、あなたはMT5の機能に非常に詳しく、ドキュメントにも詳しいと思ったので、あなたの質問は動画を保存する機能の可能性についてであり、Canvasの周辺をなんとなく知っている私の意見に興味があるのだと結論付けました。
だから、潜在能力という形でお答えするようになったんです。
  • それとも、「お前の箒は飛ぶぞ」などと、他人をからかうのが好きな、ただのお利口さんなのか。

というのも、彼らは自分ではとても賢いと思っているが、実はとても知性がなく不器用で、それに対して、ちょっとした心理的合気道のトリックで、全体的に笑いに包まれて倒れてしまうというのが原則だからだ。


ZS そして、月に関しては、NOという答えに、思わず笑みがこぼれました。これを知れば、あなたの正解がわかる。このような質問に対する私の「間違った」答えは、質問する人によってもまた違ってくるでしょう。



 
Nikolai Semko:

...
フレームはどのように組み立てるのですか?
MEからコードをキャプチャする方法がよくわからない。
スクリーンショットだけでも、とにかくよくできていますね、詰まっているのがわかりますから。
あなたの作品は注目に値します。

ZS このスレッドは私が作ったものですが、歴史的に見ても、キャンバスは私の趣味というか、はけ口のようなものなので、どちらかというと、このスレッドが続いているのだと思います。
でも、ここでは自分がボスであるとか、何かプライベートな領域であるという感覚はないんです。扉は開いている。 どなたでも歓迎します。どなたでも歓迎します。 そして、荒らしも、時にはドライブをさせてくれるからです。:)

ニコラスさん、ありがとうございました。

//------------------------------

トレーニング

1.簡易エディター「FastStone」でフレームを集め、目的の部分のスクリーンショットを撮ったり、Camtasiaでクリップを撮影し、FastStoneにフレームを転送しています。

2.フレームを加工して(影、矢印、テキストを追加)、ImagesMyGifフォルダ(各gifは独自のサブフォルダを持つ)に.bmpフォーマットで保存しています。

3.フレーム名は、"1.bmp", "2.bmp", "3.bmp", ... Gifを作成するスクリプトに必要なものである。

4.MEでスクリプトを開き、#resourceを通して全フレームを統合する。

//-------------------------------

スクリプトの原理。

1.スクリプトはフレームをループし、ReasourceReadImageを介してそれらを読み取る。

2.スクリプトは、新しいフレームと前のフレームの2つを同時に読み込みます。1と2、次に2と3、そして3と4...。そして、新しいフレームと前のフレームの画素の色を比較します。色が変わった場合、スクリプトはピクセル番号とその新しい色を配列に書き込む。したがって、前のフレームから変化した画素と色のみが書き込まれる。最初のフレーム以降にピクセルの色が変化しない場合、その色を持つピクセルは一度だけ書き込まれます。これが、最初の圧縮機構です。

3.2つ目の圧縮の仕組み:同じ色の画素の列は短くなる。ピクセル行にピクセルからピクセルへ繰り返される色がある場合、スクリプトは繰り返しを数えるサイクルを開始し、開始ピクセルの番号(繰り返しのシーケンスが始まった場所、色、繰り返し数)を配列に書き込みます。

この方法で、スクリプトはフレームを圧縮し、gifをパックする。サイクルが終了すると、収集された配列はgifの名前でファイルに 書き込まれ、その後コンストラクタがkib-codeを読み込んで読み込みます。インターフェースは任意の数のハイファを含むことができるが、各ハイファは、graph.kernelの要素プロパティに書かれた、配列中の各要素とその開始点に割り当てられている。

//--------------------------------

菌糸の繁殖の仕組み。

1.各 hyph はいくつかのプロパティを持つ: Hyphae の配列の原点、フレーム数、フレームサイズ、フレーム間のポーズ。

2.特別なブロックがカーネルオブジェクトを巡回し、gifのプロパティを検索します。ブロックがチェックする。

  • 素子の中に菌糸があること。
  • 項目が可視か非可視か
  • 項目が表示されているかどうか

チェックが通れば、ブロックは特定の菌糸のアドレスで菌糸の配列にアクセスし、見ている。

  • フレームカウンター
  • ポーズカウンタ

これらのチェックに合格すると、菌糸の読み取りに進みます。

1. 本体がGIFを描画するキャンバスをロードする。

2. 本機は現在のフレームを読み出し、解凍します。

  • 右の画素を番号で検索し、キャンバス全体におけるその位置を計算 します。
  • 正しい色のピクセルを正しい位置に描画します。
  • 同じ色の画素の並びを "解く"。

ブロックはフレーム間を移動するだけでなく、異なるウィンドウ内の異なるエレメントのヒフを移動し、可視エリアの後ろに隠れているヒフや閉じたウィンドウ内のヒフをスキップします。

//--------------------------

そういう仕事です。簡単だと思っていたのですが、話してみると複雑でちょっと「ショック」でしたね :) 。

ZS.画像サイズが800*600のgifは、最大20倍以上に圧縮されます。もし、すべてをchar配列に書き出すことができたとしたら、圧縮率はさらに4倍になります。しかし、それでは間違いなくカラーパレットが貧弱になります。
 
しかし、「gif」と何の関係があるのでしょうか?
理由: