DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions de dessin
  • Coordonnées
  • Dessin avec opacité ou anti-aliasing
  • Utilisation des fonctions de dessin
  • Dessin en PHP
  • Dessin en code Navigateur
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
Dessine un polygone :
  • dans un champ Image,
  • dans une variable de type Image.
    WEBDEV - Code NavigateurPHP Ce type de variable n'est pas disponible.
  • WINDEVWEBDEV - Code Serveur dans une variable de type WDPic (sur le calque d'arrière-plan),
  • WINDEVWEBDEV - Code Serveur dans une variable de type picCalque.
Linux Attention : L'utilisation de cette fonction sous Linux nécessite une configuration spécifique. Pour plus de détails, consultez Les dessins.
// Initialise le dessin dans un champ Image
dDébutDessin(IMG_Dessin)
// Dessin d'un polygone à 4 côtés dont le
// fond est jaune clair et le bord bleu clair
dPolygone(4, 10, 20, 20, 50, 40, 60, 50, 10, JauneClair, BleuClair)
WINDEVWEBDEV - Code ServeurEtats et RequêtesUniversal Windows 10 AppiPhone/iPadWidget IOSMac CatalystCode Utilisateur (MCU)Ajax
// Dessin d'un polygone à 4 côtés dont le 
// fond est jaune clair et le bord bleu clair
dPolygone(IMG_Dessin, 4, 10, 20, 20, 50, 40, 60, 50, 10, JauneClair, BleuClair)
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsAndroidCode Utilisateur (MCU)PHP
// Dessin d'un polygone à partir d'un tableau de coordonnées de points
tabCoordonnéesXY est un tableau de 0 par 2 entier = [[2, 3], [14, 100], [10,70], [50, 80]]
dPolygone(tabCoordonnéesXY)
tabCoordonnéesXY2 est un tableau de 0 entier = [2, 2, 140, 2, 150, 70, 0, 100, 200, 100]
dPolygone(tabCoordonnéesXY2)
tabCoordonnéesXYC est un tableau de 36 par 2 entier
Rayon est un entier = 50
POUR I = 1 Ã€ 36
	// x
	tabCoordonnéesXYC[I][1] = 80 + Cosinus(I*10) * Rayon
	// y
	tabCoordonnéesXYC[I][2] = 60 + Sinus(I*10) * Rayon
FIN
dPolygone(tabCoordonnéesXYC, GrisClair, JauneBulle)
Syntaxe

Construction d'un polygone point par point Masquer les détails

dPolygone([<Image>, ] <Nombre de côtés> , <X1> , <Y1> , <X2> , <Y2> [, <X3> , <Y3> [... [, <Xn> , <Yn>]]] [, <Couleur du fond> [, <Couleur des côtés>]])
<Image> : Nom de champ optionnel ou variable de type Image, WDPic ou picCalque optionnelle
Etats et RequêtesWindowsLinuxUniversal Windows 10 AppAndroidiPhone/iPadWidget IOSMac CatalystJavaCode Utilisateur (MCU) Image à manipuler. Cette image peut correspondre :
  • au nom d'un champ Image.
  • au nom d'une variable de type Image.
  • WINDEVWEBDEV - Code Serveur au nom d'une variable de type WDPic. Seul le calque d'arrière-plan sera manipulé.
  • WINDEVWEBDEV - Code Serveur au nom d'une variable de type picCalque.
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.
<Nombre de côtés> : Entier
Nombre de côtés du polygone (23 côtés maximum). Ce paramètre détermine le nombre de couples <X>, <Y> à spécifier dans la fonction.
<X1> : Entier
Abscisse du premier point du polygone. Ces coordonnées sont exprimées en pixels.
<Y1> : Entier
Ordonnée du premier point du polygone. Ces coordonnées sont exprimées en pixels.
<X2> : Entier
Abscisse du second point du polygone. Ces coordonnées sont exprimées en pixels.
<Y2> : Entier
Ordonnée du second point du polygone. Ces coordonnées sont exprimées en pixels.
<X3> : Entier
Abscisse du troisième point du polygone. Ces coordonnées sont exprimées en pixels.
<Y3> : Entier
Ordonnée du troisième point du polygone. Ces coordonnées sont exprimées en pixels.
<Xn> : Entier optionnel
Abscisse du nième point du polygone. Ces coordonnées sont exprimées en pixels.
<Yn> : Entier optionnel
Ordonnée du nième point du polygone. Ces coordonnées sont exprimées en pixels.
<Couleur du fond> : Entier ou constante (optionnel)
Couleur du fond du polygone. Cette couleur peut correspondre à :
Si ce paramètre n'est pas précisé, la couleur du fond :
  • est Transparent si la fonction dFond n'a pas été utilisée auparavant,
  • correspond à la couleur précisée dans le dernier appel à la fonction dFond.
<Couleur des côtés> : Entier ou constante (optionnel)
Couleur des côtés du polygone. Cette couleur peut correspondre à :
Si ce paramètre n'est pas précisé, la couleur du trait :
  • est Transparent si la fonction dStylo n'a pas été utilisée auparavant.
    Dans le cas d'une variable de type Image, la ligne aura la couleur noire.
  • correspond à la couleur précisée dans le dernier appel à la fonction dStylo.

Construction d'un polygone par tableau de coordonnées X et Y Masquer les détails

dPolygone([<Image>, ] <Tableau de coordonnées> [, <Couleur du fond> [, <Couleur des côtés>]])
<Image> : Nom de champ optionnel ou variable de type Image, WDPic ou picCalque optionnelle
Etats et RequêtesWindowsLinuxUniversal Windows 10 AppAndroidiPhone/iPadWidget IOSMac CatalystJavaCode Utilisateur (MCU) Image à manipuler. Cette image peut correspondre :
  • au nom d'un champ Image.
  • au nom d'une variable de type Image.
  • WINDEVWEBDEV - Code Serveur au nom d'une variable de type WDPic. Seul le calque d'arrière-plan sera manipulé.
  • WINDEVWEBDEV - Code Serveur au nom d'une variable de type picCalque.
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.
<Tableau de coordonnées> : Tableau d'entiers ou de points
  • Tableau WLangage d'entiers contenant les coordonnées des points du polygone. Les indices pairs représentent les abscisses (X) et les indices impairs représentent les ordonnées (Y) des points. Ces coordonnées sont exprimées en pixels.
  • WINDEVWEBDEV - Code ServeurUniversal Windows 10 AppAndroidiPhone/iPadWidget IOSMac CatalystJava Tableau WLangage de variables de type Point contenant les coordonnées des points du polygone. Ces coordonnées sont exprimées en pixels.
<Couleur du fond> : Entier ou constante (optionnel)
Couleur du fond du polygone. Cette couleur peut correspondre à :Si ce paramètre n'est pas précisé, la couleur du fond :
  • est Transparent si la fonction dFond n'a pas été utilisée auparavant,
  • correspond à la couleur précisée dans le dernier appel à la fonction dFond.
<Couleur des côtés> : Entier ou constante (optionnel)
Couleur des côtés du polygone. Cette couleur peut correspondre à :Si ce paramètre n'est pas précisé, la couleur du trait :
  • est Transparent si la fonction dStylo n'a pas été utilisée auparavant.
    Dans le cas d'une variable de type Image, la ligne aura la couleur noire.
  • correspond à la couleur précisée dans le dernier appel à la fonction dStylo.
Etats et RequêtesWindowsLinuxAndroidiPhone/iPadCode Utilisateur (MCU)

Construction d'un polygone à partir d'une variable de type Polygone Masquer les détails

dPolygone([<Image>, ] <Polygone> [, <Couleur du fond> [, <Couleur des côtés>]])
<Image> : Nom de champ optionnel ou variable de type Image, WDPic ou picCalque optionnelle
Etats et RequêtesWindowsLinuxAndroidiPhone/iPadCode Utilisateur (MCU) Image à manipuler. Cette image peut correspondre :
  • au nom d'un champ Image.
  • au nom d'une variable de type Image.
  • WINDEVWEBDEV - Code Serveur au nom d'une variable de type WDPic. Seul le calque d'arrière-plan sera manipulé.
  • WINDEVWEBDEV - Code Serveur au nom d'une variable de type picCalque.
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.
<Polygone> : Variable de type Polygone
Nom de la variable de type Polygone décrivant les différents points du polygone.
<Couleur du fond> : Entier ou constante (optionnel)
Couleur du fond du polygone. Cette couleur peut correspondre à :Si ce paramètre n'est pas précisé, la couleur du fond :
  • est Transparent si la fonction dFond n'a pas été utilisée auparavant,
  • correspond à la couleur précisée dans le dernier appel à la fonction dFond.
<Couleur des côtés> : Entier ou constante (optionnel)
Couleur des côtés du polygone. Cette couleur peut correspondre à :Si ce paramètre n'est pas précisé, la couleur du trait :
  • est Transparent si la fonction dStylo n'a pas été utilisée auparavant.
    Dans le cas d'une variable de type Image, la ligne aura la couleur noire.
  • correspond à la couleur précisée dans le dernier appel à la fonction dStylo.
Remarques

Coordonnées

Tracé d'un polygone :
dPolygone(5, 80, 10, 10, 150, 100, 200, 160, 80, 140, 40)
Tracé d'un polygone
Les coordonnées sont indiquées par rapport au coin haut gauche de l'image (coordonnées (0,0)).
Important : Il n'est pas nécessaire de fermer le polygone (les coordonnées du dernier point n'ont pas à être égales aux coordonnées du premier point). La "fermeture" du polygone est réalisée automatiquement.
Limites : un polygone peut avoir au maximum 100 000 points en WINDEV, WEBDEV et Java, et 1000 points sous Windows CE.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsAndroidJavaCode Utilisateur (MCU)PHPAjax

