GRAPHIQUE EN TEMPS RÉEL (AVEC LISSAGE DES COURBES ET ANTIALIAS)
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 2009
-
11 août 2006 à 20:09
Whismeril
Messages postés18991Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention27 mars 2024
-
25 déc. 2017 à 09:14
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
salut je n'arrive pas à ouvrir votre projet sur mon ordi
Adn56
Messages postés1172Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention28 septembre 20131 6 mars 2009 à 19:00
@ mad :nannan ya des source pour VB/C/C++, mais bon passons puisque nous ne sommes plus étudiant ^^
@ amoniaque : ok, donc pour les non INE pas moyen, bon spa grave ^^
OUPS, erreur de lecture lorsque je parle de XP je pensais expérience ^^ pas l'os windoze lol, dsl pour la méprise . My bad Expérience whit NI ? ben c'est simple je cherchais pour mon taff d'automaticien un revendeur de solution d'I/O tor et ana sur PC et donc je les ai contacté...Je me suis fais gentilement boté en touche car je n'avais aucun 'avenir' pour eux ! Donc ....comercialement à chier, car depuis je développe plein d'appli indus sans eux avec des cartes 'free' comme la VM110 de velleman qui ne coute rien (enfin 50€ mais bon ...)
Et voila pour la petite histoire ;)
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 6 mars 2009 à 18:21
Je parlais de ma source > elle est faite pour VB6. A moins que je me trompe, la version de NI marche pour VB.net
amoniaque
Messages postés20Date d'inscriptionvendredi 23 novembre 2007StatutMembreDernière intervention 7 avril 2009 6 mars 2009 à 17:49
Ouais je suis d'accord, c'est très cher !
Autant d'un point de vu logiciel que matériel ... Ce n'est vraiment pas donné ! J'ai la chance de travailler pour des clients qui ne veulent que du NI (pérennité du matériel ...) donc je peux me faire plaisir au travail !
Tu as eu quoi comme genre de problème avec XP et NI ?!
Pour ce qui est de la version de démo il faut que tu sois étudiant ... A partir là il suffit de contacter NI avec ton n° INE et tu auras droit à une licence d'un an.
Chose que j'ai faite pour mon année de licence ! Et j'ai eu droit à un joli CD avec un petit manuel. ET pareil pour LabView.
++
amoniaque
Messages postés20Date d'inscriptionvendredi 23 novembre 2007StatutMembreDernière intervention 7 avril 2009 6 mars 2009 à 17:33
Et aussi VC# .net, VB6, et VC++6 ...
Adn56
Messages postés1172Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention28 septembre 20131 6 mars 2009 à 17:22
dsl pour le double post mais voila on ne peut toujours pas éditer nos messages :/
//Measurement Studio for Visual Studio 2003/2005/2008 Evaluation
Download this 30-day evaluation of Measurement Studio for Visual Studio .NET 2003/2005/2008* to create powerful test and measurement applications.
Complétez le formulaire ci-dessous pour continuer ou connectez-vous avec votre profil sur la droite
//
si tu as un lien pour la version démo je veux bien essayer LOL
++
Adn56
Messages postés1172Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention28 septembre 20131 6 mars 2009 à 17:16
@ MadM@tt : ton ocx fonctionne trés bien en VB.NET ;) sinon je l'utiliserai pas :p Donc encore merci !
@ amoniaque : je n'ai pris le temps de lire que c'était gratos pour les particuliers ! donc DSL.
Je reste sur une image trés désagréable de NI ! c'est perso et cela vient de mon XP au taff, donc rien à voir avec ton post :)
Mais je vais tout de m^me l'essayer pour voir, je sais qu'ils font du bon boulot, mais commercialement il se la péte et j'ai horreur de ça !
@++ [mode pourissage de topic = false]
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 6 mars 2009 à 15:46
De toute façon c'est pour VB.Net
amoniaque
Messages postés20Date d'inscriptionvendredi 23 novembre 2007StatutMembreDernière intervention 7 avril 2009 6 mars 2009 à 15:41
Excuse moi d'avoir pu apporter une idée à la chose ...
La version de démonstration pour étudiant est gratuite (il y a juste le logo de NI qui indique que c'est une version de démo !) C'est comme ça que j'ai découvert cette suite et contrairement à ce que tu crois, ça n'a rien de réservé aux professionnels (hormis le prix exorbitant je te l'accorde!). Ça a surtout le gros avantage de donner quelque chose de propre, simple à utiliser et implanter et ceci rapidement (à part pour les prog. personnelles, le temps est important non?!).
A chacun sa manière de faire après tout...
Adn56
Messages postés1172Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention28 septembre 20131 6 mars 2009 à 12:37
Déja pour le plaisir d'apprendre à le faire soi même Mais aussi (et surtout) pour ne pas payer 500€ pour un outil réservé au proféssionel !
amoniaque
Messages postés20Date d'inscriptionvendredi 23 novembre 2007StatutMembreDernière intervention 7 avril 2009 6 mars 2009 à 11:05
Bonjour à vous,
Je n'ai pas lu tous les commentaires donc peut être que l'idée à déjà été posée mais National Instruments "offre" des controls du genre (et bien d'autres!) dans leur suite Measurement Studio (dans mon cas j'utilise la version 8.1 pour VS2005 sous vb.Net).
Personnellement je les utilise pour le boulot et ils fonctionnent super bien !
Adn56
Messages postés1172Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention28 septembre 20131 21 sept. 2007 à 16:35
ne soit pas dsl, grace à toi j'ai déja un datalogger qui tourne.
De plus je vais le refaire sous excel qui est tout de même plus apte à gerer des listes de valeurs ;)
Encore merci....
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 20 sept. 2007 à 14:18
Salut,
merci pour le commentaire, alors pour le quadrillage, ça devrait etre pas trop compliqué, si tu veux faire un quadrillage fixe. Dans ce cas la tu trace tes lignes verticales et horizontales à chaque fois que la courbe est dessinée. Si le quadrillage doit suivre le deplacement de la courbe c'est moins simple il te faudra décaler tes lignes verticales à chaque ajout d'une valeur au graphique.
Pour avoir 2 courbes c'est plus long que dur : ce controle n'est pas adapté pour faire ça, donc il faudrait revoir plein de choses pour faire ça. Sinon tu peux bricoler : tu duplique toutes les fonctions et le tableau des points de la courbe une deuxième fois (avec des noms différents) et donc à chaque fois que tu ajoute des valeurs il faut le faire pour les 2 courbes en faisant par exemple
Graphe.AddValue(ValeurCourbe1) -> ajoute au tableau des points de la courbe 1
Graphe.AddValue2(ValeurCourbe2) -> ajoute au tableau des points de la courbe 2
Pas rapidement fait quoi...
Pour l'epaisseur ça part contre je crois que c'est plus simple, il doit etre possible de parametrer la fonction que j'utilise pour tracer les traits pour changer l'epaisseur du trait.
Le problème c'est que j'ai rien le temps de faire en ce moment, donc je ne peux pas faire ça moi meme, ni aller regarder quelle fonction j'utilise pour tracer le trait et te dire quoi ajouter (je l'ai jamais fait en + donc je n'ai pas ça en tete). Je ne peux malheureusement que t'inviter à le faire toi meme.
Seulement si tu veux un vrai graphique pour 2 courbes avec quadrillage, la meilleure solution je pense serait soit de recréer un controle différent, soit de modifier en profondeur celui-ci.
Désolé de ne pas pouvoir t'aider plus, le temps me manque. Bon courage en tout cas et content d'avoir pu te fournir qqch d'utile.
A+
Adn56
Messages postés1172Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention28 septembre 20131 19 sept. 2007 à 15:50
salut, tout dabord bravo l'artiste ^^ ocx simple et efficasse !
Donc grand merci à toi car je ne savais pas par quel bout prendre ce probléme (je cherche à faire un datalogger, et grace à toi il est fini ^^)
Juste une chose ou deux si tu as 5minutes :
Peut-on implémenter facilement un quadrillage ?
Dur d'avoir deux courbes ?
possibilité de changer l'eppaisseur de la courbe ?
bon j'arrette là sinon vais me faire tapper ^___^
Encore merci pour ce travail ! ++
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 29 juin 2007 à 19:45
Merci ;)
Pour l'historique c'est risqué, c'est un coup à si l'utilisateur ne fait attention qu'il accumule les données jusqu'à un craquage de la mémoire :$. Donc je préfère laisser cette gestion à ceux qui savent qu'ils font, et en plus ça m'arrange :p (faineant sans frontière ^^)
ritchy01
Messages postés41Date d'inscriptionmardi 16 septembre 2003StatutMembreDernière intervention20 décembre 2009 29 juin 2007 à 18:42
Bonjour,
Tout simplement génial !
Simple et efficace, malgrés tout, il aurait été pratique que le nombre de saisies soit incrémentable afin de garder une bonne définition des valeurs instantanées tout en gardant l'historique.
Moi je donne un 10/10 :)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 16 août 2006 à 19:15
bien joué
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 16 août 2006 à 18:23
Source mise à jour
- C'est bon ^^, toutes les propriétés sont sauvegardées, plus aucun problème de ce coté.
(j'ai enlevé le On Error Resume Next)
- Suppression de la picturebox et des labels, maintenant tout se fait par dessin dans l'usercontrol (donc gain léger en mémoire)
- Le graphe aime maintenant les valeurs négatives (j'ai refait les calculs pour le coup)
- Les légendes marchent nickel maintenant
Merci Renfield ;)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 14 août 2006 à 21:25
les joies du
On Error Resume Next dans ReadProperties.
si tu le met en commentaire, ou que tu désactive la gestion d'erreur, tu aura une erreur :
"la valeur de deonnées Min est introuvable".
ajoutes simplement des valeurs par défaut.
"-Pourquoi c'est dommage que j'utilise une picturebox ? au pire ça fait perde un poil de mémoire, mais bon une picturebox c'est rien du tout"
oui et non, ca fait une fenêtre de plus, tu peux dessiner exactement de la même manière dans le Usercontrol, directement. Les labels 'legend' pourraient être supprimés. tu peux dessiner toi même les légendes, et éviter de charger décharger sans cesse tes labels (d'ailleurs, tu peux n'ajuster leur nombre que dans le Let NbValue)
tes legendes sont fausses : elles ne tiennent pas compte de lMin, qui peut être > 0
de plus, ton graph n'aime pas les valeurs négatives, semble-t'il.
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 14 août 2006 à 20:14
Source mise à jour.
Maintenant on peut choisir d'activer ou non le lissage des courbes.
Regardez la capture, j'ai fait une comparaison selon les 4 configuration d'apparence possibles.
Ma conclusion personnelle est la suivante :
Pour un moyen et grand graphique je conseille le lissage et l'antialias activés (il faut que j'améliore la rapidité de l'antialias encore)
Pour un petit graphique l'antialias et le lissage ne marchent plus trop (essayez de réduire la fenetre tout petit tout petit), alors je conseille d'activer seulement l'antialias (qui là mangera beaucoup moins de ressources car c'est petit), le lissage des courbes n'est plus visible de toute façon.
Renfield :
J'ai également rajouté les PropertyChanged, mais j'ai remarqué que pour Min et Max, les valeurs ne sont pas sauvegardées (meme avec PropertyChanged). J'ai essayé plein de trucs mais je ne comprend pas...
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 14 août 2006 à 09:37
dans tes property let/set, ajoutes simplement PropertyChanged "NbValue"
ca indiquera a VB quelles propriétés ont changé, et doivent être enregistrées.
(j'ai eu un soucis, une fois, avec une Font, qui n'était pas enregistrée).
joli, l'antialias.
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 12 août 2006 à 18:25
Ahhh ça y'est j'ai mis l'antialias, regardez la capture j'ai mis 2 fenetres pour comparer (possibilité de l'activer ou non).
Attention ça consomme des ressources, c'est pour ça que je suis sur l'optimisation des lignes antialias (cf http://www.vbfrance.com/code.aspx?ID=39079)
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 12 août 2006 à 18:09
Merci Renfield pour les suggestions. Alors
-Pour l'échelle logarithmique... chauuuud, faut être assez motivé la... Enfin si j'ai le temps j'y ferai car c'est vrai que ça a trop la classe ^^, tu peux voir super loin dans le temps.
-J'ai mis le Erase et reglé le problème de NbValues=0
-Merci pour les couleurs, je savais qu'on pouvait le faire mais pas comment
-Pourquoi c'est dommage que j'utilise une picturebox ? au pire ça fait perde un poil de mémoire, mais bon une picturebox c'est rien du tout ?
-Pour l'histoire du temps écoulé entre chaque ajout, je vois très bien ce que tu veux dire, mais la il faudrait que je modifie carrément tout mes tableaux et tout, alors que bon au final généralement on utilise un timer pour ajouter des valeurs en temps réel, donc sauf si l'intervalle est super petit, le temps reste sensiblement toujours le meme et ça ferait perdre bcp de temps de calcule et de mémoire pour si peu... Meme si c'est une bonne idée pour un controle se voulant etre + précis
-Euh je ne sais pas ce que c'est les PropertyChanged (evenement ? je l'ai pas trouvé)
-Pour la police du texte, c'est vrai, mais la position... ça fait + de boulot ^^ (crise de faineantise aujourd'hui lol)
Allé je me motive, je vais essayer d'intégrer ma dernière source sur l'antialiasing la dedans histoire de voir si c'est joli ^^
Merci
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 12 août 2006 à 15:05
Pas trop mal, mais j'ai quelques remarques, comme a mon habitude, lorsque je teste des Controles ^^
Une echelle logarithmique serait qq chose de sympatique, et permettrais d'avoir un peu plus "d'historique")
ReDim Values(0) As Long
=> Erase suffit
indice en dehors de la plage ou division par 0 lorsque l'on met NbValues a 0
mets tes propriétés de couleurs en OLE_COLOR, ca permettra d'avoir la palette
sinon, c'est pas trop mal... dommage que tu aies "besoin" d'un pictureBox,
dommage aussi que les points ajoutés ne tiennent pas compte de l'intervalle de temps passé depuis le dernier ajout (pas très clair, ce que je viens de dire là ^^)
il manque tous les PropertyChanged dans tes propriétés.
C'est important : et evitera que tu aies besoin de mettre "On Error Resume Next" dans ReadProperty.
J'ai mis mon TextColor en Rouge, et ca n'est pas pris en compte, en effet, dans ReadProperty, on voit :
lblTitle.ForeColor = ....
tu devrais utiliser tes propriétés ( Me.TextColor = .... )
on ne peux spécifier la police du texte, ni sa position.
le changement d'unité n'est pros en compte qu'au prochaine Refresh
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 12 août 2006 à 01:34
Merci à toi Jack, j'ai mis tes suggestions en oeuvre.
Maintenant la courbe est lissée, on peut afficher l'échelle, l'échelle s'adapte automatiquement au redimensionnement (ainsi que le nombre d'indicateur d'échelle affichés)
Pour les "indicateurs d'échelles", ils sont arrondis pour garder 3 chiffres significatifs et on peut leurs ajouter un suffixe (ici c'est % mais on peut mettre ms, A, ce que l'on veut)
Voilà, maintenant les calculs ne sont plus du tout aussi simple donc désolé les débutants mais ça sera plus difficile à comprendre. Voir la source de RDX si vous voulez bien voir le lissage des courbes.
Allé sur ce bonne nuit lol ;-)
et encore merci jack
Si quelqu'un trouve un bug ?? je suis interessé :)
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 11 août 2006 à 23:04
Oui, et pourtant j'étais persuadé que vbfrance en était plein à craquer donc je ne pensais pas poster cette source.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 11 août 2006 à 23:03
Salut
Bien vu. Il ne se passe pas une semaine sans que qqun demande après ce genre de controle.
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 11 août 2006 à 20:09
Bien sur dans la capture ça fait pas très précis, mais on peut augmenter le nombre de valeur à afficher pour augmenter la précision, et de plus j'ai créé des points aléatoirement pour l'exemple, donc c'est pas super joli.
25 déc. 2017 à 09:14
25 déc. 2017 à 08:28
6 mars 2009 à 19:00
@ amoniaque : ok, donc pour les non INE pas moyen, bon spa grave ^^
OUPS, erreur de lecture lorsque je parle de XP je pensais expérience ^^ pas l'os windoze lol, dsl pour la méprise . My bad Expérience whit NI ? ben c'est simple je cherchais pour mon taff d'automaticien un revendeur de solution d'I/O tor et ana sur PC et donc je les ai contacté...Je me suis fais gentilement boté en touche car je n'avais aucun 'avenir' pour eux ! Donc ....comercialement à chier, car depuis je développe plein d'appli indus sans eux avec des cartes 'free' comme la VM110 de velleman qui ne coute rien (enfin 50€ mais bon ...)
Et voila pour la petite histoire ;)
6 mars 2009 à 18:21
6 mars 2009 à 17:49
Autant d'un point de vu logiciel que matériel ... Ce n'est vraiment pas donné ! J'ai la chance de travailler pour des clients qui ne veulent que du NI (pérennité du matériel ...) donc je peux me faire plaisir au travail !
Tu as eu quoi comme genre de problème avec XP et NI ?!
Pour ce qui est de la version de démo il faut que tu sois étudiant ... A partir là il suffit de contacter NI avec ton n° INE et tu auras droit à une licence d'un an.
Chose que j'ai faite pour mon année de licence ! Et j'ai eu droit à un joli CD avec un petit manuel. ET pareil pour LabView.
++
6 mars 2009 à 17:33
6 mars 2009 à 17:22
//Measurement Studio for Visual Studio 2003/2005/2008 Evaluation
Download this 30-day evaluation of Measurement Studio for Visual Studio .NET 2003/2005/2008* to create powerful test and measurement applications.
Complétez le formulaire ci-dessous pour continuer ou connectez-vous avec votre profil sur la droite
//
si tu as un lien pour la version démo je veux bien essayer LOL
++
6 mars 2009 à 17:16
@ amoniaque : je n'ai pris le temps de lire que c'était gratos pour les particuliers ! donc DSL.
Je reste sur une image trés désagréable de NI ! c'est perso et cela vient de mon XP au taff, donc rien à voir avec ton post :)
Mais je vais tout de m^me l'essayer pour voir, je sais qu'ils font du bon boulot, mais commercialement il se la péte et j'ai horreur de ça !
@++ [mode pourissage de topic = false]
6 mars 2009 à 15:46
6 mars 2009 à 15:41
La version de démonstration pour étudiant est gratuite (il y a juste le logo de NI qui indique que c'est une version de démo !) C'est comme ça que j'ai découvert cette suite et contrairement à ce que tu crois, ça n'a rien de réservé aux professionnels (hormis le prix exorbitant je te l'accorde!). Ça a surtout le gros avantage de donner quelque chose de propre, simple à utiliser et implanter et ceci rapidement (à part pour les prog. personnelles, le temps est important non?!).
A chacun sa manière de faire après tout...
6 mars 2009 à 12:37
6 mars 2009 à 11:05
Je n'ai pas lu tous les commentaires donc peut être que l'idée à déjà été posée mais National Instruments "offre" des controls du genre (et bien d'autres!) dans leur suite Measurement Studio (dans mon cas j'utilise la version 8.1 pour VS2005 sous vb.Net).
Personnellement je les utilise pour le boulot et ils fonctionnent super bien !
Voyez par vous même ce à quoi ça peut ressemble :
http://zone.ni.com/devzone/cda/tut/p/id/4807
Cordialement,
J
21 sept. 2007 à 16:35
De plus je vais le refaire sous excel qui est tout de même plus apte à gerer des listes de valeurs ;)
Encore merci....
20 sept. 2007 à 14:18
merci pour le commentaire, alors pour le quadrillage, ça devrait etre pas trop compliqué, si tu veux faire un quadrillage fixe. Dans ce cas la tu trace tes lignes verticales et horizontales à chaque fois que la courbe est dessinée. Si le quadrillage doit suivre le deplacement de la courbe c'est moins simple il te faudra décaler tes lignes verticales à chaque ajout d'une valeur au graphique.
Pour avoir 2 courbes c'est plus long que dur : ce controle n'est pas adapté pour faire ça, donc il faudrait revoir plein de choses pour faire ça. Sinon tu peux bricoler : tu duplique toutes les fonctions et le tableau des points de la courbe une deuxième fois (avec des noms différents) et donc à chaque fois que tu ajoute des valeurs il faut le faire pour les 2 courbes en faisant par exemple
Graphe.AddValue(ValeurCourbe1) -> ajoute au tableau des points de la courbe 1
Graphe.AddValue2(ValeurCourbe2) -> ajoute au tableau des points de la courbe 2
Pas rapidement fait quoi...
Pour l'epaisseur ça part contre je crois que c'est plus simple, il doit etre possible de parametrer la fonction que j'utilise pour tracer les traits pour changer l'epaisseur du trait.
Le problème c'est que j'ai rien le temps de faire en ce moment, donc je ne peux pas faire ça moi meme, ni aller regarder quelle fonction j'utilise pour tracer le trait et te dire quoi ajouter (je l'ai jamais fait en + donc je n'ai pas ça en tete). Je ne peux malheureusement que t'inviter à le faire toi meme.
Seulement si tu veux un vrai graphique pour 2 courbes avec quadrillage, la meilleure solution je pense serait soit de recréer un controle différent, soit de modifier en profondeur celui-ci.
Désolé de ne pas pouvoir t'aider plus, le temps me manque. Bon courage en tout cas et content d'avoir pu te fournir qqch d'utile.
A+
19 sept. 2007 à 15:50
Donc grand merci à toi car je ne savais pas par quel bout prendre ce probléme (je cherche à faire un datalogger, et grace à toi il est fini ^^)
Juste une chose ou deux si tu as 5minutes :
Peut-on implémenter facilement un quadrillage ?
Dur d'avoir deux courbes ?
possibilité de changer l'eppaisseur de la courbe ?
bon j'arrette là sinon vais me faire tapper ^___^
Encore merci pour ce travail ! ++
29 juin 2007 à 19:45
Pour l'historique c'est risqué, c'est un coup à si l'utilisateur ne fait attention qu'il accumule les données jusqu'à un craquage de la mémoire :$. Donc je préfère laisser cette gestion à ceux qui savent qu'ils font, et en plus ça m'arrange :p (faineant sans frontière ^^)
29 juin 2007 à 18:42
Tout simplement génial !
Simple et efficace, malgrés tout, il aurait été pratique que le nombre de saisies soit incrémentable afin de garder une bonne définition des valeurs instantanées tout en gardant l'historique.
Moi je donne un 10/10 :)
16 août 2006 à 19:15
16 août 2006 à 18:23
- C'est bon ^^, toutes les propriétés sont sauvegardées, plus aucun problème de ce coté.
(j'ai enlevé le On Error Resume Next)
- Suppression de la picturebox et des labels, maintenant tout se fait par dessin dans l'usercontrol (donc gain léger en mémoire)
- Le graphe aime maintenant les valeurs négatives (j'ai refait les calculs pour le coup)
- Les légendes marchent nickel maintenant
Merci Renfield ;)
14 août 2006 à 21:25
On Error Resume Next dans ReadProperties.
si tu le met en commentaire, ou que tu désactive la gestion d'erreur, tu aura une erreur :
"la valeur de deonnées Min est introuvable".
ajoutes simplement des valeurs par défaut.
"-Pourquoi c'est dommage que j'utilise une picturebox ? au pire ça fait perde un poil de mémoire, mais bon une picturebox c'est rien du tout"
oui et non, ca fait une fenêtre de plus, tu peux dessiner exactement de la même manière dans le Usercontrol, directement. Les labels 'legend' pourraient être supprimés. tu peux dessiner toi même les légendes, et éviter de charger décharger sans cesse tes labels (d'ailleurs, tu peux n'ajuster leur nombre que dans le Let NbValue)
tes legendes sont fausses : elles ne tiennent pas compte de lMin, qui peut être > 0
de plus, ton graph n'aime pas les valeurs négatives, semble-t'il.
14 août 2006 à 20:14
Maintenant on peut choisir d'activer ou non le lissage des courbes.
Regardez la capture, j'ai fait une comparaison selon les 4 configuration d'apparence possibles.
Ma conclusion personnelle est la suivante :
Pour un moyen et grand graphique je conseille le lissage et l'antialias activés (il faut que j'améliore la rapidité de l'antialias encore)
Pour un petit graphique l'antialias et le lissage ne marchent plus trop (essayez de réduire la fenetre tout petit tout petit), alors je conseille d'activer seulement l'antialias (qui là mangera beaucoup moins de ressources car c'est petit), le lissage des courbes n'est plus visible de toute façon.
Renfield :
J'ai également rajouté les PropertyChanged, mais j'ai remarqué que pour Min et Max, les valeurs ne sont pas sauvegardées (meme avec PropertyChanged). J'ai essayé plein de trucs mais je ne comprend pas...
14 août 2006 à 09:37
ca indiquera a VB quelles propriétés ont changé, et doivent être enregistrées.
(j'ai eu un soucis, une fois, avec une Font, qui n'était pas enregistrée).
joli, l'antialias.
12 août 2006 à 18:25
Attention ça consomme des ressources, c'est pour ça que je suis sur l'optimisation des lignes antialias (cf http://www.vbfrance.com/code.aspx?ID=39079)
12 août 2006 à 18:09
-Pour l'échelle logarithmique... chauuuud, faut être assez motivé la... Enfin si j'ai le temps j'y ferai car c'est vrai que ça a trop la classe ^^, tu peux voir super loin dans le temps.
-J'ai mis le Erase et reglé le problème de NbValues=0
-Merci pour les couleurs, je savais qu'on pouvait le faire mais pas comment
-Pourquoi c'est dommage que j'utilise une picturebox ? au pire ça fait perde un poil de mémoire, mais bon une picturebox c'est rien du tout ?
-Pour l'histoire du temps écoulé entre chaque ajout, je vois très bien ce que tu veux dire, mais la il faudrait que je modifie carrément tout mes tableaux et tout, alors que bon au final généralement on utilise un timer pour ajouter des valeurs en temps réel, donc sauf si l'intervalle est super petit, le temps reste sensiblement toujours le meme et ça ferait perdre bcp de temps de calcule et de mémoire pour si peu... Meme si c'est une bonne idée pour un controle se voulant etre + précis
-Euh je ne sais pas ce que c'est les PropertyChanged (evenement ? je l'ai pas trouvé)
-Pour la police du texte, c'est vrai, mais la position... ça fait + de boulot ^^ (crise de faineantise aujourd'hui lol)
Allé je me motive, je vais essayer d'intégrer ma dernière source sur l'antialiasing la dedans histoire de voir si c'est joli ^^
Merci
12 août 2006 à 15:05
Une echelle logarithmique serait qq chose de sympatique, et permettrais d'avoir un peu plus "d'historique")
ReDim Values(0) As Long
=> Erase suffit
indice en dehors de la plage ou division par 0 lorsque l'on met NbValues a 0
mets tes propriétés de couleurs en OLE_COLOR, ca permettra d'avoir la palette
sinon, c'est pas trop mal... dommage que tu aies "besoin" d'un pictureBox,
dommage aussi que les points ajoutés ne tiennent pas compte de l'intervalle de temps passé depuis le dernier ajout (pas très clair, ce que je viens de dire là ^^)
il manque tous les PropertyChanged dans tes propriétés.
C'est important : et evitera que tu aies besoin de mettre "On Error Resume Next" dans ReadProperty.
J'ai mis mon TextColor en Rouge, et ca n'est pas pris en compte, en effet, dans ReadProperty, on voit :
lblTitle.ForeColor = ....
tu devrais utiliser tes propriétés ( Me.TextColor = .... )
on ne peux spécifier la police du texte, ni sa position.
le changement d'unité n'est pros en compte qu'au prochaine Refresh
12 août 2006 à 01:34
Maintenant la courbe est lissée, on peut afficher l'échelle, l'échelle s'adapte automatiquement au redimensionnement (ainsi que le nombre d'indicateur d'échelle affichés)
Pour les "indicateurs d'échelles", ils sont arrondis pour garder 3 chiffres significatifs et on peut leurs ajouter un suffixe (ici c'est % mais on peut mettre ms, A, ce que l'on veut)
Voilà, maintenant les calculs ne sont plus du tout aussi simple donc désolé les débutants mais ça sera plus difficile à comprendre. Voir la source de RDX si vous voulez bien voir le lissage des courbes.
Allé sur ce bonne nuit lol ;-)
et encore merci jack
Si quelqu'un trouve un bug ?? je suis interessé :)
11 août 2006 à 23:04
11 août 2006 à 23:03
Bien vu. Il ne se passe pas une semaine sans que qqun demande après ce genre de controle.
11 août 2006 à 20:09