Discussion de l'article "Visualisez le ! Bibliothèque graphique MQL5 similaire à 'plot' du langage R" - page 5

Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Toutes les méthodes de lissage dépendent fortement de l'opacité des lignes. À une opacité d'environ 50 %, tout devient non lissé et présente des artefacts.
Aujourd'hui, il y a des artefacts même avec des lignes totalement opaques.
Nous parlions d'essayer de dessiner un cercle entièrement opaque avec des bords lissés (en utilisant l'algorithme de Wu) sans perdre la fluidité.
Cela nécessite des méthodes spéciales de remplissage avec des bords lissés.
Il y a maintenant des artefacts même avec des lignes complètement opaques.
Il s'agissait d'essayer de dessiner un cercle complètement opaque avec des bords lissés (en utilisant l'algorithme de Wu) sans perte de fluidité.
Cela nécessite des méthodes spéciales de remplissage avec des bords lissés.
J'ai cru comprendre que vous ne pouviez pas le faire vous-même ?
Je me rends compte que je ne peux pas le faire tout seul ?
Pourquoi ne pas le faire ? Essayez donc ! )
Vous pouvez même résoudre le cas que vous avez mentionné :
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Discussion autour de l'article "Visualisez-le ! Bibliothèque graphique en MQL5 comme analogue de plot de R"
Artyom Trishkin, 2023.07.31 12:39 AM
Toutes les méthodes de lissage dépendent fortement de l'opacité des lignes. À environ 50 % d'opacité, tout devient non lisse et présente des artefacts.
En d'autres termes, il est possible de dessiner sur un canevas entièrement transparent (CCanvas) en tenant compte de la couche inférieure (graphique et autres objets) et il n'y aura pas d'artefacts.
Mais cela semble plutôt difficile et encombrant. On ne sait pas non plus dans quelle mesure cela affectera les performances. J'aimerais quand même que les développeurs du terminal corrigent ce bug.
Pourquoi ne pas le faire ? Essayez donc ! )
Vous pouvez même résoudre l'affaire que vous avez mentionnée :
Le rendu sur un canevas entièrement transparent (CCanvas) peut être effectué en tenant compte de la couche inférieure (graphique et autres objets) et sera exempt d'artefacts.
Mais cela semble plutôt compliqué et encombrant. On ne sait pas non plus dans quelle mesure cela affectera les performances. J'aimerais quand même que les développeurs du terminal corrigent ce bogue.
J'enverrais une telle tâche (pas aux développeurs, mais aux membres du forum) à Nikolai @Nikolai Semko pour qu'il trouve une solution ;)
J'enverrais une telle tâche (si ce ne sont pas les développeurs, mais les membres du forum) à Nikolai @Nikolai Semko pour qu'il la résolve ;)
Il travaille avec un seul canevas.
Et je ne suis pas prêt à réécrire ma bibliothèque graphique pour que tout fonctionne sur un seul canevas.
Bien que ce soit intéressant, mais sachant combien de temps cela peut prendre, je ne peux pas décider d'entreprendre un tel défi pour le moment. Je n'ai plus autant de temps qu'avant.
Il ne fonctionne qu'avec une seule toile.
Et je ne suis pas prêt à réécrire ma bibliothèque graphique pour que tout fonctionne sur un seul canevas.
Bien que ce soit intéressant, mais sachant combien de temps cela pourrait prendre, je ne peux pas décider d'entreprendre un tel défi pour le moment. Je n'ai plus autant de temps qu'avant.
Il s'agit d'un algorithme. Quelle différence cela fait-il - sur une toile ou sur plusieurs ?
Il s'agit d'un algorithme. Quelle différence cela fait-il qu'il soit sur une ou plusieurs toiles ?
Nous avons abordé deux problèmes :
1. Si c'est celui dont je parlais à l'origine, alors une solution algorithmique serait suffisante dans certains cas.
2. S'il s'agit de celui que vous avez mentionné, alors quelques fonctions ne suffiront pas. Vous avez besoin d'un schéma dans lequel toutes les couches sont stockées dans des tableaux. Chaque couche doit être dessinée en tenant compte de ce qui est dessiné sur les couches inférieures. En outre, toutes les méthodes de la classe CCanvas doivent être corrigées. La couleur de chaque pixel doit être mélangée avec celle du pixel inférieur, en tenant compte de la transparence. Ainsi, il n'y aura pas d'artefacts (lacunes, bords irréguliers, etc.). Si vous le faites correctement, vous pouvez mettre en œuvre la translucidité avec le flou. Tout cela est assez facile à mettre en œuvre sur une seule toile. Mais lorsque plusieurs toiles sont utilisées, c'est beaucoup plus difficile à mettre en œuvre.
Il ne fonctionne qu'avec une seule toile.
Et je ne suis pas prêt à réécrire ma bibliothèque graphique pour que tout fonctionne sur un seul canevas.
Bien que ce soit intéressant, mais sachant combien de temps cela pourrait prendre, je ne peux pas décider d'entreprendre un tel défi pour le moment. Je n'ai plus autant de temps qu'avant.
Nous avons discuté de deux défis :
1. S'il s'agit de celui dont je parlais à l'origine, une solution algorithmique serait suffisante dans certains cas.
2. S'il s'agit de celui que vous avez mentionné, alors quelques fonctions ne suffiront pas. Vous avez besoin d'un système dans lequel toutes les couches sont stockées dans des tableaux. Chaque couche doit être dessinée en tenant compte de ce qui est dessiné sur les couches inférieures. En outre, toutes les méthodes de la classe CCanvas doivent être corrigées. La couleur de chaque pixel doit être mélangée avec celle du pixel inférieur, en tenant compte de la transparence. Ainsi, il n'y aura pas d'artefacts (lacunes, bords irréguliers, etc.). Si vous le faites correctement, vous pouvez mettre en œuvre la translucidité avec le flou. Tout cela est assez facile à mettre en œuvre sur une seule toile. Mais lorsque plusieurs toiles sont utilisées, c'est beaucoup plus difficile à mettre en œuvre.
Je pensais que je ne parlais que de l'algorithme de lissage. Sans tenir compte de la superposition de toiles transparentes. Bien que... Si vous les superposez, de nouveaux problèmes apparaîtront certainement. C'est pourquoi j'ai fait référence à Nikolay - vous voyez, il a toutes les connexions neuronales depuis longtemps, et son cerveau est probablement déjà en train de penser tout seul en tenant compte de tous les problèmes possibles avec la toile).
Je pensais que je parlais simplement de l'algorithme de lissage. Sans référence à la superposition de toiles transparentes. Bien que... Si vous les superposez, de nouveaux problèmes ne manqueront pas de surgir. C'est pourquoi j'ai fait référence à Nikolay - vous voyez, il a toutes les connexions neuronales depuis longtemps, et son cerveau est probablement déjà en train de penser tout seul en tenant compte de tous les problèmes possibles avec la toile).
Artem, ce ne sont vraiment pas des tâches triviales qui nécessitent de nouvelles connexions neuronales. Par exemple, en SVG, il existe un concept tel que viewBox. J'ai déjà regardé beaucoup de vidéos sur son fonctionnement, lu beaucoup de documentation, écrit beaucoup de code, et il m'arrive encore de me retrouver dans l'impasse. Je n'ai toujours pas les connexions neuronales nécessaires, même s'il m'a semblé plusieurs fois que j'avais tout compris.