hybridPosePositioning

version 1.3.7 : 在1.3.6版本的基础上添加了ID, 与2D结果保持一致
This commit is contained in:
jerryzeng 2026-08-17 10:05:01 +08:00
parent 096e1683a3
commit a7ad978041
2 changed files with 7 additions and 4 deletions

View File

@ -1082,7 +1082,7 @@ void _outputWorkpieceInfo(char* fileName, std::vector< WD_workpieceInfo>& workpi
int number = (int)workpiecePositions.size();
for (int i = 0; i < number; i++)
{
sprintf_s(dataStr, 250, "工件_%d", i + 1);
sprintf_s(dataStr, 250, "工件_%d: id=%d, type=%d", i + 1, workpiecePositions[i].id, workpiecePositions[i].workpieceType);
sw << dataStr << std::endl;
sprintf_s(dataStr, 50, " center: (%g, %g, %g)", workpiecePositions[i].center.x, workpiecePositions[i].center.y, workpiecePositions[i].center.z);
@ -2183,7 +2183,7 @@ void HaiRuiMa_rotorCorePositioning_test(void)
for (int fidx = fileIdx[grp].nMin; fidx <= fileIdx[grp].nMax; fidx++)
{
fidx = 26;
//fidx = 26;
char _scan_file[256];
sprintf_s(_scan_file, "%s%d_cloud.txt", dataPath[grp], fidx);
std::vector<std::vector< SVzNLPositionD>> scanLines;

View File

@ -17,7 +17,8 @@
//version 1.3.4 : 修正了转子钢芯定位算法中的bug
//version 1.3.5 : 根据现场数据修正了转子钢芯定位算法中的bug
//version 1.3.6 : 在1.3.5版本的基础上根据现场数据修正了转子钢芯定位算法中的bug
std::string m_strVersion = "HybridPositioning 1.3.6";
//version 1.3.7 : 在1.3.6版本的基础上添加了ID 与2D结果保持一致
std::string m_strVersion = "HybridPositioning 1.3.7";
const char* wd_hybridPositioningVersion(void)
{
return m_strVersion.c_str();
@ -1243,6 +1244,7 @@ void wd_HRM_RotorCorePositioning(
workpieceParam,
outsideEdgePtIndice,
centerPtIndice);
a_workpiece.id = idx + 1;
#ifdef _OUTPUT_DEBUG_DATA
if (a_workpiece.center.z > 1e-4)
@ -1535,7 +1537,8 @@ void wd_HRM_RotorCorePositioning(
workpiecePositions.insert(workpiecePositions.end(), RBCorner.begin(), RBCorner.end());
}
else
{//水平方向排序
{
//水平方向排序
while (zSortWorkpiece.size() > 0)
{
std::vector< WD_workpieceInfo> firstLine;