question d'origine: Original questionrectangle Rescale (Haut, Gauche, Bas, droite)
J'ai une image I1 de la taille height x width = (1500,500)
redimensionnée à (500,300)
.
I1 contient des boîtes de délimitation caractérisées par leurs coordonnées (Top, Left, Bottom, Right)
.
Comment rééchelonner les coordonnées des boîtes englobantes lorsque la taille de I1 est changé? Ces formules sont-elles correctes?
double newTop = Math.Ceiling((top) * (double)pictureBox1.Height/(double)image1.Height);
double newLeft = Math.Ceiling((left) * (double)pictureBox1.Width/(double)image1.Width);
double newBottom = Math.Ceiling((bottom + 1) * (double)pictureBox1.Height/(double)image1.Height) - 1;
double newRight = Math.Ceiling((right + 1) * (double)pictureBox1.Width/(double)image1.Width) - 1;
Apparaît d'un bref coup d'oeil sans vraiment l'essayer. – Codor
Etes-vous sûr de faire des divisions entières? Il me semble que vous allez rencontrer des erreurs massives à moins que je ne comprenne complètement votre code. – InBetween
@InEntre vous avez raison. Peut-être à cause des nombres entiers je ne suis pas en mesure de redimensionner correctement la boîte de délimitation. Je vais l'essayer maintenant. Shoud Je prends le haut ou le bas des limites? pour la division –