Tracer une courbe à partir de points (double)

Résolu
cs_dark4 Messages postés 2 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 5 mars 2008 - 17 févr. 2008 à 20:34
cs_dark4 Messages postés 2 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 5 mars 2008 - 5 mars 2008 à 17:57
bonsoir,
 mon problème est le suivant.
Je dois récupérer des coordonnées dans un fichier et tracer des courbes dans une application windows.form
Mais les points que j'ai ne sont pas des entiers,or la class point prédefini ne prends que des entiers.
J ai donc défini une autre class avec des  coordonnées en double.Mais pour recupere les points et faire le tracer ,j utlise la fonction

 gp.AddLines(points);
avec points defini par : Point[] points = ...tableau de points du fichier
et gp : GraphicsPath gp = new GraphicsPath();
Et a la complilation j ai l erreur suivante:
La méthode surchargée correspondant le mieux à 'System.Drawing.Drawing2D.GraphicsPath.AddLines(System.Drawing.PointF[])' possède des arguments non valides
erreur CS1503: Argument '1' : impossible de convertir de 'tracer.Form1.Pointa[]' en 'System.Drawing.PointF[]'.

Je ne peux donc pas utiliser Addlines avec ma classe point.QUe faire??
Pouvez vous m'aider?
Y'a t'il une manière plus judicieuse de faire?
merci d'avance

2 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
17 févr. 2008 à 21:41
Salut,
La structure Point ne gère que les entiers.
Il faut utiliser PointF pour avoir des floating point.

<hr />
-My Blog-
3
cs_dark4 Messages postés 2 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 5 mars 2008
5 mars 2008 à 17:57
Merci pour ta réponse.
En fait j ai défini une classe autre classepoint e j ai avancé dans le projet avec.
Mais là j' ai un problème.
En fait j ai des points dans un fichier stocké de la manière suivante
1,22  3,4
2,33  4,5
3,9   4,9

J aimerais les récupérer pour les convertir en PointfFjustement afin de pouvoir utiliser  les fonctions de cette classe  sur mes données.
Mais j ai beau essayer avec les membres de la classe typeconverter, rien n y fait.
Voilà un exemple de code  pour lequel j ai l erreur        /* conversion de typeconvert impossible a partir de System.string*/ ::::::::

ArrayList pointse= new ArrayList();
            TypeConverter converter = TypeDescriptor.GetConverter(typeof(System.Drawing.PointF));

            StreamReader sr = File.OpenText(txtFile);
            string line;
            while ((line = sr.ReadLine()) != null)
            {
                pointse.Add((System.Drawing.PointF)converter.ConvertFromString(line));
            }

            sr.Close();
            sr = null;

            return (System.Drawing.PointF[])pointse.ToArray(typeof(System.Drawing.PointF));

        }

Pouvez vous m aidez s'il vous plait,ca fait des jours que j y réfléchi sans succès.
0
Rejoignez-nous