2009-03-28 11 views
2

Je suis flex newbie, alors s'il vous plaît pardonnez-moi si je n'utilise pas les bons mots pour poser la question suivante. Je veux savoir s'il y a un moyen de dessiner un cercle qui montre un nombre, comme par exemple. Graduated Circles représentant son rayon pour montrer sa pertinence. Y at-il un composant qui le fait déjà, sinon quelle est la meilleure façon de le faire.Comment dessiner un cercle affichant un nombre en flex

merci.

Répondre

3

Voici un exemple rapide sur la façon dont vous pouvez le faire (à être continué à réaliser vos besoins particuliers)

package 
{ 
    import flash.text.TextFormatAlign; 
    import flash.text.TextField;  
    import flash.display.Sprite; 
    import flash.text.TextFormat; 

    public class LabeledCircle extends Sprite 
    { 
     private var textField:TextField; 

     public function LabeledCircle(radius:Number, label:String = "") 
     { 
      // Prepares the textField 

      var textFormat:TextFormat = new TextFormat(); 
      textFormat.align = TextFormatAlign.CENTER; 

      textField = new TextField(); 
      textField.defaultTextFormat = textFormat; 

      addChild(textField); 

      // Sets the default parameters 

      this.radius = radius; 
      this.label = label; 
     } 


     public function set radius(radius:Number):void 
     { 
      // redraws the circle 
      graphics.clear(); 
      graphics.beginFill(0x000000, .5); 
      graphics.drawCircle(0, 0, radius); 

      // recenters the textfield depending on the radius 
      textField.width = radius * 2; 
      textField.x = -radius; 
     } 


     public function set label(label:String):void 
     { 
      textField.text = label; 
     } 
    } 
} 
+0

remercie Theo.T, cela fonctionne comme un charme, juste ce dont j'avais besoin, merci encore. – Ashish

+0

Juste ce dont j'avais besoin aussi! – TWith2Sugars

1

Flare a un composant qui est similaire à l'exemple de cercle concentrique dans le lien que vous avez posté. Voir Mise en page> CirclePack dans le demo.

Je ne sais pas encore ce que vous entendez par "associer un nombre". Essayez this: Rendu de texte sur un chemin.

+0

Merci dirkgently, mais principalement je veux savoir comment associer un numéro à l'un des circ les, soit avec l'un des exemples pour lesquels j'ai donné un lien ci-dessus. – Ashish

+0

comme par exemple, je veux avoir quelque chose comme ça http://www.chicagocarto.com/images/quadcities.jpg, mais je voudrais avoir la taille du nombre d'être en proportion avec la taille du cercle. En passant par le lien que vous avez posté, on dirait que je devrais chercher comment intégrer des polices dans un cercle. – Ashish

+0

Oui, avec l'incorporation de polices, vous devrez les mettre à l'échelle en fonction de vos besoins. – dirkgently

0
  • Actionscript API Dessin - exemple here
  • Degrafa - cadre graphique qui rend l'API de dessin plus facile à utiliser et comprend une classe de cercle
Questions connexes