VB.Net Dessiner plusieurs croix dans un PictureBox

cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 11 sept. 2007 à 18:45
HansPrestat Messages postés 61 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 29 juin 2008 - 20 nov. 2007 à 23:42
Salut...

J'utilise un tableau contenant des points avec leurs coordonnées et je veux faire dessiner chaque point par une croix dans un picturebox.

Je réussi à faire dessiner qu'une seul croix et dans mon exemple que j'utilise j'ai 5 points, donc je devrais voir 5 croix...

Pouvez-vous me dire qu'est ce qui ne fonctuionne pas dans mon code... ????

Merci d'avance

Private
Sub BtnCercle_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles cmdDessin.Click

Dim objBitMap
As
New Bitmap(PictureBox1.Width, PictureBox1.Height)

Dim objGraphics
As Graphics

Dim MyPen
As
New Pen(Color.Black, 1)

Dim i
As
Integer
Dim CoordX
As
Single, CoordY
As
SingleobjGraphics = Graphics.FromImage(objBitMap)
objGraphics.Clear(Color.White)

For i = 0
To UBound(Tableau)
LigneSplit = Tableau(i).Split(Separateur)
CoordX = ((Convert.ToDouble(LigneSplit(2)) + 5000) / 1000)
CoordY = ((Convert.ToDouble(LigneSplit(1)) + 5000) / 1000)
objGraphics.DrawLine(MyPen, CoordX, CoordY - 2, CoordX, CoordY + 2) 'Dessiner la premiere ligne
objGraphics.DrawLine(MyPen, CoordX - 2, CoordY, CoordX + 2, CoordY)'Dessiner la deuxième ligne pour former une croix

Next i

Me.PictureBox1.Image = objBitMap
objGraphics.Dispose()
objGraphics =
Nothing

End
Sub

3 réponses

cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
11 sept. 2007 à 20:06
Re...

Est ce que objGraphics.DrawLine(MyPen, CoordX, CoordY - 2, CoordX, CoordY + 2)

Renvoi des Integer ou des Single... ????

CoordX et CoordY as Double
J'ai l'impression que DrawLine renvoi des Intger???

J'ai besoin d'un confirmation.....  Sur MSDN, c'ets un peu confu, pour moi...

merci de votre aide

P.S. si DrawLine renvoi des integer, c'est pour cela que j'ai l'impression que j'ai qu'une seul croix mais elles sont une par dessus l'autre mais si je mets en single, les croix ne devraient pas être une par dessus l'autre...
0
HansPrestat Messages postés 61 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 29 juin 2008
20 nov. 2007 à 23:40
Oulala tu vas chercher loin là...
Bon je dois dire que moi aussi j'ai cherché donc je vais t'éclairer avec le peu que je sais.

Tout d'abord une croix st défini par 2 traits qui sont eux-mêmes définis par 2 points chacun ce qui nous fait 4 point à déterminer avant tout. Comme suit:

'Tout d'abord il te faut définir un stylot avc le quel dessiner sans quoi ça dessine 'pas. Un stylo = couleur & épaisseur. D'où:
 
Dim nomDeStyloBizarreDeTonChoix As New Pen(Color.Blue, 2)

'Les coordonnées sont de type entier (Int32 plus exactement)
Dim point1 As Point(10, 5)
Dim point2 As Point(10, 15)
Dim point3 As Point(5, 10)
Dim point4 As Point(15, 10)

'g est le nom de ton graphique
g.DrawLine(point1, point2)
g.DrawLine(point3, point4)

'Si t'as toujours un soucis dessus post un mess

Un gros bisous à tous mes fans....
0
HansPrestat Messages postés 61 Date d'inscription vendredi 19 janvier 2007 Statut Membre Dernière intervention 29 juin 2008
20 nov. 2007 à 23:42
Oups j'ai oublié tu peux me semble-t-il utiliser les décimal pour tes points mais il faut au paravant mettre un Convert...

Un gros bisous à tous mes fans....
0
Rejoignez-nous