DEBUTANT: ajouter des points de coordonnees differentes | |
Maomao | 9-Oct-2016/5:25:53+2:00 |
Bonjour a tous, J'essaye d'ajouter de facon dynamique des points sur un plan en utilisant R2 et draw. Je suis parti des examples ici: http://re-bol.com/rebol_crash_course.html#section-5.4 Avec ce code: pos: 150x50 view layout [ scrn: box 400x400 black effect [draw []] btn "Move Smoothly" [ loop 5 [ append scrn/effect/draw [circle pos 2] show scrn wait 0.5 pos/y: pos/y + 50 ] ] ] Mon probleme: je veux ajouter les points (cercles) au graphique mais a chaque refresh, seulement le dernier point est affiche (j'utilise pourtant "append"). Quelqu'un pourrait me filer un coup de main? Merci | |
Scureuil | 9-Oct-2016/19:58:08+2:00 |
Bonjour, si le block 'draw est bien évalué à chaque fois, les points seront par contre tous au même endroit, c'est à dire aux coordonnées correspondant à la dernière valeur de 'pos. Le block 'draw évolue ainsi: 1 -> [circle pos 2] 2 -> [circle pos 2 circle pos 2] 3 -> [circle pos 2 circle pos 2 circle pos 2] 4 -> [circle pos 2 circle pos 2 circle pos 2 circle pos 2] 5 -> [circle pos 2 circle pos 2 circle pos 2 circle pos 2 circle pos 2] => cinq cercles à la position 'pos. La solution est de fournir un block avec la valeur 'pos déjà évaluée: append scrn/effect/draw compose [circle (pos) 2] ce qui donnera: 1 -> [circle 150x50 2] 2 -> [circle 150x50 2 circle 150x100 2] 3 -> [circle 150x50 2 circle 150x100 2 circle 150x150 2] 4 -> [circle 150x50 2 circle 150x100 2 circle 150x150 2 circle 150x200 2] 5 -> [circle 150x50 2 circle 150x100 2 circle 150x150 2 circle 150x200 2 circle 150x250 2] => cinq cercles espacés de 50 pixels. | |
Maomao | 10-Oct-2016/5:10:53+2:00 |
Merci! | |
Login required to Post. |