c# - 快速二维积分坐标到 C# 中的自定义类字典集合
问题描述
我需要一个快速集合,将二维 int 类型点映射到 C# 中的自定义类。
该集合需要具有:
- 快速查找(自定义类的坐标),如果不存在则添加一个点
- 快速移除关键点范围(在给定矩形之外)。这实际上排除了
Dictionary<Point2D, ...>
,因为分析发现这个操作在我的示例实现中占用了整个帧时间的 35% :-(
编辑:强调:我想删除给定矩形之外的所有字段(杀死未使用的缓存)
坐标可以采用任何 int 值(它们用于缓存 Unity 中靠近相机的 [几乎] 无限等距 2D 地图图块)。
这些点将始终以类似矩形的结构组织(我可以放宽这个要求以始终遵循矩形,实际上我使用的是等距投影)。
结构本身用于缓存 tile 特定的数据(如 tile-transitions)
解决方案
我认为这就是你需要的:RTree
推荐阅读
- sql - DB2 for z/OS SQL:不允许覆盖用户值
- android-studio - Flutter项目中的AaptProcess
- vb.net - Visual Basic 中的多个升序面板
- c# - 无法单击带有样式的日历日期
- jenkins - 如何将 Jenkins 构建历史从一台服务器复制到另一台服务器?
- python - Flask 和 HTML:重定向 json 响应以显示在同一页面的底部,而不是在单独的页面上显示响应
- lua - vb.net 用户的 Lua 脚本
- javascript - HTML5 样板中的“未捕获的 ReferenceError:未定义导出”
- java - 创建具有可变生成量的树状结构
- ios - iOS 金属 3d 网格顶点位置