Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv504/src/net/sourceforge/bprocessor/gl/view
Modified Files:
View3D.java
Log Message:
Minor refactoring of ray-plane intersection code
Index: View3D.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/View3D.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** View3D.java 31 Aug 2005 07:02:51 -0000 1.11
--- View3D.java 31 Aug 2005 08:03:32 -0000 1.12
***************
*** 8,11 ****
--- 8,12 ----
import net.sourceforge.bprocessor.gl.GLView;
+ import net.sourceforge.bprocessor.model.Edge;
import net.sourceforge.bprocessor.model.Plane;
import net.sourceforge.bprocessor.model.Vertex;
***************
*** 171,186 ****
Plane xy = new Plane(0, 0, 1, 0);
! Vertex origin = new Vertex("origin");
! origin.setX(x);
! origin.setY(AbstractView.getHeight() - y);
! origin.setZ(0.0);
! origin = transformation.unProject(origin);
! Vertex direction = new Vertex("direction");
! direction.setX(x);
! direction.setY(AbstractView.getHeight() - y);
! direction.setZ(1.0);
! direction = transformation.unProject(direction);
! direction = direction.minus(origin);
! Vertex vertex = xy.intersection(origin, direction);
return new double[] {vertex.getX(), vertex.getY(), vertex.getZ()};
} else {
--- 172,188 ----
Plane xy = new Plane(0, 0, 1, 0);
! Vertex near = new Vertex("near");
! near.setX(x);
! near.setY(AbstractView.getHeight() - y);
! near.setZ(0.0);
! Vertex far = new Vertex("far");
! far.setX(x);
! far.setY(AbstractView.getHeight() - y);
! far.setZ(1.0);
! Edge ray = new Edge("ray");
! ray.setFrom(near);
! ray.setTo(far);
! ray = transformation.unProject(ray);
! Vertex vertex = xy.intersection(ray);
return new double[] {vertex.getX(), vertex.getY(), vertex.getZ()};
} else {
|