@Test public void testBoundsFilteringReprojecting() throws Exception { ObjectDatabase db = geogig.getContext().objectDatabase(); RevTree tree1 = tree(1000, db); RevTree tree2 = tree(50, db); RevTree root = createRoot(db, tree1, tree2); CoordinateReferenceSystem nativeCrs = revtype.type().getCoordinateReferenceSystem(); CoordinateReferenceSystem queryCrs = CRS.decode("EPSG:4326", true); ReferencedEnvelope nativeFilter = new ReferencedEnvelope(49.9, 51.1, 49.9, 51.1, nativeCrs); ReferencedEnvelope queryFilter = nativeFilter.transform(queryCrs, true); List<DiffEntry> diffs; diffTree.setOldTree(ObjectId.NULL).setNewTree(root.getId()); diffTree.setBoundsFilter(queryFilter); diffs = ImmutableList.copyOf(diffTree.call()); assertEquals(2, diffs.size()); }
.setBoundsFilter(boundsPreFilter) //
@Test public void testBoundsFiltering() { ObjectDatabase db = geogig.getContext().objectDatabase(); RevTree tree1 = tree(1000, db); RevTree tree2 = tree(50, db); RevTree root = createRoot(db, tree1, tree2); CoordinateReferenceSystem crs = revtype.type().getCoordinateReferenceSystem(); ReferencedEnvelope filter; List<DiffEntry> diffs; diffTree.setOldTree(ObjectId.NULL).setNewTree(root.getId()); filter = new ReferencedEnvelope(50, 51, 50, 51, crs); diffTree.setBoundsFilter(filter); diffs = ImmutableList.copyOf(diffTree.call()); assertEquals(2, diffs.size()); }
@Test public void testBoundsFiltering() { ObjectDatabase db = geogig.getContext().objectDatabase(); RevTree tree1 = tree(1000, db); RevTree tree2 = tree(50, db); RevTree root = createRoot(db, tree1, tree2); CoordinateReferenceSystem crs = revtype.type().getCoordinateReferenceSystem(); ReferencedEnvelope filter; List<DiffEntry> diffs; diffTree.setOldTree(ObjectId.NULL).setNewTree(root.getId()); filter = new ReferencedEnvelope(50, 51, 50, 51, crs); diffTree.setBoundsFilter(filter); diffs = ImmutableList.copyOf(diffTree.call()); assertEquals(2, diffs.size()); }
@Test public void testBoundsFilteringReprojecting() throws Exception { ObjectDatabase db = geogig.getContext().objectDatabase(); RevTree tree1 = tree(1000, db); RevTree tree2 = tree(50, db); RevTree root = createRoot(db, tree1, tree2); CoordinateReferenceSystem nativeCrs = revtype.type().getCoordinateReferenceSystem(); CoordinateReferenceSystem queryCrs = CRS.decode("EPSG:4326", true); ReferencedEnvelope nativeFilter = new ReferencedEnvelope(49.9, 51.1, 49.9, 51.1, nativeCrs); ReferencedEnvelope queryFilter = nativeFilter.transform(queryCrs, true); List<DiffEntry> diffs; diffTree.setOldTree(ObjectId.NULL).setNewTree(root.getId()); diffTree.setBoundsFilter(queryFilter); diffs = ImmutableList.copyOf(diffTree.call()); assertEquals(2, diffs.size()); }
diffTree.setBoundsFilter(boundsFilter); assertEquals(10, Iterators.size(diffTree.setOldTree(rootId1).setNewTree(rootId2).call())); diffTree.setBoundsFilter(null); assertChangeTypeFilter(rootId1, rootId2, 0, 4, 0); assertChangeTypeFilter(rootId2, rootId1, 4, 0, 0); diffTree.setBoundsFilter(boundsFilter); assertChangeTypeFilter(rootId1, rootId2, 0, 2, 0); assertChangeTypeFilter(rootId2, rootId1, 2, 0, 0);
diffTree.setBoundsFilter(boundsFilter); assertEquals(10, Iterators.size(diffTree.setOldTree(rootId1).setNewTree(rootId2).call())); diffTree.setBoundsFilter(null); assertChangeTypeFilter(rootId1, rootId2, 0, 4, 0); assertChangeTypeFilter(rootId2, rootId1, 4, 0, 0); diffTree.setBoundsFilter(boundsFilter); assertChangeTypeFilter(rootId1, rootId2, 0, 2, 0); assertChangeTypeFilter(rootId2, rootId1, 2, 0, 0);