La toile est cool ! - page 14

 
Nikolai Semko:

Donc tu n'as pas entendu mon message.

Mais vous devez arrondir les chiffres doubles pour donner les coordonnées. Il n'y a pas d'autre moyen.

 
Реter Konow:

Mais vous devez arrondir les chiffres doubles pour donner les coordonnées. Il n'y a pas d'autre moyen.

Vous n'avez pas à arrondir quoi que ce soit.

Voici un script, à titre d'exemple.

Exécutez-le d'abord avec les paramètres par défaut (avec des cercles lissés et des coordonnées et dimensions de type double)

et ensuite l'exécuter avec le paramètre typ = not_smoothed_circles (avec des cercles anticrénelés et des coordonnées et tailles de type int - de la classe CCanvas).

et vous verrez ce que je veux dire.

Il est préférable de le faire sur un fond blanc, pas sur un fond noir.

Dossiers :
 
Nikolai Semko:

Basé sur Doom...

Je me demande pourquoi l'image se fige lorsque l'on fait défiler le graphique avec la souris ?


C'est une honte que vous ne puissiez pas tuer une ressource. Par exemple, vous éteignez l'indicateur de flamme. Et l'objet avec la ressource est laissé en suspens. L'objet peut être tué, mais la ressource - non. Au final, il est facile de manger toute la mémoire du terminal et donc de désactiver imperceptiblement les Expert Advisors.

 

Il existe de nombreuses bibliothèques 3D écrites en JavaScript depuis une centaine d'années. Le moyen le plus simple et le plus direct est de les réécrire de là à ici.

Pas pendant 100 ans, bien sûr, mais pendant quelques années.

 
fxsaber:

Je me demande pourquoi l'image se fige lorsque l'on fait défiler le graphique avec la souris ?

cela doit être dû au contrôle d'événement CHARTEVENT_CHART_CHANGE dans ma classe iCanvas

il n'y a pas de tel contrôle dans le script et il n'y a pas de gel.

Dossiers :
fire.mq5  9 kb
 
Nikolai Semko:

Vous n'avez pas à arrondir quoi que ce soit.

Voici un script à titre d'exemple.

Exécutez-le d'abord avec les paramètres par défaut (avec des cercles anticrénelés et des coordonnées et dimensions de type double)

et ensuite l'exécuter avec le paramètre typ = not_smoothed_circles (avec des cercles anticrénelés et des coordonnées et tailles de type int - de la classe CCanvas).

et vous verrez ce que je veux dire.

Il est préférable de le faire sur un fond blanc, pas noir.

Oui, c'est très bien. Formes de qualité des cercles.

Mais, vous utilisez la classe CCanvas, et là les coordonnées sont définies en int.

 
fxsaber:

Je me demande pourquoi l'image se fige lorsque l'on fait défiler le graphique avec la souris.


C'est dommage qu'on ne puisse pas tuer une ressource. Par exemple, vous éteignez l'indicateur de flamme. Et l'objet avec la ressource est laissé en suspens. L'objet peut être tué, mais la ressource - non. Il consomme simplement toute la mémoire du terminal et désactive donc discrètement les Expert Advisors.

Et que dire de ResourseFree() ?

 
fxsaber:

C'est une honte que vous ne puissiez pas tuer une ressource. Par exemple, vous éteignez l'indicateur de flamme. Il laisse un objet avec une ressource en suspens. Vous pouvez tuer l'objet, mais pas la ressource. Au final, vous pouvez facilement manger toute la mémoire du terminal et, par conséquent, désactiver imperceptiblement les Expert Advisors.

Mais pourquoi ?

J'utilise un destructeur dans ma classe

~iCanvas() { Destroy(); ChartRedraw();};

et Détruire :

void CCanvas::Destroy(void)
  {
//--- delete object
   if(m_objname!=NULL)
     {
      ObjectDelete(m_chart_id,m_objname);
      m_chart_id=0;
      m_objname =NULL;
      m_objtype =WRONG_VALUE;
     }
//--- deallocate array
   ArrayFree(m_pixels);
//--- free resource
   if(m_rcname!=NULL)
     {
      ResourceFree(m_rcname);
      m_rcname=NULL;
     }
//--- zeroize data
   m_width =0;
   m_height=0;
  }
 
Nikolai Semko:

cela est probablement dû au contrôle de l'événement CHARTEVENT_CHART_CHANGE dans ma classe iCanvas

Dans le scénario, ce contrôle n'existe pas et il n'y a pas de gel.

Oui, aucun problème dans le script.


Très curieux de voir à quoi cela ressemblerait.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Nouvelle version de MetaTrader 5 build 1930 : fenêtres graphiques flottantes et bibliothèques .Net dans MQL5

fxsaber, 2019.01.14 21:37

Il reste à faire une photo en relief du penseur avec le robinet de gaz fermé.

Mais ce qui est vraiment spectaculaire, c'est de mettre le feu aux bars et aux lignes d'objets eux-mêmes.


Vous pourriez aussi faire les barres comme s'il s'agissait de fentes dans le four. C'est comme si vous regardiez les flammes à travers eux.


Cela demande un peu de travail : créer un deuxième tampon Canvas comme une copie du flamme principal, puis appliquer un filtre sur l'emplacement des pixels des barres. Cela ne devrait pas être difficile, à première vue.

 
Nikolai Semko:

Pourquoi ça ?

J'utilise un destructeur dans ma classe

et Détruire :

Eh bien, pour une raison quelconque, ça n'a pas marché, car il me reste tout.