Dessin avec opacité ou anti-aliasing

Dans le cas d'un dessin avec opacité (fonction dDébutDessin avec la constante dAvecOpacité) ou anti-aliasing (fonction dChangeMode avec la constante dessinAntiAliasing), 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.

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êtesWindowsLinuxUniversal Windows 10 AppAndroidiPhone/iPadWidget IOSMac CatalystJavaCode Utilisateur (MCU) 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.
PHP

Dessin en PHP

En PHP, les fonctions de dessin s'appuient sur la librairie graphique GD. Cette librairie est très courante chez les hébergeurs PHP, et donc toujours activée. La version de la librairie GD devra être au moins 2.0.28. Cette librairie peut être téléchargée sur le site de PHP.
Pour activer si nécessaire cette librairie en local, les éléments nécessaires sont :
  • PHP installé.
  • le fichier PHP.INI présent dans le répertoire Windows doit avoir la ligne "extension=php_gd2.dll" et non pas ";extension=php_gd2.dll".
  • le fichier php_gd2.dll doit exister dans le répertoire des extensions PHP. Ce répertoire est défini dans le fichier PHP.INI par la variable "extension_dir".
WEBDEV - Code Navigateur

Dessin en code Navigateur

Certaines fonctions de dessin sont disponibles en code Navigateur. Les fonctions de dessin en code Navigateur sont basées sur la norme HTML 5. Pour les spécialistes, ces fonctions s'appuient sur la balise "canvas" de HTML 5.
Les fonctionnalités de dessin en code navigateur sont disponibles uniquement sur les navigateurs récents (supportant la norme HTML 5). Pour savoir si le navigateur utilisé propose les fonctionnalités de dessin, utilisez la fonction DessinDisponible.
Attention : Pour utiliser les fonctions de dessin avec Internet Explorer 9, le projet doit inclure la référence au fichier DTD. Pour cela, le mode HTML doit être "HTML 4.01 Transitional + DTD". Cette option est disponible dans l'onglet "Avancé" de la fenêtre de description du projet.
Rappel : Pour afficher la fenêtre de description du projet, sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
Cas particulier : Dessiner dans le navigateur d'un téléphone Android : Les fonctions de dessin navigateur sont disponibles uniquement à partir de la version 3 de Android.
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 : wd300pnt.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 17/01/2024

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