[Bprocessor-commit] model/src/net/sourceforge/bprocessor/model ClippingPlane.java, 1.13, 1.14 Geome
Status: Pre-Alpha
Brought to you by:
henryml
|
From: rimestad <rim...@us...> - 2006-11-13 14:56:16
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv3621/src/net/sourceforge/bprocessor/model Modified Files: ClippingPlane.java Geometry.java Log Message: made clipplanes more visible and changed the way edges and surfaces crossing the plane is found Index: Geometry.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Geometry.java,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** Geometry.java 30 Oct 2006 10:42:17 -0000 1.35 --- Geometry.java 13 Nov 2006 14:56:15 -0000 1.36 *************** *** 34,48 **** */ public static Collection getActiveEdges(Space s) { ! if (s.getElements().isEmpty()) { ! Collection c = s.getEdges(); ! if (c.isEmpty()) { ! Collection e = new ArrayList(); ! Iterator iter = s.getEnvelope().iterator(); ! while (iter.hasNext()) { ! e.addAll(((Surface)iter.next()).getEdges()); ! } ! return e; } ! return c; } else { ArrayList edges = new ArrayList(); --- 34,45 ---- */ public static Collection getActiveEdges(Space s) { ! if (s.getElements().size() == 1) { ! Collection e = new ArrayList(); ! e.addAll(s.getEdges()); ! Iterator iter = s.getEnvelope().iterator(); ! while (iter.hasNext()) { ! e.addAll(((Surface)iter.next()).getEdges()); } ! return e; } else { ArrayList edges = new ArrayList(); *************** *** 50,56 **** while (iter.hasNext()) { Space cur = (Space)iter.next(); ! Collection c = getActiveEdges(cur); ! edges.addAll(c); } return edges; } --- 47,56 ---- while (iter.hasNext()) { Space cur = (Space)iter.next(); ! if (cur != s.getEmpty()) { ! Collection c = getActiveEdges(cur); ! edges.addAll(c); ! } } + edges.addAll(s.getEdges()); return edges; } *************** *** 64,87 **** */ public static Collection getActiveSurfaces(Space s) { ! if (s.getElements().isEmpty()) { ! Collection c = s.getSurfaces(); ! if (c.isEmpty()) { ! return s.getEnvelope(); ! } else { ! return c; ! } } else { ArrayList surfaces = new ArrayList(); Iterator iter = s.getElements().iterator(); while (iter.hasNext()) { ! try { ! Space cur = (Space)iter.next(); surfaces.addAll(getActiveSurfaces(cur)); - } catch (ClassCastException e) { - log.info("Elements in " + s + " were not only spaces"); - e.printStackTrace(); - break; } } return surfaces; } --- 64,84 ---- */ public static Collection getActiveSurfaces(Space s) { ! if (s.getElements().size() == 1) { ! //If void is the only space add all surfaces in the space and the envelope ! Collection c = new ArrayList(); ! c.addAll(s.getSurfaces()); ! c.addAll(s.getEnvelope()); ! return c; } else { + //If there are elements call recursive on elements and add envelope ArrayList surfaces = new ArrayList(); Iterator iter = s.getElements().iterator(); while (iter.hasNext()) { ! Space cur = (Space)iter.next(); ! if (cur != s.getEmpty()) { surfaces.addAll(getActiveSurfaces(cur)); } } + surfaces.addAll(s.getSurfaces()); return surfaces; } Index: ClippingPlane.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/ClippingPlane.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** ClippingPlane.java 7 Nov 2006 10:51:24 -0000 1.13 --- ClippingPlane.java 13 Nov 2006 14:56:14 -0000 1.14 *************** *** 77,81 **** Vertex n = c.getN().copy(); n.normalize(); ! n.scale(0.01); c.move(n.getX(), n.getY(), n.getZ()); plane = c.plane(); --- 77,81 ---- Vertex n = c.getN().copy(); n.normalize(); ! n.scale(0.00001); c.move(n.getX(), n.getY(), n.getZ()); plane = c.plane(); |