Commit 66419989 LN

增加批量点位 偏移,旋转,复制,删除功能。

1 个父辈 70c89e8c
......@@ -36,8 +36,7 @@ namespace TSA_V.Common
[MyConfigComment("是否保存aoi检测原图")]
public static MyConfig<bool> Work_SaveAOIImg = false;
[MyConfigComment("是否保存aoi检测结果图")]
public static MyConfig<bool> Work_SaveAOIResult =false;
public static MyConfig<bool> Work_SaveAOIResult =false;
[MyConfigComment("工作模式")]
public static MyConfig<int> Work_WorkMode =0;
......@@ -45,7 +44,9 @@ namespace TSA_V.Common
public static MyConfig<int> Work_AuToModeSeconds = 5;
[MyConfigComment("是否需要统计")]
public static MyConfig<bool> Work_IsNeedCount = true ;
public static MyConfig<bool> Work_IsNeedCount = true;
[MyConfigComment("是否需要显示批量操作功能")]
public static MyConfig<bool> Work_ShowOperateBtn = true;
[MyConfigComment(" IO模块 0=康耐得 1=零点 2=南京实点 3=泥人科技,无线体")]
......
......@@ -8,6 +8,7 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using TSA_V.LoadCSVLibrary;
using System.Reflection;
namespace TSA_V.DeviceLibrary
{
......@@ -271,7 +272,18 @@ namespace TSA_V.DeviceLibrary
// this.ShowText = name;
//}
}
public SMTPointInfo(SMTPointInfo oldPointInfo)
{
// 使用反射获取属性并复制值
PropertyInfo[] properties = typeof(SMTPointInfo).GetProperties();
foreach (PropertyInfo property in properties)
{
if (property.CanWrite)
{
property.SetValue(this, property.GetValue(oldPointInfo));
}
}
}
/// <summary>
///组装信息编号
/// </summary>
......@@ -359,7 +371,12 @@ namespace TSA_V.DeviceLibrary
/// </summary>
public bool CheckOK = false;
public long pUTime = 0;
/// <summary>
/// 复制点位时自动设置组
/// </summary>
public int Group { get; set; } = 0;
public long pUTime { get; set; } = 0;
public string ToCSVStr()
{
string spilt = ",";
......@@ -397,33 +414,33 @@ namespace TSA_V.DeviceLibrary
/// <summary>
/// 点大小
/// </summary>
public int PointSizeX = 1;
public int PointSizeY = 1;
public int PenWidth = 2;
public int PointSizeX { get; set; } = 1;
public int PointSizeY { get; set; } = 1;
public int PenWidth { get; set; } = 2;
/// <summary>
/// 图片上的点的信息
/// </summary>
public DrawPointInfo imgP = null;
public DrawPointInfo imgP { get; set; } = null;
/// <summary>
/// 点类型,1=点,2=+,3=|,3=-,4=方形,5=圆圈
/// </summary>
public int PointType = 1;
public int PointType { get; set; } = 1;
public string ShowText = "";
/// <summary>
/// 是否禁用,默认0
/// </summary>
public bool Disable = false;
public bool Disable = false;
/// <summary>
/// 是否编辑成功
/// </summary>
public bool IsEdit = false;
public bool IsEdit =false;
/// <summary>
/// 极性,
/// </summary>
public int PolaritiesType = 0;
public int PolaritiesType { get; set; } = 0;
/// <summary>
/// 导出导入程序时使用
......
......@@ -300,13 +300,13 @@ namespace TSA_V.DeviceLibrary
//xy轴运动到固定点
if (TSAVBean.IsValidPosition(currPoint.NodePositionX, currPoint.NodePositionY))
{
LogUtil.info(" 程序【" + currBoard.boardName + "】插件【" + currPoint.pointName + "】,X轴【" + currPoint.NodePositionX + "】,Y轴【" + currPoint.NodePositionY + "】显示投影光标");
LogUtil.info(" 程序【" + currBoard.boardName + "】插件【" +currPoint.TagNo+"_"+ currPoint.PN + "】,X轴【" + currPoint.NodePositionX + "】,Y轴【" + currPoint.NodePositionY + "】显示投影光标");
TSAVBean.ShowPoint(currPoint.NodePositionX, currPoint.NodePositionY, currPoint.PointType,currPoint.PolaritiesType, currPoint.PointSizeX, currPoint.PointSizeY, currPoint.PenWidth, currPoint.ShowText, currBoard.PointColor);
waitList.Add(WaitResultInfo.WaitTime(1000));
}
else
{
LogUtil.info(" 程序【" + currBoard.boardName + "】插件【" + currPoint.PN + "】,X轴【" + currPoint.NodePositionX + "】,Y轴【" + currPoint.NodePositionY + "】坐标无效,不移动光标");
LogUtil.info(" 程序【" + currBoard.boardName + "】插件【" + currPoint.TagNo + "_" + currPoint.PN + "】,X轴【" + currPoint.NodePositionX + "】,Y轴【" + currPoint.NodePositionY + "】坐标无效,不移动光标");
}
}
......
......@@ -40,7 +40,7 @@ namespace TSA_V
}
else
{
MessageBox.Show("查询出错", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
MessageBox.Show(ResourceCulture.GetString("查询出错"), "", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
......@@ -60,7 +60,7 @@ namespace TSA_V
}
else
{
MessageBox.Show("查询出错", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
MessageBox.Show(ResourceCulture.GetString("查询出错"), "", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
......
......@@ -2743,4 +2743,33 @@
<data name = "isRestart" xml:space = "preserve"> <value> Changing this mode requires reloading the device, whether to restart the software now? </value> </data>
<data name = "FrmWork_btnResetAOI_Text" xml:space = "preserve"> <value> Reset </value> </data>
<data name = "shortageInfo" xml:space = "preserve"> <value> Outage information : </value> </data>
<data name = "FrmLogin_label3_Text" xml:space = "preserve"> <value> Neo Station </value> </data>
<data name = "FrmBoardInfo_btnMEdit_Text" xml:space = "preserve"> <value> Batch Operation </value> </data>
<data name = "FrmEditMPoint_Text" xml:space = "preserve"> <value> Point Batch Operation </value> </data>
<data name = "FrmEditMPoint_label6_Text" xml:space = "preserve"> <value> Delete Points from the Left List </value> </data>
<data name = "FrmEditMPoint_radioButton1_Text" xml:space = "preserve"> <value> Delete </value> </data>
<data name = "FrmEditMPoint_rdbPianyi_Text" xml:space = "preserve"> <value> Coordinate Offset/Rotation </value> </data>
<data name = "FrmEditMPoint_label3_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label5_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_checkBox1_Text" xml:space = "preserve"> <value> Automatically Add Suffix to Number </value> </data>
<data name = "FrmEditMPoint_label2_Text" xml:space = "preserve"> <value> Column Spacing: </value> </data>
<data name = "FrmEditMPoint_label12_Text" xml:space = "preserve"> <value> Column: </value> </data>
<data name = "FrmEditMPoint_label11_Text" xml:space = "preserve"> <value> Row Spacing: </value> </data>
<data name = "FrmEditMPoint_label7_Text" xml:space = "preserve"> <value> Row: </value> </data>
<data name = "FrmEditMPoint_rdbCopy_Text" xml:space = "preserve"> <value> Copy </value> </data>
<data name = "FrmEditMPoint_label8_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label122_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label1_Text" xml:space = "preserve"> <value> ° </value> </data>
<data name = "FrmEditMPoint_label9_Text" xml:space = "preserve"> <value> X-Axis Offset →: </value> </data>
<data name = "FrmEditMPoint_label4_Text" xml:space = "preserve"> <value> Rotation Angle: </value> </data>
<data name = "FrmEditMPoint_label10_Text" xml:space = "preserve"> <value> Y-Axis Offset ↓: </value> </data>
<data name = "FrmEditMPoint_焊点列表_Text" xml:space = "preserve"> <value> List </value> </data>
<data name = "FrmEditMPoint_btnClose_Text" xml:space = "preserve"> <value> Return </value> </data>
<data name = "FrmEditMPoint_btnSave_Text" xml:space = "preserve"> <value> Save </value> </data>
<data name = "NoSaveBack" xml:space = "preserve"> <value> Return without Saving? </value> </data>
<data name = "FrmMaintenance_label1_Text" xml:space = "preserve"> <value> Neo Station </value> </data>
<data name = "FrmMaintenance_LblUserName_Text" xml:space = "preserve"> <value> admin/Admin </value> </data>
<data name = "FrmMaintenance_lblVersion_Text" xml:space = "preserve"> <value> V4.1.9152.25101 </value> </data>
<data name = "PWSureCopyPoint" xml:space = "preserve"> <value> Confirm Copy? Target is {0} Rows, {1} Columns, X Spacing={2}, Y Spacing={3} </value> </data>
<data name = "FrmEditMPoint_rdbDelete_Text" xml:space = "preserve"> <value> Delete </value> </data>
</root>
\ No newline at end of file
......@@ -2721,4 +2721,33 @@
<data name = "isRestart" xml:space = "preserve"> <value> 更改此模式需要重新加载设备,是否现在重启软件? </value> </data>
<data name = "FrmWork_btnResetAOI_Text" xml:space = "preserve"> <value> 还原 </value> </data>
<data name = "shortageInfo" xml:space = "preserve"> <value> 缺料信息: </value> </data>
<data name = "FrmLogin_label3_Text" xml:space = "preserve"> <value> Neo Station </value> </data>
<data name = "FrmBoardInfo_btnMEdit_Text" xml:space = "preserve"> <value> 批量操作 </value> </data>
<data name = "FrmEditMPoint_Text" xml:space = "preserve"> <value> 点位批量操作 </value> </data>
<data name = "FrmEditMPoint_label6_Text" xml:space = "preserve"> <value> 删除左侧列表中的点位 </value> </data>
<data name = "FrmEditMPoint_radioButton1_Text" xml:space = "preserve"> <value> 删除 </value> </data>
<data name = "FrmEditMPoint_rdbPianyi_Text" xml:space = "preserve"> <value> 坐标偏移/旋转 </value> </data>
<data name = "FrmEditMPoint_label3_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label5_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_checkBox1_Text" xml:space = "preserve"> <value> 自动为位号增加后缀 </value> </data>
<data name = "FrmEditMPoint_label2_Text" xml:space = "preserve"> <value> 列间距: </value> </data>
<data name = "FrmEditMPoint_label12_Text" xml:space = "preserve"> <value> 列: </value> </data>
<data name = "FrmEditMPoint_label11_Text" xml:space = "preserve"> <value> 行间距: </value> </data>
<data name = "FrmEditMPoint_label7_Text" xml:space = "preserve"> <value> 行: </value> </data>
<data name = "FrmEditMPoint_rdbCopy_Text" xml:space = "preserve"> <value> 复制 </value> </data>
<data name = "FrmEditMPoint_label8_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label122_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label1_Text" xml:space = "preserve"> <value> ° </value> </data>
<data name = "FrmEditMPoint_label9_Text" xml:space = "preserve"> <value> X轴偏移量→: </value> </data>
<data name = "FrmEditMPoint_label4_Text" xml:space = "preserve"> <value> 旋转角度: </value> </data>
<data name = "FrmEditMPoint_label10_Text" xml:space = "preserve"> <value> Y轴偏移量↓: </value> </data>
<data name = "FrmEditMPoint_焊点列表_Text" xml:space = "preserve"> <value> 列表 </value> </data>
<data name = "FrmEditMPoint_btnClose_Text" xml:space = "preserve"> <value> 返回 </value> </data>
<data name = "FrmEditMPoint_btnSave_Text" xml:space = "preserve"> <value> 保存 </value> </data>
<data name = "NoSaveBack" xml:space = "preserve"> <value> 不保存直接返回? </value> </data>
<data name = "FrmMaintenance_label1_Text" xml:space = "preserve"> <value> Neo Station </value> </data>
<data name = "FrmMaintenance_LblUserName_Text" xml:space = "preserve"> <value> admin/Admin </value> </data>
<data name = "FrmMaintenance_lblVersion_Text" xml:space = "preserve"> <value> V4.1.9152.25101 </value> </data>
<data name = "PWSureCopyPoint" xml:space = "preserve"> <value> 确定复制?目标为{0}行,{1}列,X间距={2}, Y间距={3} </value> </data>
<data name = "FrmEditMPoint_rdbDelete_Text" xml:space = "preserve"> <value> 删除 </value> </data>
</root>
\ No newline at end of file
......@@ -2895,5 +2895,34 @@
<data name = "FrmBoardSelect_chbSoftMode_Text" xml:space = "preserve"> <value> 简洁模式 </value> </data>
<data name = "isRestart" xml:space = "preserve"> <value> 更改此模式需要重新加载设备,是否现在重启软件? </value> </data>
<data name = "FrmWork_btnResetAOI_Text" xml:space = "preserve"> <value> 还原 </value> </data>
<data name = "shortageInfo" xml:space = "preserve"> <value> 缺料信息: </value> </data>
<data name = "shortageInfo" xml:space = "preserve"> <value> 缺料信息: </value> </data>
<data name = "FrmLogin_label3_Text" xml:space = "preserve"> <value> Neo Station </value> </data>
<data name = "FrmBoardInfo_btnMEdit_Text" xml:space = "preserve"> <value> 批量操作 </value> </data>
<data name = "FrmEditMPoint_Text" xml:space = "preserve"> <value> 点位批量操作 </value> </data>
<data name = "FrmEditMPoint_label6_Text" xml:space = "preserve"> <value> 删除左侧列表中的点位 </value> </data>
<data name = "FrmEditMPoint_radioButton1_Text" xml:space = "preserve"> <value> 删除 </value> </data>
<data name = "FrmEditMPoint_rdbPianyi_Text" xml:space = "preserve"> <value> 坐标偏移/旋转 </value> </data>
<data name = "FrmEditMPoint_label3_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label5_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_checkBox1_Text" xml:space = "preserve"> <value> 自动为位号增加后缀 </value> </data>
<data name = "FrmEditMPoint_label2_Text" xml:space = "preserve"> <value> 列间距: </value> </data>
<data name = "FrmEditMPoint_label12_Text" xml:space = "preserve"> <value> 列: </value> </data>
<data name = "FrmEditMPoint_label11_Text" xml:space = "preserve"> <value> 行间距: </value> </data>
<data name = "FrmEditMPoint_label7_Text" xml:space = "preserve"> <value> 行: </value> </data>
<data name = "FrmEditMPoint_rdbCopy_Text" xml:space = "preserve"> <value> 复制 </value> </data>
<data name = "FrmEditMPoint_label8_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label122_Text" xml:space = "preserve"> <value> mm </value> </data>
<data name = "FrmEditMPoint_label1_Text" xml:space = "preserve"> <value> ° </value> </data>
<data name = "FrmEditMPoint_label9_Text" xml:space = "preserve"> <value> X轴偏移量→: </value> </data>
<data name = "FrmEditMPoint_label4_Text" xml:space = "preserve"> <value> 旋转角度: </value> </data>
<data name = "FrmEditMPoint_label10_Text" xml:space = "preserve"> <value> Y轴偏移量↓: </value> </data>
<data name = "FrmEditMPoint_焊点列表_Text" xml:space = "preserve"> <value> 列表 </value> </data>
<data name = "FrmEditMPoint_btnClose_Text" xml:space = "preserve"> <value> 返回 </value> </data>
<data name = "FrmEditMPoint_btnSave_Text" xml:space = "preserve"> <value> 保存 </value> </data>
<data name = "NoSaveBack" xml:space = "preserve"> <value> 不保存直接返回? </value> </data>
<data name = "FrmMaintenance_label1_Text" xml:space = "preserve"> <value> Neo Station </value> </data>
<data name = "FrmMaintenance_LblUserName_Text" xml:space = "preserve"> <value> admin/Admin </value> </data>
<data name = "FrmMaintenance_lblVersion_Text" xml:space = "preserve"> <value> V4.1.9152.25101 </value> </data>
<data name = "PWSureCopyPoint" xml:space = "preserve"> <value> 确定复制?目标为{0}行,{1}列,X间距={2}, Y间距={3} </value> </data>
<data name = "FrmEditMPoint_rdbDelete_Text" xml:space = "preserve"> <value> 删除 </value> </data>
</root>
\ No newline at end of file
......@@ -521,6 +521,21 @@ namespace TSA_V
/// </summary>
public static string PWSureUPdateXY = "PWSureUPdateXY";
/// <summary>
///确定以左下角为基准顺时针旋转{0}度?
/// </summary>
public static string PWSureXuanzhuan = "PWSureXuanzhuan";
/// <summary>
/// SuerCopyPoint, "确定复制?目标为{0}行,{1}列,X间距={2}, Y间距={3}"
/// </summary>
public static string PWSureCopyPoint = "PWSureCopyPoint";
/// <summary>
/// 确定删除
/// </summary>
public static string PWSureDeletePoint = "PWSureDeletePoint";
/// <summary>
/// 确认
/// </summary>
public static string Sure = "Sure";
......@@ -898,6 +913,10 @@ namespace TSA_V
internal static readonly string Type_None= "Type_None";
internal static readonly string CreateNew = "CreateNew";
/// <summary>
/// NoSaveBack=不保存直接返回
/// </summary>
internal static readonly string NoSaveBack= "NoSaveBack";
}
}
......@@ -173,6 +173,12 @@
</ItemGroup>
<ItemGroup>
<Compile Include="frmBoard\ExcelReadManager.cs" />
<Compile Include="frmBoard\FrmEditMPoint.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmBoard\FrmEditMPoint.Designer.cs">
<DependentUpon>FrmEditMPoint.cs</DependentUpon>
</Compile>
<Compile Include="frmBoard\FrmBomUpload.cs">
<SubType>Form</SubType>
</Compile>
......@@ -446,6 +452,10 @@
<DependentUpon>FrmBase.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmBoard\FrmEditMPoint.resx">
<DependentUpon>FrmEditMPoint.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmBoard\FrmBoardInfo.resx">
<DependentUpon>FrmBoardInfo.cs</DependentUpon>
<SubType>Designer</SubType>
......

using AccAOI;
using log4net;
using NPOI.Util;
using Org.BouncyCastle.Asn1.Tsp;
using System;
using System.Collections.Generic;
using System.Drawing;
......@@ -192,6 +190,7 @@ namespace TSA_V
}
dgvList.Columns[i].Selected = false;
}
btnMEdit.Visible = Setting_NInit.Work_ShowOperateBtn;
}
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
......@@ -673,6 +672,7 @@ namespace TSA_V
BoardManager.Update(board);
}
MessageBox.Show(ResourceCulture.GetString(ResourceCulture.SaveOk, "保存成功!"));
DialogResult = DialogResult.OK;
Close();
}
/// <summary>
......@@ -745,7 +745,11 @@ namespace TSA_V
}
private void button1_Click(object sender, EventArgs e)
{
Close();
DialogResult result = MessageBox.Show(ResourceCulture.GetString(ResourceCulture.NoSaveBack, "不保存直接返回?"), ResourceCulture.GetString("提示"), MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (result == DialogResult.Yes)
{
Close();
}
}
private void Close()
{
......@@ -1657,6 +1661,118 @@ namespace TSA_V
}
}
private void btnMEdit_Click(object sender, EventArgs e)
{
if (dgvList.SelectedRows != null && dgvList.SelectedRows.Count > 0)
{
List<SMTPointInfo> selectPlist = new List<SMTPointInfo>();
try
{
List<int> indexList = new List<int>();
List<DataGridViewRow> rows = new List<DataGridViewRow>();
foreach (DataGridViewRow row in dgvList.SelectedRows)
{
rows.Add(row);
//SMTPointInfo point = getRowPointInfo(row);
//selectPlist.Add(point);
//indexList.Add(row.Index);
}
rows = rows.OrderBy(row => row.Index).ToList();
foreach(DataGridViewRow row in rows)
{
SMTPointInfo point = getRowPointInfo(row);
selectPlist.Add(point);
indexList.Add(row.Index);
}
FrmEditMPoint frmEditMPoint = new FrmEditMPoint();
frmEditMPoint.SetBoard(updateBoardInfo, selectPlist);
DialogResult result = frmEditMPoint.ShowDialog();
List<SMTPointInfo> resultList = frmEditMPoint.resultPointList;
if (result.Equals(DialogResult.OK))
{
//刷新页面
if (frmEditMPoint.EditType == 1 )
{
if (resultList.Count == indexList.Count)
{
for (int i = 0; i < resultList.Count; i++)
{
int index = indexList[i];
SMTPointInfo point = resultList[i];
setPointInfo(dgvList.Rows[index], point);
}
}
foreach (DataGridViewRow row in dgvList.SelectedRows)
{
SMTPointInfo point = getRowPointInfo(row);
selectPlist.Add(point);
}
//偏移
loadPictureBoxSize();
}
else if (frmEditMPoint.EditType == 2)
{
List<SMTPointInfo> selectPoints = new List<SMTPointInfo>(frmEditMPoint.selectPoints);
//更改原有点位
if(selectPoints.Count == indexList.Count)
{
for (int i = 0; i < selectPoints.Count; i++)
{
int index = indexList[i];
SMTPointInfo point = selectPoints[i];
setPointInfo(dgvList.Rows[index], point);
}
}
foreach (DataGridViewRow row in dgvList.SelectedRows)
{
SMTPointInfo point = getRowPointInfo(row);
selectPlist.Add(point);
}
//增加新点位
foreach(SMTPointInfo newPoint in resultList)
{
dgvList.Rows.Add(setPointInfo(null, newPoint));
}
//偏移
loadPictureBoxSize();
}
}
else if (frmEditMPoint.EditType == 3)
{
//删除 直接从列表删除
indexList.Sort();
for(int i=indexList.Count-1; i>=0; i--)
{
dgvList.Rows.RemoveAt(indexList[i]);
}
loadPictureBoxSize();
}
}
catch (Exception ex)
{
LogUtil.error(ex.ToString());
}
finally
{
}
}
}
private bool Fwpi_ShowPointEvent(SMTPointInfo smtInfo, Color color)
{
try
......@@ -1694,6 +1810,20 @@ namespace TSA_V
}
return true;
}
protected override void WndProc(ref Message m)
{
//Console.WriteLine(m.Msg);
const int WM_SYSCOMMAND = 0x0112;
const int SC_CLOSE = 0xF060;
if (m.Msg == WM_SYSCOMMAND && (int)m.WParam == SC_CLOSE)
{
DialogResult result = MessageBox.Show(ResourceCulture.GetString(ResourceCulture.NoSaveBack, "不保存直接返回?"), ResourceCulture.GetString("提示"), MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (result != DialogResult.Yes)
{
return;
}
}
base.WndProc(ref m);
}
}
}
......@@ -122,7 +122,7 @@ namespace TSA_V
double xXishu = (BPoint.NodePositionX - APoint.NodePositionX) / (BPoint.PositionX - APoint.PositionX);
double yXishu = (BPoint.NodePositionY - APoint.NodePositionY) / (BPoint.PositionY - APoint.PositionY);
//计算点大小
if (smtPoint.imgP.uTime > smtPoint.pUTime)
if (smtPoint.imgP?.uTime > smtPoint.pUTime)
{
smtPoint.PointSizeX = (int)((BPoint.NodePositionX - APoint.NodePositionX) * smtPoint.imgP.SizeX / (BPoint.PositionX - APoint.PositionX));
smtPoint.PointSizeY = (int)((BPoint.NodePositionY - APoint.NodePositionY) * smtPoint.imgP.SizeY / (BPoint.PositionY - APoint.PositionY));
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!