Dessiner Graphes

CeetixCeetix Membre
10:01 modifié dans API UIKit #1
Salut !

voilà , en ce moment je vois les graphes en cours et en C et j'aimerai pouvoir les travailler sur l'iphone de facon graphique.
J'aimerai donc dessiner mes ligne et cercle avec information dedans (ponderation etc ...).
J'aimerai aussi que l'on puisse, quand l'user moved un cercle avec son doigt, que le graphe se déplace avec une petit effet de ballancier élastique autour de mon doigt. Je me demandais donc par quel code passer our dessiner et animer.
J'ai fait ça manuellement mais je pense etre sur la mauvause voie ... :

- (void)drawRect:(CGRect)rect {<br />	CGContextRef context = UIGraphicsGetCurrentContext();<br /><br />	<br />	CGContextBeginPath(context); // On commence a tracé une ligne<br />	CGContextMoveToPoint(context, 200, 100);<br />	CGContextAddLineToPoint(context, 46,108);<br />	CGContextClosePath(context);<br />	<br />	[[UIColor whiteColor] setStroke];<br />	CGContextDrawPath(context, kCGPathFillStroke); // Fin de la ligne<br />	<br />	CGContextSetRGBStrokeColor(context, 0, 0, 0.153, 1); // 1er noeud<br />	CGContextStrokeEllipseInRect(context, CGRectMake(10, 90, 36, 36));<br />	<br />	CGContextSetRGBStrokeColor(context, 0, 0, 0.153, 1); // 2eme noeud<br />	CGContextStrokeEllipseInRect(context, CGRectMake(200, 80, 36, 36));<br />	<br /><br />	<br />}


Merci pour votre aide ;)

Réponses

  • Philippe49Philippe49 Membre
    10:01 modifié #2
    Récursivité ...

    retour : zone utilisée = dessiner fils gauche
    retour : zone utilisée = dessiner fils droit dans telle zone
    dessiner le noe“ud
  • CeetixCeetix Membre
    10:01 modifié #3
    Le truc c'est que apres comment tu fais pour bouger le tout, l'animer ,etc .. ?
    Et un graphe possede n fils ...
  • Philippe49Philippe49 Membre
    10:01 modifié #4
    Il faudrait que tu précises le type de graphe dont il s'agit, le type de représentations voulues, le fait qu'il varie ou non dans son contenu , etc ...

  • Philippe49Philippe49 Membre
    10:01 modifié #5
    En fait si je comprends entre les lignes , il me semble que ton problème ressemble à  celui de GreenSource à  savoir un catalogue de vues ou de dessin sur l'écran que tu entends voir réagir au touchMoved .

    La solution que donne Aligator dans ce post, associée à  la bonne gestion du touchMoved sur la vue devrait faire l'affaire.
  • CeetixCeetix Membre
    10:01 modifié #6
    Oh yes ça m'a l'air d'être ça. J'ai mal cherché sorry.
    Sinon combien de vue on peut gérer en même temps? Si j'ai 30 noeud ca fait 30 vues, c pas un peu bcp?
  • Philippe49Philippe49 Membre
    10:01 modifié #7
    Avec iPhone, il faut être économe et les UIView prennent de la place.
    Donc si tu peux gérer les zones écran en CGPathRef  et non pas en UIView cela sera sans doute plus léger. A la vue principale ensuite de répondre aux touches et de détecter quelle zone veut bouger l'utilisateur.

    Il va y avoir des conflits à  gérer.
  • Philippe49Philippe49 Membre
    10:01 modifié #8
    Evidemment rien ne t'empêche de créer une classe légère pour représenter une zone et gérer un tableau de  zones dans le view controller principal.
  • CeetixCeetix Membre
    10:01 modifié #9
    Ok merci pour tes précisions Philippe. Je vais voir tout ça :)
Connectez-vous ou Inscrivez-vous pour répondre.