Revision: 65381
http://sourceforge.net/p/brlcad/code/65381
Author: ejno
Date: 2015-06-18 13:48:36 +0000 (Thu, 18 Jun 2015)
Log Message:
-----------
sort GRIDs by point value again; remove DBPath
Modified Paths:
--------------
brlcad/trunk/src/libgcv/conv/fastgen4/fastgen4_write.cpp
Modified: brlcad/trunk/src/libgcv/conv/fastgen4/fastgen4_write.cpp
===================================================================
--- brlcad/trunk/src/libgcv/conv/fastgen4/fastgen4_write.cpp 2015-06-18
13:06:55 UTC (rev 65380)
+++ brlcad/trunk/src/libgcv/conv/fastgen4/fastgen4_write.cpp 2015-06-18
13:48:36 UTC (rev 65381)
@@ -145,98 +145,6 @@
}
-class DBPath
-{
-public:
- struct Comparator {
- bool operator()(const DBPath &left, const DBPath &right) const;
- };
-
- DBPath();
- ~DBPath();
- explicit DBPath(const db_full_path &value);
- DBPath(const DBPath &source);
- DBPath &operator=(const DBPath &source);
-
- const db_full_path &get() const;
-
-private:
- db_full_path m_value;
-};
-
-
-bool
-DBPath::Comparator::operator()(const DBPath &left, const DBPath &right) const
-{
-#define COMPARE(a, b) \
- do { \
- const int r = bu_strcmp((a), (b)); \
- if (r) return r < 0; \
- } while (false)
-
- const std::size_t len = std::min(left.get().fp_len, right.get().fp_len);
-
- for (std::size_t i = 0; i < len; ++i)
- COMPARE(left.get().fp_names[i]->d_namep,
right.get().fp_names[i]->d_namep);
-
- return left.get().fp_len < right.get().fp_len;
-
-#undef COMPARE
-}
-
-
-inline DBPath::DBPath() :
- m_value()
-{
- db_full_path_init(&m_value);
-}
-
-
-inline
-DBPath::~DBPath()
-{
- db_free_full_path(&m_value);
-}
-
-
-inline
-DBPath::DBPath(const db_full_path &value) :
- m_value()
-{
- RT_CK_FULL_PATH(&value);
- db_full_path_init(&m_value);
- db_dup_full_path(&m_value, &value);
-}
-
-
-inline
-DBPath::DBPath(const DBPath &source) :
- m_value()
-{
- db_full_path_init(&m_value);
- db_dup_full_path(&m_value, &source.m_value);
-}
-
-
-inline DBPath &
-DBPath::operator=(const DBPath &source)
-{
- if (this != &source) {
- db_free_full_path(&m_value);
- db_dup_full_path(&m_value, &m_value);
- }
-
- return *this;
-}
-
-
-inline const db_full_path &
-DBPath::get() const
-{
- return m_value;
-}
-
-
class DBInternal
{
public:
@@ -745,22 +653,16 @@
if (m_next_grid_id - 1 > MAX_GRID_POINTS)
throw std::length_error("max grid points exceeded");
- std::set<std::pair<std::size_t, Point> > sorted_grids;
-
for (std::map<Point, std::vector<std::size_t>,
PointComparator>::const_iterator
- point_it = m_grids.begin(); point_it != m_grids.end(); ++point_it)
- for (std::vector<std::size_t>::const_iterator id_it =
point_it->second.begin();
- id_it != point_it->second.end(); ++id_it)
- sorted_grids.insert(std::make_pair(*id_it, point_it->first));
-
- for (std::set<std::pair<std::size_t, Point> >::const_iterator it =
- sorted_grids.begin(); it != sorted_grids.end(); ++it) {
- RecordWriter::Record record(writer);
- record << "GRID" << it->first << "";
- record << it->second[X] * INCHES_PER_MM;
- record << it->second[Y] * INCHES_PER_MM;
- record << it->second[Z] * INCHES_PER_MM;
- }
+ it = m_grids.begin(); it != m_grids.end(); ++it)
+ for (std::vector<std::size_t>::const_iterator id_it =
it->second.begin();
+ id_it != it->second.end(); ++id_it) {
+ RecordWriter::Record record(writer);
+ record << "GRID" << *id_it << "";
+ record << it->first[X] * INCHES_PER_MM;
+ record << it->first[Y] * INCHES_PER_MM;
+ record << it->first[Z] * INCHES_PER_MM;
+ }
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits