DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions de dessin
  • Anti-aliasing
  • Utilisation des fonctions de dessin
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Change le mode de dessin utilisé par les fonctions de dessin (fonctions dLigne, dRectangle, ...). Ce changement est réalisé pour l'élément en cours de dessin. Cet élément peut être :
  • un champ Image,
  • dans une variable de type Image.
Exemple
Etats et Requêtes
// Initialise le dessin dans un champ Image
dDébutDessin(IMG_Dessin)

// Dessine un rectangle puis l'efface
dChangeMode(dessinXOR)
// Affiche le rectangle (en mode XOR)
dRectangle(0, 0, 100, 100)
Multitâche(10)
// Efface le rectangle
dRectangle(0, 0, 100, 100)
Etats et Requêtes
// Dessine un rectangle dans un champ Image puis l'efface
dChangeMode(IMG_Dessin, dessinXOR)
// Affiche le rectangle (en mode XOR)
dRectangle(IMG_Dessin, 0, 0, 100, 100)
Multitâche(10)
// Efface le rectangle
dRectangle(IMG_Dessin, 0, 0, 100, 100)
Syntaxe
dChangeMode([<Image>, ] <Nouveau mode>)
<Image> : Nom de champ optionnel ou variable de type Image, WDPic ou picCalque optionnelle
Etats et RequêtesWindows Image à manipuler. Cette image peut correspondre :
  • au nom d'un champ Image.
  • au nom d'une variable de type Image.
Si ce paramètre n'est pas précisé, il est nécessaire de définir la destination du dessin avec la fonction dDébutDessin.
<Nouveau mode> : Constante de type entier
Mode de dessin dans l'image :
dessinAntiAliasingUtilise le GDI+ et/ou les fonctionnalités de la carte graphique pour dessiner les lignes et les cercles sans crénelage. Ce mode de dessin est plus lent mais le résultat est meilleur qu'avec le mode standard.
dessinNormalCouleurs normales.
dessinXORCouleurs appliquées via une opération de "ou exclusif" avec le fond. Permet d'effacer un dessin si cette option est utilisée 2 fois.
ATTENTION : Ce mode de dessin n'est pas compatible avec la gestion de l'opacité (le dessin ne s'efface plus).
Attention :
  • Le dessin en mode XOR est disponible uniquement sur les champs Image. Le dessin en mode XOR n'est pas disponible sur les variables de type Image.
  • La constante dessinXOR n'est pas combinable avec la constante dessinAntiAliasing.
Remarques
Etats et RequêtesWindows

Anti-aliasing

L'anti-aliasing consiste à dessiner les traits et les cercles en évitant l'effet de crénelage. Cette fonctionnalité nécessite le framework GDI + (c'est-à-dire le framework de WINDEV). Exemple :
Limites :
  • La fonction dCorde n'est pas supportée dans ce mode.
  • Pour éviter l'effet de crénelage, les couleurs et les traits des éléments sont lissés. Certaines fonctions de dessin peuvent avoir un comportement inattendu car les couleurs spécifiées ne sont plus retrouvées. Ainsi, si vous spécifiez une couleur de bordure pour la fonction dRemplissage, cette couleur n'est pas retrouvée : le remplissage s'effectue sur toute la zone.
  • Dans le cas d'un dessin avec anti-aliasing, les fonctions dPolygone et dPortion ont le comportement suivant. Le contour est dessiné par-dessus l'intérieur du polygone : le trait est donc en partie combiné avec l'intérieur du polygone. Si l'épaisseur du trait est importante, le trait s'affichera en deux couleurs.
  • Pour plus de détails sur les conditions d'utilisation du GDI+, consultez Framework GDI+.

Utilisation des fonctions de dessin

Les fonctions de dessin peuvent être utilisées selon 2 méthodes :
  • Méthode 1 : Utilisation de la fonction dDébutDessin
    • La fonction dDébutDessin doit être appelée avant toute autre fonction de dessin. La fonction dDébutDessin permet de définir l'élément (champ Image ou variable) sur lequel les fonctions de dessin vont intervenir.
    • Dans le cas du dessin sur un champ Image :
      • Les fonctions de dessin travaillent sur une copie ("bitmap") de l'image. Vous pouvez utiliser les fonctions de dessin de Windows (grâce à la fonction API ou AppelDLL32) mais ces fonctions doivent utiliser le DC (Device Context) renvoyé par la fonction dDébutDessin.
      • La fonction dFinDessin ne doit pas être appelée dans le même traitement que la fonction dDébutDessin.
        Si la fonction dFinDessin est appelée dans le même traitement que la fonction dDébutDessin, le dessin n'apparaîtra pas : il sera automatiquement effacé.
  • Etats et RequêtesWindows Méthode 2 : indication de la destination du dessin directement dans la syntaxe (via un paramètre)
    Le paramètre <Image> permet de spécifier directement la destination du dessin. La fonction dDébutDessin devient inutile. Cette fonction doit être supprimée.
Liste des exemples associés :
Les fonctions de dessin Exemples unitaires (WINDEV) : Les fonctions de dessin
[ + ] Utilisation des principales fonctions de dessin de WINDEV pour :
- Initialiser un champ Image pour dessiner
- Dessiner des figures simples
- Ecrire un texte dans un dessin
- Changer la couleur dans un dessin
Classification Métier / UI : Code neutre
Composante : wd290pnt.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale