begin process at 2012 02 15 05:31:45
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > CAMEMBERT 2D/3D

CAMEMBERT 2D/3D


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Classé sous :camembert, fromage, statistique, image, dynamique Niveau :Initié Date de création :04/05/2008 Date de mise à jour :04/05/2008 21:45:01 Vu / téléchargé :11 008 / 735

Auteur : softwareds

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Cette classe php permet de générer un camembert en 2D ou en 3D. L'image est au format PNG.
Ci-dessous un script qui utilise cette classe.

Source

  • <?php
  • # Camembert 2D/3D - 03/05/2008 - (C)2008 www.Software-DS.com
  • # Demo en ligne : http://www.software-ds.com/PHP/Camembert-2D-3D/demo-camembert.php
  • require("camembert.php"); # on charge la classe camembert
  • $camembert = new camembert(); # initialisation
  • # on peut utiliser une requete SQL pour alimenter le tableau
  • $camembert->add_tab( 37, "IE" );
  • $camembert->add_tab( 25, "Firefox" );
  • $camembert->add_tab( 5 , "Safari" );
  • $camembert->add_tab( 1 , "Autres" );
  • $camembert->add_tab( 10, "Mozilla" );
  • $camembert->add_tab( 4 , "Bot" );
  • $camembert->add_tab( 6 , "Google" );
  • $camembert->add_tab( 8 , "iPhone" );
  • $camembert->add_tab( 4 , "Opera" );
  • $camembert->trier_tab(); # Facultatif, les donnees sont triees dans l'ordre decroissant
  • # $camembert->affiche_tab(); # Debug
  • # on genere l'image au format PNG
  • $camembert->stat2png(3, 15); # 1er argument (2 ou 3 pour la 2D ou la 3D) - 2eme argument hauteur en pixel de l'effet 3D (mettre quelque chose meme pour la 2D)
  • ?>
<?php
# Camembert 2D/3D - 03/05/2008 - (C)2008 www.Software-DS.com
# Demo en ligne : http://www.software-ds.com/PHP/Camembert-2D-3D/demo-camembert.php

 require("camembert.php"); # on charge la classe camembert
  
 $camembert = new camembert(); # initialisation

 # on peut utiliser une requete SQL pour alimenter le tableau
 $camembert->add_tab( 37, "IE" );
 $camembert->add_tab( 25, "Firefox" );
 $camembert->add_tab( 5 , "Safari" );
 $camembert->add_tab( 1 , "Autres" );
 $camembert->add_tab( 10, "Mozilla" );
 $camembert->add_tab( 4 , "Bot" );
 $camembert->add_tab( 6 , "Google" );
 $camembert->add_tab( 8 , "iPhone" );
 $camembert->add_tab( 4 , "Opera" );

 $camembert->trier_tab(); # Facultatif, les donnees sont triees dans l'ordre decroissant
 # $camembert->affiche_tab(); # Debug
 
 # on genere l'image au format PNG
 $camembert->stat2png(3, 15); # 1er argument (2 ou 3 pour la 2D ou la 3D) - 2eme argument hauteur en pixel de l'effet 3D (mettre quelque chose meme pour la 2D)

?>

 Conclusion

Le script nécessite la librairie graphique GD.
Les sources sont commentées.
Une démo en ligne est disponible à l'adresse : http://www.software-ds.com/PHP/Camembert-2D-3D/dem o-camembert.php

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

04 mai 2008 00:43:11 :
Changement du zip
04 mai 2008 21:43:33 :
Misa à jour zip, cette fois il ne devrait plus y avoir de ligne parasite au début et à la fin des scripts.
04 mai 2008 21:45:01 :
Le zip devrait être bon cette fois (sans ligne parasite dans les sources)

 Sources de la même categorie

Source avec Zip Source avec une capture CAMEMBERT BD par dardelphi
Source avec une capture AMÉLIORATION : CAMEMBERT par asphator
GESTION DE COULEUR par manuche
Source avec Zip NAVIGATOR (+CSSDETECTOR) par xXVoxPopuliXx
COMMENT, AVEC GD, DESSINER UN RECTANGLE TRANSPARENT PLEIN AV... par Rainbow

 Sources en rapport avec celle ci

CRÉER UNE IMAGE À PARTIR DU TEXTE par dilar
Source avec une capture GÉNÉRER UNE PROGRESSBAR (BARRE DE PROGRESSION) EN FORMAT IMA... par Tioneb
Source avec Zip Source avec une capture STATISTIQUE GRAPHIQUE (COMPOSANT ARTICHOW) par crazygogo
GRAPHIQUE EN DYNAMIQUE par dark_naruto25
Source avec une capture CRÉATION D'UNE IMAGE DE STATISTIQUE : LE CAMEMBERT par wizard512

Commentaires et avis

Commentaire de bentom32390 le 04/05/2008 21:20:51

pour tes source il y a des ligne qui fait des bugs et qui empêche de faire fonctionner le script sur les serveurs

Commentaire de softwareds le 04/05/2008 21:47:12

Merci, c'est corrigé maintenant.

Commentaire de opossum_farceur le 05/05/2008 01:17:09

Salut,

Un peu dommage que l'on ne puisse pas alimenter le camembert avec des couleurs perso, toujours plus intéressantes que celles générées par un algorithme, aussi élaboré soit-il.
D'autre part je vois que ton camembert 3D est consitué d'un empilement de camemberts 2D, ce qui n'est pas très raisonnable du point de vue des performances et peu satisfaisant du point de vue de l'algorithme.

A++

Commentaire de softwareds le 06/05/2008 22:33:45

En effet, je suis d'accord avec le fait que ça aurait été peut être plus intéressant de laisser à l'utilisateur le choix des couleurs (ça permet de justifier le niveau initiés pour ce source, il suffit de l'adapter).

Pour l'empilement 2D, c'est tout à fait exacte. Mais mon objectif était d'obtenir une image 3D sans m'embêter avec des formules avec cos et sin. Pour ce qui est des performances, je pense que ce n'est pas très grave vu que le script ne doit être exécuté qu'une seule fois, le webmaster doit mémoriser l'image créée par le script et utiliser cette image sur son site web et ne pas utilisé directement le script pour affiché l'image pour chaque visiteur (peu importe, la consommation en ressource et l'optimisation du script, cela doit être vrai pour tous les scripts qui génère des images dynamiquement, il faut toujours penser à mettre en cache le maximum de chose).


Commentaire de opossum_farceur le 07/05/2008 01:15:15

Salut,

Ah bon, tu ne recalcules pas ton camembert à chaque nouveau visiteur?, mais alors, tes stats ne sont pas à jour!
Tu sembles par ailleurs estimer que les performances d'un script, c'est secondaire, je ne suis pas d'accord, c'est souvent en optimisant du code que l'on trouve des solutions inédites et que finalement on apprend le plus.

A++

Commentaire de softwareds le 07/05/2008 09:02:27

En effet, le camembert est calculé une fois par jour avec les résultats de la veille qui sont fixe (donc il est inutile de de refaire les calculs à chaque fois).

Pour moi il y a 2 types de script, celui du back office qui n'a pas besoin d'être super optimisé vu qu'il sera exécuté 2-3 fois par jour par le webmaster dans la partie admin et les scripts du site web en acces libre qui sont exécuté des milliers de fois par jours par les visiteurs et les robots qui visitent le site. Pour moi mon source doit être intégré dans un back office.

Commentaire de masternico le 08/05/2008 00:46:46

Salut,
je me demande lequel est le plus gourmand en ressources? l'empilage de cercles 2D (donc identiques) ou le calcul à la volée de chaque portion de camembert?

Commentaire de opossum_farceur le 08/05/2008 20:16:10

Salut,

Le temps mis pour empiler des camemberts 2D est fonction du nombre de ceux-ci; pour un camembert façon "pizza" comme celui de cet article, et qui est constitué de 15 couches, le temps ne doit pas être encore trop prohibitif, mais pour un camembert avec une vraie épaisseur de camembert, avec par exemple 30 ou 40 couches, il devient urgent de trouver une autre méthode (quitte à se farcir s'il le faut des sin et des cos!).

Une autre technique possible est développée dans la source d'adresse :
http://www.phpcs.com/codes/CAMEMBERTS-3D_34131.aspx
dont le temps d'exécution est indépendant de l'épaisseur du camembert.

A++

Commentaire de jeromei le 11/06/2008 09:08:04

Bonjour,

quelqu'un peut il m'aider pour l'installation du script?

j'ai mit camembert.php et startCamembert.php à la racine de mon site et j'ai n'importe quoi quand j'appelle ma page
http://jeromei.phpnet.org/Copie de travail/startCamembert.php

voila ce que ça me met:

startCamembert.php?????????????????????????????????????????????TEXTR*ch????????????Þ??~¾RÄB|??mBIN????????????????,j#?????????????????????????????????????????L???L???2???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????H? Monaco?????????????????????????????,?¥,a?,?¥,a¿Ìøc??????????????L???L???2?¤Ñ????2??MPSR??? íÿÿ?????âì??

Commentaire de GillesWebmaster le 02/08/2008 16:23:01 9/10

problème de headers!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

PB d'envoi d'images dynamiques !!! [ par MangaII ] Coucou a tous !Bon, voilà mon soucis !Qd on créé un image dynamique en php, avec imagecreate ..., on fini tjs par l'envoyer au navigateur avec imagejp Créer une image dynamique [ par stratege78 ] Salut à tous,Débutant en phpBB et tout ce qui y touche de près ou de loin, je ne connais pas trop les possibilités que nous offre phpbb. Un membre m'a Génération dynamique d'image gif [ par spardo ] Bonjour Voil&#224;, je dois trouver un script qui puisse g&#233;n&#233;rer des images param&#232;trables comme changer la couleur, la police, la tail Rafraichir une page [ par niko14 ] Hello everybody!!Voila le bin's!!En fait voila, j'ai une page ou on choisit un type de budget et on valide!Qd on a valid&#233; on arrive sur une page GEstion dynamique vidéo [ par zzzzzz ] Bonjour, Alors voila j'aimerai pouvoir laisser libre access &#224; mes membres pour qu'ils puissent ajouter leurs propre vid&#233;os, seulement voi transparence des Images dynamique... [ par kroland ] BONSOIR A TOUS Voil&#224; je suis en train de cr&#233;&#233; un service de compteur graphique (http://www.chezdavid.tk) (qui utilise le proc&#233;d&# Insertion d'image dynamique [ par Licorne974 ] je souhaiterais savoir si il y a un petit script php par là !qui permettrais dans la saisie d'un formulaire d'insérer 2 photos qui se trouve sur mon d Recadrage dynamique [ par wacha ] Bonjour,Je suis a la recherche d'une fonction permettant de recadrer dynamiquement une image.Je m'explique, lorsqu'une personne uploadera une image de Image Dynamique + Font + Dégradé [ par Marshall_Mathers ] Bonjour à tous :)Je suis assez novice en création d'image dynamique...Je souhaiterai pouvoir générer un *.png (comme ci-dessous) à partir d'une variab Compte à rebours sur image dynamique [ par Piouxel ] Je sais que ça fait complètement jacky ou mémère, mais je veux savoir comment ça marche. Donc pour en venir au sujet : comment faire ces petits compt


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,480 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales