package com.github.davidmoten.rtree;
import java.util.Arrays;
import java.util.List;
import rx.Observable;
import com.github.davidmoten.rtree.geometry.Point;
public class GalleryMain {
public static void main(String[] args) {
Observable<Entry<Object, Point>> entries = GreekEarthquakes.entries().cache();
List<Integer> sizes = Arrays.asList(100, 1000, 10000, 1000000);
List<Integer> maxChildrenValues = Arrays.asList(4, 8, 16, 32, 64, 128);
for (int size : sizes)
for (int maxChildren : maxChildrenValues) {
if (size > maxChildren) {
System.out.println("saving " + size + " m=" + maxChildren);
RTree<Object, Point> tree = RTree.maxChildren(maxChildren)
.<Object, Point> create().add(entries.take(size)).last().toBlocking()
.single();
tree.visualize(600, 600).save(
"target/greek-" + size + "-" + maxChildren + "-quad.png");
RTree<Object, Point> tree2 = RTree.star().maxChildren(maxChildren)
.<Object, Point> create().add(entries.take(size)).last().toBlocking()
.single();
tree2.visualize(600, 600).save(
"target/greek-" + size + "-" + maxChildren + "-star.png");
}
}
}
}