Browse Source

修改面积不一致的问题

cxs 10 months ago
parent
commit
9744e9b0c7

+ 1 - 1
OTSIncAMeasureApp/1-OTSMeasure/Measure/3-MeasureFlow/CMsrResultItems.cs

@@ -190,7 +190,7 @@ namespace OTSModelSharp
                 CMsrResultItem pMsrResultItem = new CMsrResultItem();
                 pMsrResultItem.SetTypeId(a_poResultItem.GetClassifyId());
 
-                pMsrResultItem.SetArea(a_poResultItem.GetActualArea() + 0.5);
+                pMsrResultItem.SetArea(a_poResultItem.GetActualArea());
                 pMsrResultItem.SetNumber(1);
                 pMsrResultItem.SetName(a_poResultItem.GetTypeName());
                 m_listResultItems.Add(pMsrResultItem);

+ 2 - 2
OTSIncAMeasureApp/1-OTSMeasure/Measure/DBDataTransition/IncADataDB.cs

@@ -133,7 +133,7 @@ namespace OTSModelSharp
                     p.SetConnectedParticlesName("");
                     byte aveGray = Convert.ToByte(allRecords.Rows[i][(int)CIncADataTable.ColumnID.N_AVE_GRAY]);
                     p.SetAveGray(aveGray);
-                    p.SetActualArea(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_AREA]));
+                    p.SetActualArea(Convert.ToDouble(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_AREA]));
                     p.SetAnalysisId(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.N_XRAY_ID]));
                     p.SetDMAX(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_DMAX]));
                     p.SetDMIN(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_DMIN]));
@@ -170,7 +170,7 @@ namespace OTSModelSharp
                     p.SetParticleRect(r);
                     //p.SetSubParticles("");                   
                     p.SetAveGray(Convert.ToByte(allRecords.Rows[i][(int)CIncADataTable.ColumnID.N_AVE_GRAY]));
-                    p.SetActualArea(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_AREA]));
+                    p.SetActualArea(Convert.ToDouble(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_AREA]));
                     p.SetAnalysisId(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.N_XRAY_ID]));
                     p.SetDMAX(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_DMAX]));
                     p.SetDMIN(Convert.ToInt32(allRecords.Rows[i][(int)CIncADataTable.ColumnID.F_DMIN]));

+ 1 - 1
OTSIncAMeasureApp/1-OTSMeasure/Measure/ParamData/COTSMsrPrjResultData.cs

@@ -437,7 +437,7 @@ namespace OTSModelSharp
                 }
                 rstItm.SetTypeId(typeParticles.Key);
                 rstItm.SetNumber((uint)typeNum);
-                rstItm.SetArea((uint)typeArea);
+                rstItm.SetArea(Convert.ToDouble(typeArea.ToString("0.00")));
                 rstItm.SetName(typeParticles.Value[0].GetTypeName());
                 rstItms.Add(rstItm);
                 allPartArea += typeArea;

+ 3 - 3
OTSIncAReportApp/1-UI/Control_Grids/ResultGrid.cs

@@ -133,7 +133,7 @@ namespace OTSIncAReportGrids
             double high = resfile.GetImageHeight();
            
             double filedsArea = scanFieldSize * (scanFieldSize * high / wide) * filedCount;
-            int particleArea = fielddata.GetparticleArea();
+            double particleArea = fielddata.GetparticleArea();
 
      
 
@@ -173,7 +173,7 @@ namespace OTSIncAReportGrids
             keyValues.Add(table["col6"].ToString(), LibraryName);
             keyValues.Add(table["col7"].ToString(), fielddata.GetparticleCount().ToString());
             keyValues.Add(table["col8"].ToString() + "\x00B2)", filedsArea.ToString());
-            keyValues.Add(table["col9"].ToString()+ "\x00B2)", particleArea.ToString());
+            keyValues.Add(table["col9"].ToString()+ "\x00B2)", String.Format("{0:f2}", particleArea));
             keyValues.Add(table["col10"].ToString(), ratio.ToString());
 
             //keyValues.Add(table["col11"].ToString(), sizestr);
@@ -231,7 +231,7 @@ namespace OTSIncAReportGrids
             double high = resfile.GetImageHeight();
             double pixelSize = resfile.GetPixelSize();
             double filedsArea = Math.Round(high * wide * pixelSize * pixelSize * filedCount, 2);
-            int particleArea = fielddata.GetparticleArea();
+            double particleArea = fielddata.GetparticleArea();
 
             double ratio = particleArea / filedsArea;
 

+ 3 - 2
OTSIncAReportApp/3-ServiceCenter/DataOperation/DataAccess/FieldData.cs

@@ -144,14 +144,15 @@ namespace OTSIncAReportApp.DataOperation.DataAccess
         /// </summary>
         /// <param name="model">Feature</param>
         /// <returns></returns>
-        public int GetparticleArea()
+        public double GetparticleArea()
         {
             //存放查询数据的数据表
             DataTable DT = null;
 
+
             string sql = "select sum(Area) from IncAData";
             DT = dbHelper.ExecuteDataTable(sql, null);
-            return DT.Rows.Count > 0 ? Convert.ToInt32(DT.Rows[0][0]) : 0;
+            return DT.Rows.Count > 0 ? Convert.ToDouble(DT.Rows[0][0]) : 0;
 
         }