Mesurer les pixels d'une image en cm

Résolu
mdegremo Messages postés 17 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 septembre 2011 - 7 août 2011 à 07:03
mdegremo Messages postés 17 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 septembre 2011 - 10 sept. 2011 à 08:37
Bonjour,
je recherhe des informations sur comment créer une règle en déplacant la souris pour mesurer la distance en cm entre 2 points dans une image(picturebox).
Si vous avez ou trouvez des infos, se serait très sympa.
Merci

13 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 août 2011 à 07:46
Bonjour,

En :
- relevant la position (coordonnées x0 et y0) de la souris au Mouse-down
- relevant la position (coordonnées x1 et y1) de la souris au Mouse-up
- en appliquant le thérorème de Pythagore

Ce que tu obtiendras ainsi sera bien évidemment une distance exprimée en unités logiques qui ,sont celles de ta picturebox (son scalemode), à transformer ensuite en cms.
Il te faudra bien entendu ensuite (à moins que l'image de ta picturebox de soit en taille réelle, ce qui m'étonnerait), appliquer à ton résultat un coefficient k dépendant, lui, de l'échelle de représentation de ton image (échelle que tu es censé connaître).

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
3
Utilisateur anonyme
8 août 2011 à 18:33
Salut,

si t'as choisi une résolution de 300 pixels par cm, ton image 12 cm X 12 cm fera 3600 pixels X 3600 pixels.
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
9 août 2011 à 10:14
Bonjour, acive

On ne pourra commencer à parler de transposition en cms qu'après le premier pas, sans lequel rien n'est envisageable : détermination de la distance en unités logiques de la picturebox
Or, le demandeur ne me parait pas avoir passé cette étape aussi simple qu'indispensable (si j'en juge par ses messages récents dans deux autres discussions similaires).

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
Utilisateur anonyme
9 août 2011 à 12:05
Bonjour UC,

Tout à fait, tu as raison et comme tu disais au début avec le Cursor.Position.X, Y et le mouse_down, up ça pourrait donner le résultat attendu.

Je voulais juste lui donner un ordre d'idée entre pixels et cms, et que ça dépends aussi de sa configuration vidéo.

Si j'ai le temps je ferais un bout de code dans la journée pour voir.

CF2i - Guadeloupe
Ingénierie Informatique
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
9 août 2011 à 12:10
Si j'ai le temps je ferais un bout de code dans la journée pour voir

OK, mais garde s'il te plait pour l'instant pour toi la première étape. Tout lui a été dit à ce sujet et il a même eu du plus précis dans les deux autres discussions qu'il est allé voir et où il est intervenu) !
A ce niveau : il en est à apprendre (hé oui, apparemment) les ... opérateurs mathématiques les plus simples !
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
Utilisateur anonyme
9 août 2011 à 12:18
Re:

Oui t'as encore raison, moi j'ai la fâcheuse habitude de faire les programmes directement et de leur montrer, comme ça moi aussi je suis sur que ça fonctionne aussi...

Mais l'autre jour je suis tombé sur un gars qui me disait: "Mon patron m'a demandé de faire..."
Et c'est là que j'ai tilté, ça veux dire "J'ai réussi à me faire embaucher, mais je n'y connais rien... aidez moi svp"


CF2i - Guadeloupe
Ingénierie Informatique
0
mdegremo Messages postés 17 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 septembre 2011
9 août 2011 à 17:41
Merci à vous,pour toutes ces infos.

"Pas de soucis, je ne suis pas informaticien, j'essaye juste de développer des petits utilitaires pour mes propres besoins".
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
9 août 2011 à 17:52
Mais nous n'avons aucun souci, mdegremo
Mais dès lors que, pour développer, tu t'y intéresses réellement, notamment par l'apprentissage du plus simple (les bases) et que pour toi, développer n'est pas simplement copier/coller.
Reviens avec ce que tu as pu mettre en oeuvre sur les bases de ce qui t'a été dit (même si non exact) et tu auras alors un "coup demain" de développeur à développeur.


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
mdegremo Messages postés 17 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 septembre 2011
9 août 2011 à 18:14
J'avais démarré avec ceci, mais je vais revoir ma copie ce week end !!

Public Class Form1

Private Declare Function key Lib "User32" Alias "GetAsyncKeyState" (ByVal Key As Keys) As Keys
Dim Count As Integer = 0

Private Sub points()

Dim PosX As Integer = PictureBox.MousePosition.X
Dim PosY As Integer = PictureBox.MousePosition.Y
Dim Point = "X: " & PosX & " Y: " & PosY
If Count = 1 Then
Label1.Text = Point
ElseIf Count = 2 Then
Label2.Text = Point

End If

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If key(Keys.LButton) Then
Count = Count + 1
points()
End If
If Count = 2 Then
Count = 0
End If
End Sub

End Class
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
9 août 2011 à 18:18
Que viendrait faire un timer dans cette affaire ?
Relis donc ce qui t'as été dit plus haut :
Tu as 2 évènements (un au mousedown, l'autre au mouseup) qui se déclenchent seuls (sans ton timer) et qui te permettent, l'un comme l'autre, de connaître les coordonnées X, Y de ta souris lors de leur déclenchement.



____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
parisots Messages postés 3 Date d'inscription lundi 25 avril 2011 Statut Membre Dernière intervention 17 août 2011
17 août 2011 à 22:59
Salut mdegremo,
A la vue des réponses.VBF confirme encore une fois la qualité de ces intervenants pour un forum.
0
sebguig34 Messages postés 3 Date d'inscription vendredi 9 septembre 2011 Statut Membre Dernière intervention 10 septembre 2011
10 sept. 2011 à 08:35
0
mdegremo Messages postés 17 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 septembre 2011
10 sept. 2011 à 08:37
Merci, mais j'essaie de mettre en pratique la methode de ucfoutu
0
Rejoignez-nous