Rtree实现多维空间搜索
admin
2023-07-29 23:00:09
0

    好的,现在有这么一个需求。你所开发的应用的数据库中有全市所有饭店的经纬度坐标,现在你在某地定位了一个坐标,应用如何给你找出最近的饭店。多维空间搜索,使用RTree。这里只推荐已有的实现了RTree的jar包。

maven项目,可下载jar包,并且这是一个简单的例子:https://github.com/aled/jsi-examples

在线API:http://jsi.sourceforge.net/apidocs/index.html 


下面附上自己很low的测试代码:

net.sf.jsi.examples;

gnu.trove.procedure.TIntProcedure;
net.sf.jsi.Point;
net.sf.jsi.Rectangle;
net.sf.jsi.SpatialIndex;
net.sf.jsi.rtree.RTree;

TestRTree {
    run() {
        Point point = Point(, );
        Rectangle[] rectangle = Rectangle[];
        rectangle[] = Rectangle(, , , );
        rectangle[] = Rectangle(, , , );
        rectangle[] = Rectangle(-, -, -, -);
        rectangle[] = Rectangle(-, -, -, -);
        SpatialIndex si = RTree();
        si.init();
        (i = ; i < rectangle.; i++) {
            si.add(rectangle[i], i);
        }
        si.nearestN(point, TIntProcedure() {
            execute(i) {
                System..println(+ i + + [i] + + [i].distance());
                ;
            }
        }, , Float.);

    }

    main(String[] args) {
        TestRTree().run();
    }
}


相关内容

热门资讯

英国政客妄言:军服外包给中国是... 早前捕风捉影,臆测军帽帽徽内置监控装置,眼下又凭空渲染军服交由中国生产存在“安全风险”。英国在涉华领...
寻味金水| 2026醉美金水首... 盛夏夜,烟火起!7月3日,备受瞩目的“醉美金水·2026首届美食嘉年华”在河南中州皇冠假日酒店广场盛...
河北一高校开展学术论文贡献分配... 澎湃新闻记者 钟煜豪为避免因作者署名排序、第一作者与通讯作者关系等问题产生争议,石家庄学院科研处近日...
华盛顿高温中迎庆典,游客:特朗... 据凤凰卫视报道,美国建国250周年庆典7月4日在华盛顿国家广场正式登场。华盛顿每年的庆祝活动通常会吸...
空调eco是什么功能 空调的 ECO 功能是一种节能模式。它通过调整空调的运行参数,如温度、风速和压缩机运行频率等,来降低...
空调数字大热还是数字小热 空调的温度设置通常以数字表示,数字越大表示设定的温度越高,数字越小表示设定的温度越低。因此,如果你想...
又一地追偿户外救援费用,“光盒... 2026年5月中旬的一个上午,小刘身穿红马甲,站在深圳大鹏鹅公村的登山口前,向每位登山者递上安全提示...
美的空调怎么手动开启 以美的空调为例,手动开关的确切位置是在打开内机的机壳后,右边靠近电气部品箱的地方,有一个半隐蔽的小按...
美的eco模式什么意思 美的空调的 ECO 模式是一种节能模式,它通过降低空调的功率和制冷/制热效率来达到节能的目的。在 E...
奥克斯空调l3是什么故障 奥克斯空调显示 L3 故障代码通常表示室外直流风机故障。这可能是由于以下原因之一引起的:1. 风机故...