|
|
|
@ -6003,14 +6003,14 @@ bool MeshTexture::CreateVirtualFaces64(FaceDataViewArr& facesDatas, FaceDataView |
|
|
|
|
|
|
|
|
|
|
|
if (scene.is_face_edge(strName, virtualFaceCenterFaceID)) |
|
|
|
if (scene.is_face_edge(strName, virtualFaceCenterFaceID)) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (angleDeg <= 30.0f) |
|
|
|
// if (angleDeg <= 30.0f)
|
|
|
|
{ |
|
|
|
{ |
|
|
|
mapSortedcams2[idxView] = angleDeg; |
|
|
|
mapSortedcams2[idxView] = angleDeg; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (angleDeg <= 80.0f) |
|
|
|
// if (angleDeg <= 80.0f)
|
|
|
|
{ |
|
|
|
{ |
|
|
|
mapSortedcams2[idxView] = angleDeg; |
|
|
|
mapSortedcams2[idxView] = angleDeg; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -6049,7 +6049,7 @@ bool MeshTexture::CreateVirtualFaces64(FaceDataViewArr& facesDatas, FaceDataView |
|
|
|
int nViewCoverage = 0; |
|
|
|
int nViewCoverage = 0; |
|
|
|
int nViewCoverageMax = 200; |
|
|
|
int nViewCoverageMax = 200; |
|
|
|
int nHit = 0; |
|
|
|
int nHit = 0; |
|
|
|
int nHitMax = 1; |
|
|
|
int nHitMax = 10; |
|
|
|
std::map<IIndex, IIndex> mapProcessedViewIdx; |
|
|
|
std::map<IIndex, IIndex> mapProcessedViewIdx; |
|
|
|
//*
|
|
|
|
//*
|
|
|
|
for (const auto& [viewIdx, coverageCount] : viewCoverage) { |
|
|
|
for (const auto& [viewIdx, coverageCount] : viewCoverage) { |
|
|
|
@ -6108,7 +6108,7 @@ bool MeshTexture::CreateVirtualFaces64(FaceDataViewArr& facesDatas, FaceDataView |
|
|
|
nViewCoverage = 0; |
|
|
|
nViewCoverage = 0; |
|
|
|
nViewCoverageMax = 200; |
|
|
|
nViewCoverageMax = 200; |
|
|
|
nHit = 0; |
|
|
|
nHit = 0; |
|
|
|
nHitMax = 1; |
|
|
|
nHitMax = 10; |
|
|
|
for (size_t i = 0; i < sortedCams2.size(); ++i) |
|
|
|
for (size_t i = 0; i < sortedCams2.size(); ++i) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (nViewCoverage>=nViewCoverageMax) |
|
|
|
if (nViewCoverage>=nViewCoverageMax) |
|
|
|
@ -6162,8 +6162,8 @@ bool MeshTexture::CreateVirtualFaces64(FaceDataViewArr& facesDatas, FaceDataView |
|
|
|
// 处理所有视图都被过滤的情况...
|
|
|
|
// 处理所有视图都被过滤的情况...
|
|
|
|
// DEBUG_EXTRA("Warning: All views filtered for virtual face due to angle condition.");
|
|
|
|
// DEBUG_EXTRA("Warning: All views filtered for virtual face due to angle condition.");
|
|
|
|
|
|
|
|
|
|
|
|
selectedCams = SelectBestView(centerFaceDatas, virtualFaceCenterFaceID, minCommonCameras, ratioAngleToQuality); |
|
|
|
// selectedCams = SelectBestView(centerFaceDatas, virtualFaceCenterFaceID, minCommonCameras, ratioAngleToQuality);
|
|
|
|
// selectedCams = filteredCams;
|
|
|
|
selectedCams = filteredCams; |
|
|
|
isVirtualFace[virtualFaceCenterFaceID] = false; |
|
|
|
isVirtualFace[virtualFaceCenterFaceID] = false; |
|
|
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
} else { |
|
|
|
|