Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

[C# Winform] Tính khoảng cách giữa 2 điểm ảnh

17:06 01-04-2018 2.085 lượt xem 2 bình luận 20:15 01-04-2018

Mọi người cho mình hỏi chút. Làm như nào để khi mình tải lên 1 bức ảnh trong winform. xong dùng chuột click 2 điểm trên bức ảnh đó. và hệ thống tự tính khoảng cách giữa 2 điểm ảnh đó và đưa ra kết quả đơn vị pixel ạ. mình cảm ơn. Nếu có tài liệu thì cho mình xin càng tốt ạ

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Accodius đã bình luận 20:14 01-04-2018

Chắc bạn biết cách để lấy vị trí 2 pixel nên mình không đề cập nữa.

Theo mình nghĩ để tính khoảng cách giữa 2 pixel bạn lấy
 

 var dX = X1-X2;
 var dY = Y1-Y2;

(Nhớ lấy Math.Abs nhé vì khoảng cách ta cần dương -> thực ra không cần cũng được tại vì lát nữa cũng bình phương lên :3 )

Ta hình dung 2 điểm trên ảnh là 2 đỉnh đối nhau của hình chữ nhật (với chiều cao dX và rộng dY) thì khoảng cách giữa 2 đỉnh đó là đường chéo của hình chữ nhật (cạnh huyền của tam giác vuông, ta có 2  cạnh rồi => đường chéo -> Pythagoras nhé :3 )

vậy khoảng cách mà bạn cần tính là :

var d = Math.Sqrt(dX * dX + dY * dY);

nhớ làm tròn về số nguyên để nó chuẩn theo pixel nhé :3


 

Hoàng Trung đã bình luận 19:21 01-04-2018

Bạn xem thử cái này xem nhé.

Câu hỏi mới nhất