Tracer une courbe à partir de points (double) [Résolu]

Messages postés
2
Date d'inscription
mardi 8 janvier 2008
Statut
Membre
Dernière intervention
5 mars 2008
- - Dernière réponse : 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
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
43
3
Merci
Salut,
La structure Point ne gère que les entiers.
Il faut utiliser PointF pour avoir des floating point.

<hr />
-My Blog-

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 200 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Bidou
Messages postés
2
Date d'inscription
mardi 8 janvier 2008
Statut
Membre
Dernière intervention
5 mars 2008
0
Merci
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.
Commenter la réponse de cs_dark4