| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> PHP /MySQL Programmation >> Content
    Comment dessiner un coeur avec PHP GD
    Le langage de programmation , PHP (Hypertext Preprocessor ) est une bibliothèque graphique appelé graphique draw ( GD) . GD vous permet de créer dynamiquement des images en fonction de l'évolution des circonstances , telles que des graphiques qui sont toujours mises à jour ou des filigranes sur les images téléchargées par l'utilisateur . Si vous voulez dessiner un coeur ou toute autre forme, à aiguiser vos compétences pour créer n'importe quel type d'image que vous voulez permettra d'élargir les possibilités de ce que vous pouvez faire avec la bibliothèque GD . Instructions
    1

    Ouvrez un éditeur de texte qui ne fait pas riche formatage de texte, tel que Bloc-notes, tapez le tag PHP d'ouverture : . < Php
    2

    écrire une fonction de Bézier pour dessiner des courbes . La bibliothèque de fonctions GD ne comprend pas une telle fonction , donc créer votre propre (voir Ressources) . La fonction suivante utilise la fonction GD " imagesetpixel », qui définit un pixel aux coordonnées indiquées par les deuxième et troisième paramètres . Le quatrième paramètre spécifie la couleur et, comme avec la plupart des fonctions GD , le premier paramètre est un identifiant d'image . Fonction


    Bézier ( & $ img , $ x, $ y, $ couleur, $ res ) {< br >

    $ cx = 3 * ( $ x [1 ] - $ x [ 0]);

    $ bx = 3 * ( $ x [ 2] - $ x [1 ] ) - $ cx ;

    $ ax = $ x [ 3] - $ x [0] - $ cx - $ bx ;

    $ cy = 3 * ( $ y [1] - $ y [0 ] ) ;

    $ par = 3 * ( $ y [2] - $ y [1] ) - $ cy ;

    $ ay = $ y [3] - $ y [0 ] - $ cy - $ par ;

    for ($ i = 0; $ i <= résolution $ ; $ i + +) {

    $ t = $ i /$ res ;

    $ xt = $ ax * pow ( $ t , 3) + $ bx * pow ( $ t , 2) + cx $ * $ t $ x + [0];

    $ yt = $ ay * pow ( $ t , 3) + $ par * pow ( $ t , 2) + $ cy * $ t + $ y [0];

    imagesetpixel ($ img , round ( $ xt) , ronde ( yt $ ) , $ color) ;

    } }


    3

    initialiser l'image et les couleurs dont vous avez besoin . Dans l'exemple de code suivant, l'image est initialisée à 200 par 200 pixels , en utilisant la fonction « imagecreate " , qui crée également l' identifiant d'image "$ img . " La couleur rouge et blanche sont initialisés avec la fonction " imagecolorallocate " en spécifiant les valeurs de 0 à 255 pour le rouge , le vert et le bleu. La première couleur initialisée deviendra la couleur de fond

    $ img = imagecreate (200, 200); .

    $ Blanc = imagecolorallocate ($ img , 255, 255 , 255) ;

    $ rouge = imagecolorallocate ($ img , 255, 0, 0);
    4

    créer deux tableaux pour le x et y coordonnées des quatre points qui détermineront la forme de la courbe de Bézier . Pour spécifier la forme de la courbe , penser en termes de deux vecteurs tangents , dont l'ampleur détermine la quantité de balancer la direction du vecteur a sur la courbe , un peu comme la trajectoire d'un ballon de tomber dans un vent fort . Le premier des quatre points spécifie l'une des extrémités de la courbe et la queue du premier vecteur , et la seconde spécifie la tête du vecteur . La distance entre les points correspondant à la grandeur et de leur position relative détermine la direction . Le troisième point est la tête de la deuxième vecteur et le quatrième point est la queue du vecteur et l'autre extrémité .

    Dans l'exemple suivant , les quatre points sont (100 , 40) , (150, -10) , (250 , 80) et ( 100 , 180 ) , où l'angle supérieur gauche de l'image est ( 0 , 0) . Les coordonnées x pour les points de terminaison sont tous deux à 100 , ce qui leur centre dans la toile de gauche à droite . Les coordonnées y indiquer le premier point d'extrémité 40 est au -dessus de l'autre à 180 . Les têtes de vecteur sont au-dessus et à droite de leurs critères respectifs. Séparez les x et y coordonnées dans leurs propres tableaux:

    $ x_coords = array (100 , 150, 250 , 100);

    $ y_coords = array (40 , -10, 80 , 180) ;
    5

    Tracer la courbe de la fonction de Bézier créé à l'étape 2. Dans l' exemple de fonction , le premier paramètre est l'identificateur de l'image , les deux paramètres suivants sont les matrices pour les x et y les coordonnées , le quatrième est la couleur , et la dernière est la résolution. Le paramètre de résolution détermine le nombre de points à tracer , donc spécifier un plus grand nombre de courbes bien définies. Par exemple, tapez :

    Bézier ($ img , $ x_coords , y_coords $ , $ rouge, 500);
    6

    redéfinir les coordonnées pour tracer la courbe sur le côté gauche de le cœur , et tracer avec la fonction de Bézier . Les critères d'évaluation pour le virage à gauche sont les mêmes que ceux de la droite. La seule chose qui change est la coordonnées x pour les têtes de vecteur . Les nouvelles doivent être le plus à gauche du centre que les précédents sont à la droite du centre dans le but de chaque côté pour être comme une image miroir de l'autre . Par exemple, tapez :

    $ x_coords [1] = 50 ;//Premier chef de vecteur était de 150

    $ x_coords [2] = -50 ;//Deuxième tête de vecteur était de 250 . . Photos

    Bézier ($ img , $ x_coords , y_coords $ , $ rouge, 500);
    7

    Afficher l'image et détruire l'objet image à libérer la mémoire. La fonction " tête " est nécessaire pour le navigateur va traiter la sortie comme une image. Fin du fichier avec la fermeture du tag PHP. Par exemple, tapez : tête

    ( "Content- type: image /png ");

    imagepng ($ img ) ;

    imagedestroy ($ img ) ; < br >

    Photos

    Previous :

    next :
      articles connexes
    ·Les bases MySQL pour les apprenants visuels 
    ·Comment programmer PHP avec votre MacBook 
    ·Comment savoir requêtes SQL 
    ·Comment faire pour convertir les fractions en PHP 
    ·Comment faire pour exécuter les contrôles ActiveX ave…
    ·Comment faire un Mailer formulaire PHP Auto redirige ve…
    ·Comment envoyer un SMS avec un script PHP 
    ·JavaScript: Comment obtenir une requête MySQL via PHP 
    ·Comment convertir le texte à moyen et JPG en PHP 
    ·Comment requête MySQL par Content Durée 
      articles en vedette
    ·Comment faire pour augmenter la taille du segment pour …
    ·Puis-je utiliser le codage PHP avec un éditeur HTML co…
    ·Comment faire pour modifier les fonctions dans VB6 
    ·Comment se convertir à booléenne en Python 
    ·Comment séparer un fichier /etc /passwd avec AWK 
    ·TI83 plus Programming Guide 
    ·Comment utiliser un tas Skew en Java 
    ·Comment utiliser les ports COM dans Visual C 
    ·Visual Basic pour Applications pour les débutants 
    ·Tutoriel de verrou de ligne dans MySQL 
    Copyright © Connaissances Informatiques http://fr.wingwit.com