Commit 90b16a38 authored by David Flynn's avatar David Flynn
Browse files

refactor: replace PCCBox3D typedef with Box3<double>

This is part of a series attempting to remove unhelpful typedefs.

The old typedefs (PCCBox3D) is retained for compatibility, but marked as
deprecated.
parent 887827fd
......@@ -474,7 +474,7 @@ private:
//---------------------------------------
class PCCKdTree3 {
struct PCCKdTree3Node {
PCCBox3D BB;
Box3<double> BB;
Vec3<double> centd;
uint32_t id;
uint32_t start;
......@@ -513,7 +513,7 @@ public:
const uint32_t end = isLeftNode
? static_cast<uint32_t>(nodes[parentNodeIdx].medianIdx)
: static_cast<uint32_t>(nodes[parentNodeIdx].end);
PCCBox3D BB = nodes[parentNodeIdx].BB;
Box3<double> BB = nodes[parentNodeIdx].BB;
isLeftNode
? BB.max[nodes[parentNodeIdx].axis] = nodes[parentNodeIdx].median
: BB.min[nodes[parentNodeIdx].axis] = nodes[parentNodeIdx].median;
......@@ -547,7 +547,7 @@ public:
pointCloudTemp[i].isVisisted = false;
}
PCCBox3D BB = computeBoundingBox(0, pointCount);
Box3<double> BB = computeBoundingBox(0, pointCount);
Vec3<double> nodeMean = computePCCMean(0, pointCount);
PCCAxis3 axis = computeSplitAxisVar(0, pointCount, nodeMean);
uint32_t medianIdx = findMedian(0, pointCount, axis);
......@@ -599,7 +599,8 @@ public:
}
private:
PCCBox3D computeBoundingBox(const uint32_t start, const uint32_t end) const
Box3<double>
computeBoundingBox(const uint32_t start, const uint32_t end) const
{
Vec3<double> minBB = pointCloudTemp[start].pos;
Vec3<double> maxBB = pointCloudTemp[start].pos;
......@@ -613,7 +614,7 @@ private:
}
}
}
PCCBox3D BB;
Box3<double> BB;
{
BB.min = minBB;
BB.max = maxBB;
......@@ -622,7 +623,7 @@ private:
}
PCCAxis3 computeSplitAxis(const uint32_t start, const uint32_t end) const
{
PCCBox3D BB = computeBoundingBox(start, end);
Box3<double> BB = computeBoundingBox(start, end);
Vec3<double> d = BB.max - BB.min;
if (d.x() > d.y() && d.x() > d.z()) {
return PCC_AXIS3_X;
......
......@@ -335,7 +335,7 @@ struct Box3 {
typedef DEPRECATED_MSVC Vec3<double> PCCVector3D DEPRECATED;
typedef DEPRECATED_MSVC Vec3<double> PCCPoint3D DEPRECATED;
typedef Box3<double> PCCBox3D;
typedef DEPRECATED_MSVC Box3<double> PCCBox3D DEPRECATED;
typedef DEPRECATED_MSVC Vec3<uint8_t> PCCColor3B DEPRECATED;
template<typename T>
......
......@@ -428,10 +428,10 @@ public:
std::swap(getReflectance(index1), getReflectance(index2));
}
}
PCCBox3D computeBoundingBox() const
Box3<double> computeBoundingBox() const
{
PCCBox3D bbox = {std::numeric_limits<double>::max(),
std::numeric_limits<double>::lowest()};
Box3<double> bbox = {std::numeric_limits<double>::max(),
std::numeric_limits<double>::lowest()};
const size_t pointCount = getPointCount();
for (size_t i = 0; i < pointCount; ++i) {
const Vec3<double>& pt = (*this)[i];
......
......@@ -121,7 +121,7 @@ quantizePositions(
dst->resize(numSrcPoints);
}
PCCBox3D clampD{
Box3<double> clampD{
{double(clamp.min[0]), double(clamp.min[1]), double(clamp.min[2])},
{double(clamp.max[0]), double(clamp.max[1]), double(clamp.max[2])},
};
......@@ -154,7 +154,7 @@ quantizePositions(
// Clamp point co-ordinates in @cloud to @bbox, preserving attributes.
inline void
clampVolume(PCCBox3D bbox, PCCPointSet3* cloud)
clampVolume(Box3<double> bbox, PCCPointSet3* cloud)
{
int numSrcPoints = cloud->getPointCount();
......
......@@ -426,7 +426,7 @@ computeNearestNeighbors(
std::vector<PCCPredictor>& predictors,
std::vector<uint32_t>& pointIndexToPredictorIndex,
int32_t& predIndex,
std::vector<PCCBox3D>& bBoxes)
std::vector<Box3<double>>& bBoxes)
{
const int32_t retainedSize = retained.size();
const int32_t bucketSize = 8;
......@@ -762,7 +762,7 @@ buildPredictorsFast(
numberOfPointsPerLevelOfDetail.reserve(21);
numberOfPointsPerLevelOfDetail.push_back(pointCount);
std::vector<PCCBox3D> bBoxes;
std::vector<Box3<double>> bBoxes;
int32_t predIndex = int32_t(pointCount);
for (uint32_t lodIndex = 0; !input.empty() && lodIndex <= levelOfDetailCount;
++lodIndex) {
......
......@@ -87,7 +87,7 @@ partitionByUniformGeom(const PCCPointSet3& cloud, int numPartitions)
{
PartitionSet partitions;
PCCBox3D bbox = cloud.computeBoundingBox();
Box3<double> bbox = cloud.computeBoundingBox();
int maxEdgeAxis = longestAxis(bbox);
int maxEdge = bbox.max[maxEdgeAxis] - bbox.min[maxEdgeAxis];
......
Supports Markdown
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