句柄检测
This commit is contained in:
@@ -17,6 +17,9 @@ namespace Camera
|
|||||||
private const string USER = "admin";
|
private const string USER = "admin";
|
||||||
private const string PASSWD = "Yexian.net.168";
|
private const string PASSWD = "Yexian.net.168";
|
||||||
|
|
||||||
|
// 调试模式
|
||||||
|
private const Boolean IsDebug = false;
|
||||||
|
|
||||||
// 配置文件目录
|
// 配置文件目录
|
||||||
private string _configPath;
|
private string _configPath;
|
||||||
|
|
||||||
@@ -296,6 +299,11 @@ namespace Camera
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private Image GetCameraImage()
|
private Image GetCameraImage()
|
||||||
{
|
{
|
||||||
|
if (IsDebug)
|
||||||
|
{
|
||||||
|
if (File.Exists("test.jpg"))
|
||||||
|
return new Bitmap("test.jpg");
|
||||||
|
}
|
||||||
string url = "http://" + IP + SNAPSHOT_URI;
|
string url = "http://" + IP + SNAPSHOT_URI;
|
||||||
|
|
||||||
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
|
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
|
||||||
|
|||||||
@@ -478,8 +478,8 @@ namespace Camera
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
float scaleX = (float)imageWidth / picBoxCamera.ClientSize.Width;
|
float scaleX = (float)picBoxCamera.ClientSize.Width / imageWidth;
|
||||||
float scaleY = (float)imageHeight / picBoxCamera.ClientSize.Height;
|
float scaleY = (float)picBoxCamera.ClientSize.Height / imageHeight;
|
||||||
|
|
||||||
Rectangle detectionZone = _camera.GetDetectionZone();
|
Rectangle detectionZone = _camera.GetDetectionZone();
|
||||||
Rectangle ledZone = _camera.GetLedZone();
|
Rectangle ledZone = _camera.GetLedZone();
|
||||||
@@ -501,9 +501,12 @@ namespace Camera
|
|||||||
if (_isEditingDetectionZone || _isEditingLedZone)
|
if (_isEditingDetectionZone || _isEditingLedZone)
|
||||||
{
|
{
|
||||||
Rectangle editRect = _isEditingDetectionZone ? scaledDetectionZone : scaledLedZone;
|
Rectangle editRect = _isEditingDetectionZone ? scaledDetectionZone : scaledLedZone;
|
||||||
|
int handle = GetHoveredHandle(editRect, e.Location);
|
||||||
|
|
||||||
if (_hoveredHandle >= 0 && _isResizing)
|
if (_isResizing && handle >= 0)
|
||||||
{
|
{
|
||||||
|
picBoxCamera.Cursor = GetResizeCursor(handle);
|
||||||
|
|
||||||
int dx = e.Location.X - _resizeStartPoint.X;
|
int dx = e.Location.X - _resizeStartPoint.X;
|
||||||
int dy = e.Location.Y - _resizeStartPoint.Y;
|
int dy = e.Location.Y - _resizeStartPoint.Y;
|
||||||
|
|
||||||
@@ -562,7 +565,6 @@ namespace Camera
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
int handle = GetHoveredHandle(editRect, e.Location);
|
|
||||||
if (handle >= 0)
|
if (handle >= 0)
|
||||||
{
|
{
|
||||||
picBoxCamera.Cursor = GetResizeCursor(handle);
|
picBoxCamera.Cursor = GetResizeCursor(handle);
|
||||||
@@ -579,6 +581,8 @@ namespace Camera
|
|||||||
}
|
}
|
||||||
else if (_isMoving)
|
else if (_isMoving)
|
||||||
{
|
{
|
||||||
|
picBoxCamera.Cursor = Cursors.SizeAll;
|
||||||
|
|
||||||
Point imagePoint = new Point((int)(e.X * scaleX), (int)(e.Y * scaleY));
|
Point imagePoint = new Point((int)(e.X * scaleX), (int)(e.Y * scaleY));
|
||||||
|
|
||||||
int dx = imagePoint.X - _startPoint.X;
|
int dx = imagePoint.X - _startPoint.X;
|
||||||
@@ -619,6 +623,7 @@ namespace Camera
|
|||||||
_isEditingDetectionZone = false;
|
_isEditingDetectionZone = false;
|
||||||
toolStripButton1.Checked = false;
|
toolStripButton1.Checked = false;
|
||||||
toolStripButton1.ToolTipText = "修改检测区(点击开启)";
|
toolStripButton1.ToolTipText = "修改检测区(点击开启)";
|
||||||
|
picBoxCamera.Invalidate();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (_isEditingLedZone)
|
if (_isEditingLedZone)
|
||||||
@@ -626,6 +631,7 @@ namespace Camera
|
|||||||
_isEditingLedZone = false;
|
_isEditingLedZone = false;
|
||||||
toolStripButton2.Checked = false;
|
toolStripButton2.Checked = false;
|
||||||
toolStripButton2.ToolTipText = "绘制Led区(点击开启)";
|
toolStripButton2.ToolTipText = "绘制Led区(点击开启)";
|
||||||
|
picBoxCamera.Invalidate();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -680,7 +686,7 @@ namespace Camera
|
|||||||
|
|
||||||
private int GetHoveredHandle(Rectangle rect, Point point)
|
private int GetHoveredHandle(Rectangle rect, Point point)
|
||||||
{
|
{
|
||||||
int handleSize = 10;
|
int handleSize = 8;
|
||||||
int[] xPoints = { rect.X, rect.X + rect.Width / 2, rect.X + rect.Width, rect.X + rect.Width, rect.X + rect.Width, rect.X + rect.Width / 2, rect.X, rect.X };
|
int[] xPoints = { rect.X, rect.X + rect.Width / 2, rect.X + rect.Width, rect.X + rect.Width, rect.X + rect.Width, rect.X + rect.Width / 2, rect.X, rect.X };
|
||||||
int[] yPoints = { rect.Y, rect.Y, rect.Y, rect.Y + rect.Height / 2, rect.Y + rect.Height, rect.Y + rect.Height, rect.Y + rect.Height, rect.Y + rect.Height / 2 };
|
int[] yPoints = { rect.Y, rect.Y, rect.Y, rect.Y + rect.Height / 2, rect.Y + rect.Height, rect.Y + rect.Height, rect.Y + rect.Height, rect.Y + rect.Height / 2 };
|
||||||
|
|
||||||
@@ -799,6 +805,7 @@ namespace Camera
|
|||||||
_selectedZoneIndex = -1;
|
_selectedZoneIndex = -1;
|
||||||
toolStripButton1.ToolTipText = "修改检测区(点击开启)";
|
toolStripButton1.ToolTipText = "修改检测区(点击开启)";
|
||||||
}
|
}
|
||||||
|
picBoxCamera.Invalidate();
|
||||||
UpdateDataGridView();
|
UpdateDataGridView();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -820,6 +827,7 @@ namespace Camera
|
|||||||
_selectedZoneIndex = -1;
|
_selectedZoneIndex = -1;
|
||||||
toolStripButton2.ToolTipText = "绘制Led区(点击开启)";
|
toolStripButton2.ToolTipText = "绘制Led区(点击开启)";
|
||||||
}
|
}
|
||||||
|
picBoxCamera.Invalidate();
|
||||||
UpdateDataGridView();
|
UpdateDataGridView();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user