CGraphicのテスト - 質問と提案 - ページ 2 123456789...13 新しいコメント Vladimir Karputov 2016.12.11 17:20 #11 o_O:画素」の話ではなかったと思うのですが。Y配列しか提出されていませんね。つまり、Xは単純なシーケンス番号である。GetXの出力は正しいです。 説明には「座標」とはっきり書いてあります。座標がピクセルであることは理解しています。 --- 2016.12.11 17:58 #12 Vladimir Karputov: 説明には「座標」とはっきり書いてあります。座標がピクセルであることは理解しています。 いいえ、座標をピクセルに関連付けるべきではありません。 Vladimir Karputov 2016.12.11 18:02 #13 o_O: いいえ、座標とピクセルは関係ないはずです。 そうすると、描画される内容(doubleの実際の値)とピクセル単位での座標の関係がなくなってしまうのです。明確な説明を待ちます。 --- 2016.12.11 19:18 #14 Vladimir Karputov: そうすると、レンダリングされるもの(doubleの実数値)とピクセル単位の座標の関係がなくなってしまうのです。明確な説明を待ちます。なーるほど、それはいいことですね。結局、配列はYしか与えられなかったので、Xのポイントを序数として自動計算する必要があったのです。CurveAdd に二次元の配列を与える。例えば、X には time とする(tick の値を取得するのが原則である)。---ピクセル座標の取得は別の問題です。レンダリングコード(またはカーブポイントの計算が行われる場所)を見てください。画素数の計算方法その配列が格納されているのかもしれません。 Roman Konopelko 2016.12.12 11:29 #15 o_O: //--- trim the name m_canvas.FontSizeSet(m_history.name_size); if(m_canvas.TextWidth(name)>m_history.name_width) { while(m_canvas.TextWidth(name+"...")>m_history.name_width) name=StringSubstr(name,0,StringLen(name)-1); name+="..."; }m_history.name_width が小さいと while ループが無限大になるバグを発見。 右側の「履歴」を完全に無効にするにはどうすればよいですか? 投稿ありがとうございます!修正します。今のところ履歴を無効にする直接的な方法はありませんが、曲線名サイズHistoryNameWidthとその指定HistorySymbolSizeをゼロにすることができます。 --- 2016.12.12 11:32 #16 Roman Konopelko: 投稿ありがとうございます!修正します。今のところ履歴を無効にする直接的な方法はありませんが、HistoryNameWidthの曲線名とその指定HistorySymbolSizeのサイズをゼロにすることができます。バーチャルファンクションは作って もらえるのでしょうか?ヒストグラムのレンダリング関数を再定義する必要があります。 正と負の値の2つの色が必要です。 そして、すべてが仮想ではなく、再定義できません ( Vladimir Karputov 2016.12.12 11:52 #17 ロマン・コノペルコ読み方について説明してくださいゲットエックスすべての曲線点のX座標を配列に書き込む- はピクセル単位のCOORDINATES(x,y)なのか、カーブを作るために渡される値なのか? Roman Konopelko 2016.12.12 11:59 #18 Vladimir Karputov:ロマン・コノペルコ読み方について説明してくださいゲットエックスすべての曲線点のX座標を配列に書き込む- はピクセル単位のCOORDINATE(x,y)なのか、それともカーブを描くために渡される値なのか? GetX と GetY メソッドは CCurve クラスに実装されており、カーブを構成するのに使用された座標を取得することができる。 Vladimir Karputov 2016.12.12 12:12 #19 Roman Konopelko: CCurveクラスにはGetXとGetYのメソッドが実装されており、作成に使用した曲線の座標を取得することができる。 ヘルプに書き込んでください - .カーブが構築されたデータを取得 できるようにする。なぜなら、「座標」という言葉は「ピクセル」という言葉と非常によく似た意味を持っているからです。 --- 2016.12.17 14:32 #20 ロマン・コノペルコ(Roman Konopelko)さん inCalculateXAxis()日付/時刻の形式を欠く TimeToString は、ダブル値に対するフォーマットのみを持っています StringFormat.string xformat=m_x.ValuesFormat()。 m_xvalues[i]=(xformat==NULL) ?StringFormat("%7g",x) : StringFormat(xformat,x);のオプションがあります。- CAxis::m_bdatetime 変数を追加 - フォーマット時に StringFormat の代わりに TimeToString 関数を呼び出すよう指示する。- またはテイクアウト string xformat=m_x.ValuesFormat()。 m_xvalues[i]=(xformat==NULL) ?StringFormat("%7g",x) : StringFormat(xformat,x);を別の仮想関数に変換し、ユーザーがそれをオーバーライドできるようにします。ありがとうございました。PS.クラスや以前のバグのニュースは? 新しいビルドでは、何かニュースや編集があるのでしょうか? 新しいバージョンがあれば、ビルドの公開を待たずに、ここに投下してください。 Testing CGraphic - questions エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第2部):出来高指標とビルウィリアムズの指標 トレーディングにおけるOLAPの適用(その4)。テスターレポートの定量的・視覚的分析 123456789...13 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
画素」の話ではなかったと思うのですが。
Y配列しか提出されていませんね。つまり、Xは単純なシーケンス番号である。GetXの出力は正しいです。
説明には「座標」とはっきり書いてあります。座標がピクセルであることは理解しています。
いいえ、座標とピクセルは関係ないはずです。
そうすると、レンダリングされるもの(doubleの実数値)とピクセル単位の座標の関係がなくなってしまうのです。明確な説明を待ちます。
なーるほど、それはいいことですね。
結局、配列はYしか与えられなかったので、Xのポイントを序数として自動計算する必要があったのです。
CurveAdd に二次元の配列を与える。例えば、X には time とする(tick の値を取得するのが原則である)。
---
ピクセル座標の取得は別の問題です。レンダリングコード(またはカーブポイントの計算が行われる場所)を見てください。画素数の計算方法その配列が格納されているのかもしれません。
m_canvas.FontSizeSet(m_history.name_size);
if(m_canvas.TextWidth(name)>m_history.name_width)
{
while(m_canvas.TextWidth(name+"...")>m_history.name_width)
name=StringSubstr(name,0,StringLen(name)-1);
name+="...";
}
m_history.name_width が小さいと while ループが無限大になるバグを発見。
右側の「履歴」を完全に無効にするにはどうすればよいですか?
投稿ありがとうございます!修正します。今のところ履歴を無効にする直接的な方法はありませんが、HistoryNameWidthの曲線名とその指定HistorySymbolSizeのサイズをゼロにすることができます。
バーチャルファンクションは作って もらえるのでしょうか?
ヒストグラムのレンダリング関数を再定義する必要があります。 正と負の値の2つの色が必要です。 そして、すべてが仮想ではなく、再定義できません (
ロマン・コノペルコ
読み方について説明してください
ゲットエックス
すべての曲線点のX座標を配列に書き込む
- はピクセル単位のCOORDINATES(x,y)なのか、カーブを作るために渡される値なのか?
ロマン・コノペルコ
読み方について説明してください
ゲットエックス
すべての曲線点のX座標を配列に書き込む
- はピクセル単位のCOORDINATE(x,y)なのか、それともカーブを描くために渡される値なのか?
CCurveクラスにはGetXとGetYのメソッドが実装されており、作成に使用した曲線の座標を取得することができる。
ロマン・コノペルコ(Roman Konopelko)さん
inCalculateXAxis()
日付/時刻の形式を欠く TimeToString
は、ダブル値に対するフォーマットのみを持っています StringFormat.
string xformat=m_x.ValuesFormat()。
m_xvalues[i]=(xformat==NULL) ?StringFormat("%7g",x) : StringFormat(xformat,x);
のオプションがあります。
- CAxis::m_bdatetime 変数を追加 - フォーマット時に StringFormat の代わりに TimeToString 関数を呼び出すよう指示する。
- またはテイクアウト
string xformat=m_x.ValuesFormat()。
m_xvalues[i]=(xformat==NULL) ?StringFormat("%7g",x) : StringFormat(xformat,x);
を別の仮想関数に変換し、ユーザーがそれをオーバーライドできるようにします。
ありがとうございました。
PS.クラスや以前のバグのニュースは?
新しいビルドでは、何かニュースや編集があるのでしょうか?
新しいバージョンがあれば、ビルドの公開を待たずに、ここに投下してください。