bonjour,
s'il veut plait, est ce quelqu'un connait une fonction qui me permet de séléctionner une portion d'image ( ainsi réccupére la premiére et la derniére position de la souris)
merci
bonjour,
s'il veut plait, est ce quelqu'un connait une fonction qui me permet de séléctionner une portion d'image ( ainsi réccupére la premiére et la derniére position de la souris)
merci
Qu'appelles-tu sélectionner ?
quoi???? j'ai pas compris votre question
aprés que j'affiche mon image , je veux sélectioneer une partie d'elle et sauvgarder en une autre formats par exemple
Y'a rien de base pour "sélectionner" une partie d'image.
Mais en API Win32, tu as BitBlt() qui peut copier une partie de l'image d'un DC vers un autre DC...
ds mon algorithe je veux cette fonction
voici l'ennoncé
Etape d'insertion
1. Sélectionner, selon une clé secrète pseudo aléatoire, une séquence de n paires de "pixels";
2. Modifier les valeurs de luminances de chaque paire de points (pi,qi) en (p'i,q'i) de la manière suivante,
p'i,= pi +1
q'i = qi + 1
Etape d’extraction
1. Récupérer, à l'aide de la clé secrète, la position des n pairs de points;
2. Calculer S,
S= la somme (1 => n) {pi' – qi')
...............
...........
BOOL BitBlt(
HDC hdcDest, // handle to destination device context
int nXDest, // x-coordinate of destination rectangle's upper-left
// corner
int nYDest, // y-coordinate of destination rectangle's upper-left
// corner
int nWidth, // width of destination rectangle
int nHeight, // height of destination rectangle
HDC hdcSrc, // handle to source device context
int nXSrc, // x-coordinate of source rectangle's upper-left
// corner
int nYSrc, // y-coordinate of source rectangle's upper-left
// corner
DWORD dwRop // raster operation code
);
est ce que je puisse lier ces coordonnées par la position de souris ( cursel)?,
Tu ne sais toujours pas ce que c'est que bien présenter du code, à ce que je vois...
Tu ne sais pas chercher non plus, on dirait...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 BOOL BitBlt( HDC hdcDest, // handle to destination device context int nXDest, // x-coordinate of destination rectangle's upper-left corner int nYDest, // y-coordinate of destination rectangle's upper-left corner int nWidth, // width of destination rectangle int nHeight, // height of destination rectangle HDC hdcSrc, // handle to source device context int nXSrc, // x-coordinate of source rectangle's upper-left corner int nYSrc, // y-coordinate of source rectangle's upper-left corner DWORD dwRop // raster operation code );
http://search.msdn.microsoft.com/sea...ursor+position
(ce n'est pas le premier lien, mais c'est un lien sur la page)
désolée
mon image source est affichée ds la position (0,0)
donc
c'est la premiére position de sours
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 int nXDest, // x-coordinate of destination rectangle's upper-left // corner int nYDest, // y-coordinate of destination rectangle's upper-left
et
retourne la derniére
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 int nWidth, // width of destination rectangle int nHeight, // height of destination rectangle
Je ne comprends pas ce que tu dis par "retourne" la dernière...
Tu ne peux pas juste traiter l'événement WM_LBUTTONDOWN pour accepter deux clics de souris pour les deux extrémités du rectangle à sélectionner ?
par exemple je clique sur la button sélectionner
donc je positionne la souris sur mon image ( se sont les premiéres coordonnées)
je reste cliquer ( par droit) sur la souris, dés que j'enléve mon main je dois rertourner ces derinéres coordonnées )
qui caractérisent les dimensions de mon rectangle
!!!!!!!!
Envoyé par Médinoc
j'utilise la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 void CImage::OnLButtonDown(UINT M_LBUTTONDOWN, CPoint point) { // TODO: Add your message handler code here and/or call default CRect aRect; CClientDC dc(this); CWnd* pTracer = dc.GetWindow(); pTracer->GetClientRect(&aRect); // TODO: Add your message handler code here int Hauteur = aRect.Height(); int Largeur = aRect.Width(); point.x= ???? // comment je traite cet évenement CDialog::OnLButtonDown(nFlags, point); }
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager