Dessiner un arc de cercle autour d'une picturebox

cs_WindowsVista Messages postés 4 Date d'inscription jeudi 26 avril 2007 Statut Membre Dernière intervention 11 juin 2007 - 11 juin 2007 à 10:36
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011 - 20 juin 2007 à 13:43
Bonjour à tous,

Je vous expose ma situation :

je suis en VB 2005, j'ai créé une picturebox par le designeur de vb. Par programmation je crée une autre picturebox plus petite par dessus.

Ce que je voudrais pouvoir faire, c'est dessiner un arc de cercle autour de mes petites images créés par programmation. Je suis sûr qu'il doit y avoir moyen mais je ne vois pas et donc je vous solicite.

En vous remerciant par avance

3 réponses

jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 28
11 juin 2007 à 11:47
Lis donc ceci :

http://plasserre.developpez.com/v4-12.htm

Il te restera par contre (simple calcul arithmétique) à définir les coordonnées du rectangle qui, dans la grande picturebox, devra contenir ce cercle.


 
0
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 28
11 juin 2007 à 11:53
Petit coup de pouce géométrique, quand-même :
Ce rectangle devra avoir :
-  pour centre le point dont les coordonnées sont les coordonnées relatives de la picturebox à entourer
- comme hauteur : le double de la distance entre le centre de la picturebox à entourer et son point (en coordonnées de la petite picturebox) 0,0  (application simple du théorème de pythagore)
-comme largeur : la hauteur ainsi calculée multiplié par k =  hauteur/largeur
0
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
20 juin 2007 à 13:43
System.drawing
dedans ya de quoi utiliser le GDI+
avec la methode ".CreateGraphics()" tu peux recupérer la zone graphic d'un controle pour pouvoir dessinner dessus
dim grp as Graphics = pic.CreateGraphics()

grp.addArc(....)
via des "brush" (tracé particulier style pointillé ect ...) ou des "pen" (stylo simple : epaisseur/couleur)

par contre il faut le mettre dans l'evenement "Paint" de la picture box en question car c'est qu'un trait fait a la volé il n'y a rien d'enregistré donc il sera a redessiner a chanque fois

a partir de la tu peux utiliser le parametre "e" de l'evenement qui permet de recupérer direct l'objet graphic en question "e.graphics" je crois

lit la doc pour plus d'info la je l'ai pas a ma disposition
TeBeCo
0