Lona vs Rótulos - página 12

 
Andrey Khatimlianskii:

Como posso limitar a taxa de atualização do Kanvas no visualizador de uma forma humana?

Para que em velocidade lenta a imagem seja atualizada em tempo real, e em velocidade rápida não abrande o teste?

Neste momento, a tela (se for atualizada a cada tique) realmente retarda toda a visualização (o perfil mostra 80-90% do tempo de renderização). Torci com pausa configurável em segundos, mas é uma muleta, limitando a funcionalidade (atualizações de imagem raramente mesmo em velocidade lenta).

O que ligar para que não se atualize com muita freqüência? GetMicroseconds?

Quais funções devem ser ignoradas?

Andrey, já escrevi sobre isso aqui há mais de um ano.

Funciona muito bem.
Aqui está um vídeo ao vivo (apenas dois Kanvases):

Só preciso acrescentar que no testador o evento CHARTEVENT_CHART_CHANGE não funciona,

portanto, incluo o seguinte em bloco de formação de tela (quando se usa iCanvas):

void BildParabolas() {
   if(Canvas.tester) ChartChanged();
   static uint lastCalc=0;
   uint cur=GetTickCount();
   if (cur-lastCalc<17) return;
...

E aqui está parte do código em OnCalculate a partir do indicador que está no gif:

static uint lastCalc=0; 
if (Canvas.tester) {
      uint cur=GetTickCount();
      if (cur-lastCalc>17) {
         lastCalc=cur;
         BildParabolas();
         menu.Draw();
      }
   }

 
Dmitry Fedoseev:
é óbvio, a olho nu, que o kanvas é consideravelmente mais lento


 
Taras Slobodyanik:

No testador MT5, o temporizador funciona, você pode configurá-lo para 60 segundos e ele será atualizado uma vez por minuto na hora do testador)

Sobre a muleta de pausa que escrevi, ela não se encaixa.

 
Nikolai Semko:

Andrei, escrevi sobre isso aqui há mais de um ano.

Funciona muito bem.
Aqui está um vídeo ao vivo (apenas dois Kanvases):

Parece um pouco lento, quanto à velocidade máxima.

Obrigado, vou tentar via GetTickCount!

 
Andrey Khatimlianskii:

Parece um pouco lento para velocidade máxima.

Obrigado, vou tentar via GetTickCount!

Não, não é o máximo. É muito sensível diante do máximo.
Aqui está o máximo:

 
Andrey Khatimlianskii:

Parece um pouco lento para a velocidade máxima.

Obrigado, vou tentar usar o GetTickCount!

Além disso, para que não haja preconceito em relação ao gráfico em si, devemos tentar experimentar OBJ_BITMAP em vez deOBJ_BITMAP_LABEL. Ligar-se ao tempo e ao preço em vez das coordenadas XY.
Todos eu quero tentar, mas não consigo. Neste caso, teremos que fazer a tela maior que o tamanho da janela e mudar a lógica de controle. O código pode ter uma vantagem significativa de velocidade devido a não ter que redesenhar toda a tela, mas apenas uma parte menor dela, se a escala vertical permanecer a mesma. De qualquer forma, não será aborrecido ver o Kanvas desequilibrado com o gráfico principal ao se mover rapidamente.

 
Nikolai Semko:

Não, não é o máximo. É muito sensível diante do máximo.
Isso é o máximo:

Isso é "tudo carrapatos"?! Se for o caso, legal. Vou verificar.


Nikolai Semko:

Além disso, para que não haja preconceito em relação ao gráfico em si, devemos tentar experimentar OBJ_BITMAP em vez deOBJ_BITMAP_LABEL. Ligar-se ao tempo e ao preço em vez das coordenadas XY.
Eu ainda quero tentar, mas não consigo. Neste caso, teríamos que fazer a tela maior do que o tamanho da janela e mudar a lógica de controle. Talvez haja um ganho de velocidade. De qualquer forma, a tela desequilibrada e a carta principal não estarão quebrando o olho quando o movimento for rápido.

Eu tenho um painel simples. Nenhum link para a tabela.

 
Andrey Khatimlianskii:

Eu tenho um painel de controle regular. Não há nenhum link para a tabela.

ah, bem, está bem então.
Também tenho uma tela na minha hifa, e é o painel que consome menos recursos, porque não tenho que redesenhá-la com tanta freqüência e pegar o momento em que entra um novo bar.

 
Andrey Khatimlianskii:

Isso é "tudo tiques"?! Se for o caso, legal. Vou dar uma olhada.

Não, foi o minuto OHLC em 3 minutos. Mas eu verifiquei todos os carrapatos. O quadro é quase o mesmo. Porque, neste caso, o desenho de kanvas não está ligado a carrapatos, mas apenas ao tempo real (não ao tempo de teste). Isto é, a maior velocidade é, a menor densidade de quadros é. Mas, aos olhos dos olhos, a diferença não é visível.

 
Sim... Os gifs animados são certamente um argumento forte.