Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2210 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  C#, GDI+, DrawCurve, Spline

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

C#, GDI+, DrawCurve, Spline

n°1395011
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 26-06-2006 à 15:09:56  profilanswer
 

Bonjour à tous  :hello:  
 
J'ai une méthode "old school" pour faire des cardinal spline (ce sont en gros des courbes lissées passant par une liste de points de contrôle). Cette méthode calcule tous les points intermédiaires avec une certaine précision (par exemple : entre 2 points de contrôle on calcule 200 points intermédiaires) puis on fait plein de DrawLine, ce qui nous donne une impression de courbe plutôt bonne.
 
En C#/GDI+, si on fait un DrawCurve ou un DrawClosedCurve avec un tableau de Point, et qu'on ajuste le "coefficient de tension" (l'un des arguments de ces méthodes) on obtient exactement la même chose ! Donc on peut se contenter d'un bête appel à DrawCurve au lieu de faire tous les calculs soi-même  :love: Voilà une API qu'elle est bien.
 
Mais maintenant pour détecter si on est en train de clicker sur cette courbe, comment faire ? Parce qu'avant, j'avais accès à tous les points intermédaires, c'était facile de vérifier si le point clické était proche de la courbe ou pas. Maintenant, vu que GDI+ fait l'affichage tout seul, il ne me reste que les points de contrôle.
 
Dois-je continuer à tout faire à la main ? J'aurai bien voulu que les splines de GDI+ soient de vrais objets mathématiques mais on dirait que ce ne sont que des représentations graphiques (je ne trouve rien dans la MSDN)
 
Une idée peut-être ?
Merci d'avance.  :jap:


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
mood
Publicité
Posté le 26-06-2006 à 15:09:56  profilanswer
 

n°1395225
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 26-06-2006 à 18:52:24  profilanswer
 

un petit up (au cas ou j'aurai raté un truc dans la doc, genre l'existence d'un objet CardinalSpline :D)


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°1399248
_Mose_
Lonesome coder
Posté le 03-07-2006 à 11:33:37  profilanswer
 

Si ta méthode "old school" peut te permettre de savoir, pour une abscisse donnée, l'ordonnée du point de la courbe, alors sert-en pour détecter les clicks sur la courbe.
Derrière DrawCurve, s'il y a des objets mathématiques, ils sont bien cachés.
 
Sinon par la bidouille : tu dessines ta courbe avec une couleur spécifique, et quand tu click, il suffit de vérifier la couleur du pixel clické pour savoir si ton utilisateur à clické sur la courbe :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  C#, GDI+, DrawCurve, Spline

 

Sujets relatifs
Gestion de jobs d'impression (GDI)[C# - GDI] Rendre une suite de ligne transparente
[C#] GDI : Redessiner une partie de la fenêtre sur OnPaintCubic Spline
[GDI / MFC] Clipping ![GDI / GDI+] Je craque!!!
Charger et afficher des images compréssées avec GDI + MinGW (Dev-cpp)Spline avec JPGraph
Question de GDI et de bitmapeconomiser des handles sur des objets GDI
Plus de sujets relatifs à : C#, GDI+, DrawCurve, Spline


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)