Fonction de décomposition de la couleur en nuances. - page 10

 
Реter Konow:

Nikolaï, on dirait un jardin d'enfants. L'affirmation "4 fois plus rapide" n'est pas valable, car elle n'est pas prouvée.


  1. Commentez la ligne dans votre version de ma solution sur MT5 et vous verrez la différence.

Cette ligne affecte le dessin de l'ensemble du rectangle pour une raison quelconque. Mais ce n'est pas mon problème. Regardez ça.

Je continue à examiner les problèmes que vous avez. Je veux voir si c'est vraiment à cause de mon algorithme.


Et éteignez le clignotement inutile des chiffres. Enlevez tous les trucs inutiles. Affichons une fois un simple rectangle avec un gradient d'une couleur originale. Pas de gadgets inutiles.

Peter, j'ai écrit "4 fois plus rapide" après avoir fourni le code avec les preuves. Je ne comprends pas ce qu'il faut de plus.

J'ai tout éteint - le problème continue. J'ai vu ce problème avant même de faire ce dodger. Si vous insérez mon dégradé, ce problème n'existe pas, même avec le surplomb textuel. Je l'ai déjà démontré dans le code joint à ce billet.

 
Yury Kulikov:

Je vais me joindre aux "accusations", je n'en pouvais plus :)

Un bon exemple de comment ne pas programmer. Si c'est la façon dont votre interface graphique entière est écrite, nous ne la verrons pas avant un certain temps. :(

Chaque ligne est un "chef-d'œuvre" : un tel amoncellement d'erreurs et de ratés, tant d'espoir que mql4 s'en sorte. Je comprends maintenant pourquoi mt4 est utilisé.

Je pense que la publication de tels codes et la réaction subséquente aux critiques ne respectent pas l'audience du forum. Ils ne veulent pas vous faire de mal, ils veulent vous aider.

Quant à la comparaison des algorithmes, vous pouvez les comparer visuellement. Ce n'est pas comme si vous aviez apporté la preuve par les chiffres que votre algorithme donne des teintes proches à 99% des "teintes de fenêtres".

À gauche, c'est un peu votre approche, à droite,celle de Nikolai Semko. (Un script modifié de NikolaiSemko a été utilisé).


Avez-vous pris ce script ? L'avez-vous installé sur MT4 ? Vous l'avez vérifié ? L'avez-vous comparé ? (Ils sont tous impatients de participer aux accusations))).

Quant au scénario, ce n'est pas mon algorithme. Nikolaï l'a modifié sans savoir comment. C'est à lui qu'il faut parler de ces photos.

 
Nikolai Semko:
De manière générale, une fonction permettant d'obtenir un tableau de gradients entre deux couleurs est plus utile. Car c'est plus simple et plus utile en pratique.

Si vous avez besoin d'un dégradé d'une couleur vers le blanc ou vers le noir, vous pouvez l'obtenir avec cette fonction.


Je te l'avais dit. Désactiver le scintillement inutile. Affiche un seul rectangle. Vous avez là un problème de dessin qui n'a rien à voir avec mon algorithme. Je vous l'ai fait remarquer. Débrouillez-vous.

 
Реter Konow:

Je te l'avais dit. Éteignez le scintillement inutile. Affiche un seul rectangle. Vous avez là un problème de dessin qui n'a rien à voir avec mon algorithme. Je vous l'ai fait remarquer. Débrouillez-vous.

Peter, ça suffit avec les mots. Prouvez-le avec le code avec visualisation, comme je l'ai fait. Je répète, je n'ai pas changé votre fonction, mais seulement tiré une valeur uint de celle-ci au lieu d'une chaîne.
Veuillez enfin me fournir l'exemple fonctionnel de votre fonction sans chaînes dans MQL5 !

 
Yury Kulikov:

Je vais me joindre aux "accusations", je n'en pouvais plus :)

Un bon exemple de comment ne pas programmer. Si c'est la façon dont votre interface graphique entière est écrite, nous ne la verrons pas avant un certain temps. :(

Chaque ligne est un "chef-d'œuvre" : un tel amoncellement d'erreurs et de ratés, tant d'espoir que mql4 s'en sorte. Je comprends maintenant pourquoi mt4 est utilisé.

Je pense que la publication de tels codes et la réaction subséquente aux critiques ne respectent pas l'audience du forum. Ils ne veulent pas vous faire de mal, ils veulent vous aider.

Quant à la comparaison des algorithmes, vous pouvez les comparer visuellement. Ce n'est pas comme si vous aviez prouvé par des chiffres que votre algorithme donne des teintes proches à 99% des "teintes de fenêtres".

À gauche, c'est un peu votre approche, à droite,celle de Nikolai Semko. (Un script modifié de NikolaiSemko a été utilisé).


Pourquoi tu mets ces gifs ? Voulez-vous faire une impression ? Hélas, vous devrez faire plus d'efforts. Je suis trop sophistiqué en graphisme. Mieux vaut prendre mon algorithme, le mettre sur mt4 et imprimer les couleurs. Ensuite, vérifiez la palette de couleurs, cher MENTOR.

 
Nikolai Semko:

Peter, ça suffit avec les mots. Prouvez-le avec du code avec visualisation, comme je l'ai fait. Je répète : je n'ai pas changé votre fonction, mais seulement tiré la valeur uint de celui-ci au lieu de la chaîne de caractères.

Je suis en train de traduire mon code en MT5. Je te montrerai quand j'aurai fini.

 
Nikolai Semko:
De manière générale, la fonction permettant d'obtenir un tableau de gradients entre deux couleurs est plus utile.

Ce serait probablement un peu plus rapide de cette façon :

void Gradient(uint clr1,uint clr2,uint &arr[],uint size)
  {
   if(size==0) return;
   ArrayResize(arr,size);
   rgb c1,c2;
   c1.clr=clr1;
   c2.clr=clr2;
   double R1=c1.c[2],G1=c1.c[1],B1=c1.c[0];
   double R2=c2.c[2],G2=c2.c[1],B2=c2.c[0];
   double deltaR=(R2-R1)/(size-1);
   double deltaG=(G2-G1)/(size-1);
   double deltaB=(B2-B1)/(size-1);
   R1 += 0.4999;
   G1 += 0.4999;
   B1 += 0.4999;
   for(uint i=0;i<size;i++)
     {
      R1+=deltaR; c1.c[2]=uchar (R1);
      G1+=deltaG; c1.c[1]=uchar (G1);
      B1+=deltaB; c1.c[0]=uchar (B1);
      arr[i]=c1.clr;
     }
  }
 
Nikolai Semko:

Peter, ça suffit avec les mots. Prouvez avec le code avec la visualisation, comme je l'ai fait. Je répète - je n'ai pas changé votre fonction, mais seulement tiré la valeur uint de lui au lieu de la chaîne de caractères.

Pourquoi ne pas la comparer à la palette de couleurs? Est-ce vraiment si difficile ?

Et pourquoi le fait de commenter une ligne avec une sortie texte modifie-t-il le dessin de l'ensemble du rectangle ?

 
Реter Konow:

Pourquoi ne pas vérifier la palette de couleurs ? Comment cela peut-il être difficile ?

Vous pourriez au moins ajouter un lien ou quelque chose. A quoi le comparer.

 
Tous les problèmes semblent s'être produits lorsque je suis passé à MT5. Il n'y a rien de tel sur MT4. Le niveau d'exigence de MT5 est beaucoup plus élevé, ce qui crée des problèmes. Mais cela ne signifie pas que la solution n'est pas bonne. Vous devez juste modifier le code.