private final LiteShape2 getTransformedShape(Geometry g, MathTransform2D transform) throws TransformException, FactoryException { for (int i = 0; i < geometries.size(); i++) { if(geometries.get(i) == g) return (LiteShape2) shapes.get(i); } LiteShape2 shape = new LiteShape2(g, transform, getDecimator(transform), false, clone); geometries.add(g); shapes.add(shape); return shape; }
LiteShape2 shape = drawMe.getShape(symbolizer, worldToScreenTransform); if (shape == null) { continue;
&& !(symbolizer instanceof PointSymbolizer) // && !(g instanceof Point) && getGeometryIndex(g) == -1) { Envelope env = g.getEnvelopeInternal(); if (screenMap.canSimplify(env)) LiteShape2 first = getTransformedShape(g, sa); if (first != null) { if (projectionHandler != null) { return getTransformedShape(RendererUtilities.getCentroid(tx), sa); } else { return getTransformedShape(RendererUtilities.getCentroid(g), null); return getTransformedShape(RendererUtilities.getCentroid(g), sa); return getTransformedShape(g, sa);
RenderableFeature rf = new RenderableFeature(fts_array.length > 1); rf.setLayer(currLayer); int t = 0; while (!renderingStopRequested) { // loop exit condition tested inside try catch break; rf.setFeature(iterator.next()); for (t = 0; t < n_lfts; t++) { process(rf, fts_array[t], scaleRange, at, destinationCrs, layerId);
LiteShape2 shape = drawMe.getShape(symbolizer, at); if(shape == null) { continue;
&& !(symbolizer instanceof PointSymbolizer) // && !(g instanceof Point) && getGeometryIndex(g) == -1) { Envelope env = g.getEnvelopeInternal(); if(screenMap.canSimplify(env)) LiteShape2 first = getTransformedShape(g, sa); if(first != null) { if(projectionHandler != null) { return getTransformedShape(RendererUtilities.getCentroid(tx), sa); } else { return getTransformedShape(RendererUtilities.getCentroid(g), null); return getTransformedShape(RendererUtilities.getCentroid(g), sa); return getTransformedShape(g, sa);
LiteShape2 shape = drawMe.getShape(symbolizer, at); if(shape == null) continue;
getTransformedShape(g, sa.getXform()); return getTransformedShape(RendererUtilities.getCentroid(g), null); } else { return getTransformedShape(RendererUtilities.getCentroid(g), sa.getXform()); return getTransformedShape(g, sa.getXform());
RenderableFeature rf = new RenderableFeature(currLayer, clone); rf.setFeature(iterator.next()); rf.setScreenMap(liteFeatureTypeStyle.screenMap); process(rf, liteFeatureTypeStyle, scaleRange, at, destinationCrs, layerId);
private LiteShape2 getTransformedShape(Geometry originalGeom, SymbolizerAssociation sa) throws TransformException, FactoryException { int idx = getGeometryIndex(originalGeom); if(idx != -1) { return (LiteShape2) shapes.get(idx); } else { Decimator d = getDecimator(sa.xform); d.decimateTransformGeneralize(geom, sa.crsxform); geom.geometryChanged(); if(sa != null) xform = sa.xform; shape = new LiteShape2(geom, xform, getDecimator(xform), false, false);
RenderableFeature rf = new RenderableFeature(currLayer, clone); rf.setFeature(iterator.next()); process(rf, liteFeatureTypeStyle, scaleRange, at, destinationCrs, layerId); } catch (Throwable tr) {
private LiteShape2 getTransformedShape(Geometry originalGeom, SymbolizerAssociation sa) throws TransformException, FactoryException { int idx = getGeometryIndex(originalGeom); if (idx != -1) { return (LiteShape2) shapes.get(idx); } else { Decimator d = getDecimator(sa.xform); geom = d.decimateTransformGeneralize(geom, sa.rxform); geom.geometryChanged(); MathTransform xform = null; if (sa != null) xform = sa.xform; shape = new LiteShape2(geom, xform, getDecimator(xform), false, false);
rf.setScreenMap(fts.screenMap); rf.layer = fts.layer; rf.metaBuffer = fts.metaBuffer;
RenderableFeature rf = createRenderableFeature(layerId, cloningRequired); rf.layer = liteFeatureTypeStyle.layer; rf.setScreenMap(liteFeatureTypeStyle.screenMap); rf.setFeature(featureIterator.next()); processFeature(rf, liteFeatureTypeStyle);
rf.setFeature(iterator.next());
public void paintKey(SortKey reference) throws IOException { // anything to paint? if (!reference.equals(currentKey)) { return; } Feature startFeature = currentFeature; iterator.mark(); for (int i = 0; i < lfts.size(); i++) { while (!complete && reference.equals(currentKey)) { renderable.setFeature(currentFeature); renderer.processFeature(renderable, lfts.get(i)); if (renderer.renderingStopRequested) { return; } next(); } // we have to restart from the beginning with the next fts, remember // the first feature was already loaded if (i < (lfts.size() - 1)) { iterator.reset(); complete = false; currentFeature = startFeature; currentKey.copy(reference); } } }
/** * Builds a new renderable feature for the given layerId and set of lite feature type styles * * @param layerId * @param cloningRequired TODO * @return */ RenderableFeature createRenderableFeature(String layerId, boolean cloningRequired) { RenderableFeature rf = new RenderableFeature(layerId, cloningRequired); return rf; }