/** * Center the universe at the given point. */ public void centerAt(final Point3d p) { getViewPlatformTransformer().centerAt(p); }
@Override public Boolean call() { // Now adjust universe view if (univ.autoAdjustView) { univ.getViewPlatformTransformer().centerAt(univ.globalCenter); final float range = (float) (univ.globalMax.x - univ.globalMin.x); univ.ensureScale(range); } // Notify listeners univ.waitForNextFrame(); univ.fireTransformationUpdated(); return true; } });
@Override public Content call() { synchronized (lock) { if (!addContentToScene(c)) return null; if (univ.autoAdjustView) { univ.getViewPlatformTransformer().centerAt(univ.globalCenter); final float range = (float) (univ.globalMax.x - univ.globalMin.x); univ.ensureScale(range); } } univ.fireContentAdded(c); univ.addUniverseListener(c); univ.waitForNextFrame(); univ.fireTransformationUpdated(); return c; } });
/** * Select the view at the selected Content. */ public void centerSelected(final Content c) { final Point3d center = new Point3d(); c.getContent().getCenter(center); final Transform3D localToVWorld = new Transform3D(); c.getContent().getLocalToVworld(localToVWorld); localToVWorld.transform(center); getViewPlatformTransformer().centerAt(center); }
/** * Reset the transformations of the view side of the scene graph as if the * Contents of this universe were just displayed. */ public void resetView() { fireTransformationStarted(); // rotate so that y shows downwards final Transform3D t = new Transform3D(); final AxisAngle4d aa = new AxisAngle4d(1, 0, 0, Math.PI); t.set(aa); getRotationTG().setTransform(t); t.setIdentity(); getTranslateTG().setTransform(t); getZoomTG().setTransform(t); recalculateGlobalMinMax(); getViewPlatformTransformer().centerAt(globalCenter); // reset zoom final double d = oldRange / Math.tan(Math.PI / 8); getViewPlatformTransformer().zoomTo(d); fireTransformationUpdated(); fireTransformationFinished(); }