在空间图上使用Boost凸面船体
Use boost convex hull on spatial graph
如果有嵌入到其顶点中的位置数据(浮子(的位置数据,是否有一种方法可以使用boost convex hull算法,并将顶点作为输出。<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</p>
该图被定义为:
struct RoadVertexData {
long long id;
glm::vec3 position;
};
using RGraph = boost::adjacency_list < boost::vecS, boost::vecS, boost::undirectedS, RoadVertexData>;
您可以通过一些努力将其转换为/从点到顶点,但是我试图理解它是否可以在不努力的情况下完成。
不用努力就无法完成。
但是,您可以通过交易开发成本来优化运行时成本。
请注意,这将是现在的开发费用,用于测试以及将来需要更改数据架构时。没有什么新鲜事物,这就是解耦软件始终工作和工作的方式。
以优化的名义增加耦合会带来添加耦合的成本。
现在,要做的工作并不小。您必须将图形类型调整为您希望其建模的几何概念。
- 概念
- 现有的改编可以用作构建基础/示例
如何收回结果是另一个问题。我假设您期望这是图表吗?还是一系列顶点描述符?后者显然更简单。
相反?
如果您的图代表主要的几何概念,请考虑进行反向路线。Boost Graph还列出了其图形概念的要求,因此您可能需要将数据存储为增强几何数据结构并调整它。
相关文章:
- Boost.Python :C++模板类型匹配的嵌套命名空间
- 在命名空间中使用 boost::p rogram_options::验证自己的类
- 我的boost managed_shared_memory在离开作用域时似乎不会从内存空间中取消映射
- 如何将 Boost::ASIO 与用户空间网络堆栈集成?
- Boost ODEINT:具有自定义类和向量空间代数的受控步进器
- boost :: filesystem :: space()报告错误的磁盘空间
- boost.log错误与命名空间
- 如何处理boost :: fileSystem ::路径的空间
- 在空间图上使用Boost凸面船体
- 更改命名空间以自定义 Boost XML 的标记名称后的反序列化问题
- 将 boost odeint 与 std::map 和自定义向量空间代数一起使用时,没有可行的重载'='
- 为什么在boost ::交换中将swap_impl移动到单独的名称空间
- 命名空间中没有名为'dynamic_cast_tag'的成员 boost::d etail (SALOME 7.3.0)
- C++在boost python中使用带有命名空间的自定义智能指针
- boost::iostreams::copy-sink-ENOSPC(设备上没有剩余空间)错误处理
- 命名空间的 Boost.Log 错误
- 如何更改boost命名空间
- 如何使用boost或poco获得(已用/可用/总)磁盘空间
- Boost测试失败,命名空间中有枚举类
- Boost突然进入我的命名空间,声称由于缺少函数而出现错误