|
@@ -1336,6 +1336,7 @@ namespace OTSModelSharp
|
|
|
{
|
|
|
foreach (var part in fld.GetListAnalysisParticles())
|
|
|
{
|
|
|
+
|
|
|
part.SetType((int)OTS_PARTICLE_TYPE.NOT_IDENTIFIED);
|
|
|
part.SetTypeName("Not Identified");
|
|
|
part.SetTypeColor("#000000");
|
|
@@ -1360,7 +1361,11 @@ namespace OTSModelSharp
|
|
|
|
|
|
|
|
|
IClassifyEngine partEngine = m_classifyEngine.GetExpressionClassifyEngine(stdFileName);
|
|
|
-
|
|
|
+ if (IsLowCounts(part))
|
|
|
+ {
|
|
|
+ continue;
|
|
|
+
|
|
|
+ }
|
|
|
if (!partEngine.ClassifyByExpression(part))
|
|
|
{
|
|
|
|
|
@@ -1394,6 +1399,11 @@ namespace OTSModelSharp
|
|
|
{
|
|
|
foreach (var part in fld.GetListAnalysisParticles())
|
|
|
{
|
|
|
+ if (IsLowCounts(part))
|
|
|
+ {
|
|
|
+ continue;
|
|
|
+
|
|
|
+ }
|
|
|
IClassifyEngine engine = m_classifyEngine.GetExpressionClassifyEngine(stdFileName);
|
|
|
if (!engine.ClassifyByExpression(part))
|
|
|
{
|
|
@@ -1415,6 +1425,11 @@ namespace OTSModelSharp
|
|
|
{
|
|
|
foreach (var part in fld.GetListAnalysisParticles())
|
|
|
{
|
|
|
+ if (IsLowCounts(part))
|
|
|
+ {
|
|
|
+ continue;
|
|
|
+
|
|
|
+ }
|
|
|
IClassifyEngine engine = m_classifyEngine.GetExpressionClassifyEngine(stdFileName);
|
|
|
if (!engine.ClassifyByExpression(part))
|
|
|
{
|
|
@@ -1446,6 +1461,28 @@ namespace OTSModelSharp
|
|
|
|
|
|
}
|
|
|
|
|
|
+ private bool IsLowCounts(COTSParticleClr particle)
|
|
|
+ {
|
|
|
+ COTSXRayParam pXRayParam = this.GetWorkingSample().GetMsrParams().GetXRayParam();
|
|
|
+
|
|
|
+ if (pXRayParam.GetUsingXray() == true)
|
|
|
+ {
|
|
|
+ var thecount = particle.GetXray().GetTotalCount();
|
|
|
+ var expect = pXRayParam.GetAnalyExpCount();
|
|
|
+
|
|
|
+
|
|
|
+ if (thecount < expect)
|
|
|
+ {
|
|
|
+
|
|
|
+ particle.SetType((int)OTS_PARTICLE_TYPE.LOW_COUNT);//4 represent "lowcount"
|
|
|
+ particle.SetTypeColor("#000000");
|
|
|
+ particle.SetTypeName("LowCounts");
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
|
|
|
/// <summary>
|