/** * @param vv the VisualizationViewer to work on */ public PerspectiveImageLensSupport(VisualizationViewer<V,E> vv) { super(vv); this.renderContext = vv.getRenderContext(); this.pickSupport = renderContext.getPickSupport(); this.renderer = vv.getRenderer(); this.transformingRenderer = new BasicRenderer<V,E>(); this.perspectiveTransformer = new PerspectiveShapeTransformer(new PerspectiveTransform(), vv.getRenderContext().getMultiLayerTransformer().getTransformer(Layer.VIEW)); this.transformingRenderer.setVertexRenderer(new TransformingImageVertexIconRenderer<V,E>()); this.lensGraphicsDecorator = new TransformingGraphics(perspectiveTransformer); this.savedGraphicsDecorator = renderContext.getGraphicsContext(); this.renderer = vv.getRenderer(); }
/** * create the base class, setting common members and creating * a custom GraphMouse * @param vv the VisualizationViewer to work on */ public HyperbolicImageLensSupport(VisualizationViewer<V,E> vv, LensTransformer lensTransformer, ModalGraphMouse lensGraphMouse) { super(vv, lensGraphMouse); this.renderContext = vv.getRenderContext(); this.pickSupport = renderContext.getPickSupport(); this.renderer = vv.getRenderer(); this.transformingRenderer = new BasicRenderer<V,E>(); this.transformingRenderer.setVertexRenderer(new TransformingImageVertexIconRenderer<V,E>()); this.savedGraphicsDecorator = renderContext.getGraphicsContext(); this.lensTransformer = lensTransformer; this.savedEdgeRenderer = vv.getRenderer().getEdgeRenderer(); this.reshapingEdgeRenderer = new ReshapingEdgeRenderer<V,E>(); this.reshapingEdgeRenderer.setEdgeArrowRenderingSupport(savedEdgeRenderer.getEdgeArrowRenderingSupport()); Dimension d = vv.getSize(); // if(d.width == 0 || d.height == 0) { // d = vv.getPreferredSize(); // } lensTransformer.setViewRadius(d.width/5); this.lensGraphicsDecorator = new TransformingFlatnessGraphics(lensTransformer); }