/** * Gets the physical to virtual scale. */ protected double getPhysicalToVirtualScale() { view.getCanvas3D(0).getImagePlateToVworld(t3dTmp) ; t3dTmp.get(m16Tmp) ; return Math.sqrt(m16Tmp[0]*m16Tmp[0] + m16Tmp[1]*m16Tmp[1] + m16Tmp[2]*m16Tmp[2]) ; }
final void volumeToIP(final Canvas3D canvas, final Transform3D ret) { canvas.getImagePlateToVworld(ret); ret.invert(); rootBranchGroup.getLocalToVworld(toVWorld); ret.mul(toVWorld); }
public void retain(final Canvas3D canvas, final Polygon polygon) { final Transform3D volToIP = new Transform3D(); canvas.getImagePlateToVworld(volToIP); volToIP.invert(); final Transform3D toVWorld = new Transform3D(); this.getLocalToVworld(toVWorld); volToIP.mul(toVWorld); final ArrayList<Point3f> f = new ArrayList<Point3f>(); for (int i = 0; i < mesh.size(); i += 3) { final Point3f p1 = mesh.get(i); final Point3f p2 = mesh.get(i + 1); final Point3f p3 = mesh.get(i + 2); if (roiContains(p1, volToIP, canvas, polygon) || roiContains(p2, volToIP, canvas, polygon) || roiContains(p3, volToIP, canvas, polygon)) { f.add(p1); f.add(p2); f.add(p3); } } mesh.clear(); mesh.addAll(f); update(); }
private void volumeToImagePlate(final Canvas3D canvas, final Transform3D volToIP) { canvas.getImagePlateToVworld(volToIP); volToIP.invert(); final Transform3D toVWorld = new Transform3D(); node.getLocalToVworld(toVWorld); volToIP.mul(toVWorld); }
private static Point3d getViewPosInLocal(final View view, final Node node) { if (node == null) return null; if (!node.isLive()) return null; // get viewplatforms's location in virutal world final Canvas3D canvas = view.getCanvas3D(0); canvas.getCenterEyeInImagePlate(viewPosition); canvas.getImagePlateToVworld(t); t.transform(viewPosition); // get parent transform node.getLocalToVworld(parentInv); parentInv.invert(); // transform the eye position into the parent's coordinate system parentInv.transform(viewPosition); return viewPosition; }
/** * return the eye's position in <node>'s coordinate space */ private static Point3d getViewPosInLocal(final View view, final Node node) { if (node == null) return null; if (!node.isLive()) return null; // get viewplatforms's location in virutal world final Canvas3D canvas = view.getCanvas3D(0); canvas.getCenterEyeInImagePlate(viewPosition); canvas.getImagePlateToVworld(t); t.transform(viewPosition); // get parent transform node.getLocalToVworld(parentInv); parentInv.invert(); // transform the eye position into the parent's coordinate system parentInv.transform(viewPosition); return viewPosition; }
canvas.getImagePlateToVworld(toCamera); toCamera.transform(eye); canvas.getImagePlateToVworld(toIpInverse);
canvas.getImagePlateToVworld(motion);
canvas.getImagePlateToVworld(volToIP); volToIP.invert(); volumeToImagePlate(volToIP);
distancePtToDelta *= tolerance; canvas.getImagePlateToVworld(motion);
distancePtToDelta *= tolerance; canvas.getImagePlateToVworld(motion);
canvas.getImagePlateToVworld(xform); // xform is imagePlateToLocal xform.transform(viewPosition); canvas.getImagePlateToVworld(xform); // xform is ImagePlateToVworld
canvas.getImagePlateToVworld(xform); // xform is imagePlateToLocal xform.transform(viewPosition); canvas.getImagePlateToVworld(xform); // xform is ImagePlateToVworld xform.transform(viewPosition); xform.transform(yUpPoint);