Commit 0ddede25 authored by David Flynn's avatar David Flynn
Browse files

cli: add option to disable attribute coding

Sometimes it is useful to encode geometry without attributes.  However,
the common test condition configurations all enable attribute coding.
In order to avoid rewriting the configuration files, the
"disableAttributeCoding" option configures the encoder as if no
attributes are specified.
parent 340edd70
......@@ -52,6 +52,9 @@ struct Parameters {
// output mode for ply writing (binary or ascii)
bool outputBinaryPly;
// when true, configure the encoder as if no attributes are specified
bool disableAttributeCoding;
std::string uncompressedDataPath;
std::string compressedStreamPath;
std::string reconstructedDataPath;
......@@ -282,6 +285,10 @@ ParseParameters(int argc, char* argv[], Parameters& params)
params.encoder.gps.geom_unique_points_flag, true,
"Enables removal of duplicated points")
("disableAttributeCoding",
params.disableAttributeCoding, false,
"Ignore attribute coding configuration")
(po::Section("Geometry"))
// tools
......@@ -404,6 +411,13 @@ ParseParameters(int argc, char* argv[], Parameters& params)
1.0f / params.encoder.sps.donotuse_trisoup_int_to_orig_scale;
}
// support disabling attribute coding (simplifies configuration)
if (params.disableAttributeCoding) {
params.encoder.attributeIdxMap.clear();
params.encoder.sps.attributeSets.clear();
params.encoder.aps.clear();
}
// fixup any per-attribute settings
for (const auto& it : params.encoder.attributeIdxMap) {
auto& attr_sps = params.encoder.sps.attributeSets[it.second];
......
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