Skip to content
Snippets Groups Projects
Commit 1df1f8fe authored by mark's avatar mark Committed by Mark OLESEN
Browse files

STYLE: adjust mergePoints to ease adoption of different list types (issue #250)

- A preliminary minor adjustment only.
parent dad301d8
Branches
No related merge requests found
......@@ -39,23 +39,22 @@ Foam::label Foam::mergePoints
const Type& origin
)
{
Type compareOrigin = origin;
if (origin == Type::max)
{
if (points.size())
{
compareOrigin = sum(points)/points.size();
}
}
// Create a old to new point mapping array
pointMap.setSize(points.size());
pointMap = -1;
if (points.empty())
{
return points.size();
return 0;
}
// Explicitly convert to Field to support various list types
tmp<Field<Type>> tPoints(new Field<Type>(points));
Type compareOrigin = origin;
if (origin == Type::max)
{
compareOrigin = sum(tPoints())/points.size();
}
// We're comparing distance squared to origin first.
......@@ -70,7 +69,7 @@ Foam::label Foam::mergePoints
const scalar mergeTolSqr = Foam::sqr(scalar(mergeTol));
// Sort points by magSqr
const Field<Type> d(points - compareOrigin);
const Field<Type> d(tPoints - compareOrigin);
List<scalar> magSqrD(d.size());
forAll(d, pointI)
......@@ -98,12 +97,10 @@ Foam::label Foam::mergePoints
label newPointI = 0;
// Handle 0th point separately (is always unique)
label pointI = order[0];
pointMap[pointI] = newPointI++;
for (label sortI = 1; sortI < order.size(); sortI++)
{
// Get original point index
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment