|
@@ -59,9 +59,9 @@ bool ParticleClassifyEngine::Classify(COTSParticlePtr particle, CPosXrayPtr xray
|
|
|
}
|
|
|
LogTrace(__FILE__, __LINE__, allele.c_str());*/
|
|
|
//-----------------------------
|
|
|
- //zero element process,if satisfied the condition than erase the element from the list.
|
|
|
+ //zero element process,if satisfied the condition than set the particular element percentage to 0.and make it 100% of all the element percentage.
|
|
|
|
|
|
- auto partEles = ZeroElementProcess(particle, xray);//auto partEles = xray->GetElementQuantifyData();
|
|
|
+ auto partEles = ZeroElementProcess(particle, xray);//
|
|
|
|
|
|
|
|
|
std::map<std::string, CElementChemistryPtr> mapChemistrys;
|
|
@@ -500,7 +500,17 @@ CElementChemistriesList ParticleClassifyEngine::ZeroElementProcess(COTSParticleP
|
|
|
auto newChe = CElementChemistryPtr(new CElementChemistry(che.get()));
|
|
|
partEles.push_back(newChe);
|
|
|
}
|
|
|
-
|
|
|
+ //make it 100% in total.
|
|
|
+ double rawPercentage = 0;
|
|
|
+ for (auto ele : partEles)
|
|
|
+ {
|
|
|
+ rawPercentage += ele->GetPercentage();
|
|
|
+ }
|
|
|
+ for (auto ele : partEles)
|
|
|
+ {
|
|
|
+ ele->SetPercentage(ele->GetPercentage() / rawPercentage * 100);
|
|
|
+ }
|
|
|
+ //zero element process
|
|
|
std::map<CString, CElementChemistryPtr> mapChe;
|
|
|
for (auto ch : partEles)
|
|
|
{
|