Coordonnée d'un DrawEllipse

[Résolu]
Signaler
Messages postés
9
Date d'inscription
lundi 27 juillet 2009
Statut
Membre
Dernière intervention
13 janvier 2010
-
Messages postés
9
Date d'inscription
lundi 27 juillet 2009
Statut
Membre
Dernière intervention
13 janvier 2010
-
Bonjour, j'ai un souci pour dessiner un disque dans un picturebox.
Le repère est bien créer.


Dim A, B, C, D As Long
For i = 1 To 10 'Boucle For de 1 à 10
A = x(i) - (Math.Sqrt(m(i) / (Math.PI)))
B = y(i) - (Math.Sqrt(m(i) / (Math.PI)))
C = 2 * (Math.Sqrt(m(i) / Math.PI))
D = 2 * (Math.Sqrt(m(i) / Math.PI))
gphDessin.DrawEllipse(New Pen(Color.Red, 0.01), A, B, C, D)
Next

m(i) correspond à une surface d'un disque
x(i) une abscisse
y(i) une ordonnée

Le souci c'est que l'ellipse n'est pas dessiner ou il faut, donc j'aimerai savoir si pour les valeur de A,B on peut mettre des valeurs à virgule? Car j'ai remarqué que l'ellipse est toujours placé sur des chiffres rond alors que A et B vaut 0.438... pour i=1

5 réponses

Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
inutile de recalculer
Math.Sqrt(m(i) / Math.PI)

4 fois.

A, B, C et D sont des Long => donc des nombres entiers.

utilises par exemple Single, pour tester.


Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
c'est a dire qu'un pixel est un pixel ; dur d'en afficher qu'une moitié ^^


Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
10
Bonjour,

En plus de ce que t'a dit Renfield, il me semble que c'est du .NET et non du VB6. Non ?


Calade
Messages postés
9
Date d'inscription
lundi 27 juillet 2009
Statut
Membre
Dernière intervention
13 janvier 2010

J'utilise VB2008, c'est pas la moitié d'un pixel, loin de là.


J'obtiens le petit cercle rouge, alors que normalement je devrais avoir le cercle gris.
x(i),y(i) et m(i) ont pour valeur 1
Messages postés
9
Date d'inscription
lundi 27 juillet 2009
Statut
Membre
Dernière intervention
13 janvier 2010

Merci j'avais mal déclaré enfait!
Il suffisait juste de mettre en Single.