Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv19819/src/net/sourceforge/bprocessor/model
Modified Files:
Surface.java Command.java SurfaceAnalysis.java
Log Message:
Fixed bug in pencil analysis
Index: Surface.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Surface.java,v
retrieving revision 1.214
retrieving revision 1.215
diff -C2 -d -r1.214 -r1.215
*** Surface.java 19 Dec 2007 09:03:41 -0000 1.214
--- Surface.java 10 Jan 2008 09:54:05 -0000 1.215
***************
*** 78,103 ****
}
double y = Double.MAX_VALUE;
! Edge e1 = null;
! Edge e2 = null;
! Edge previous = edges.get(0);
! Iterator iter = edges.iterator();
! iter.next();
! while (iter.hasNext()) {
! Edge current = (Edge) iter.next();
! Vertex v = Edge.commonVertex(previous, current);
! v = system.translate(v);
! if (v.getY() <= y) {
! y = v.getY();
! e1 = previous;
! e2 = current;
}
- previous = current;
}
! if (e1 == null || e2 == null) {
! return PARALLEL;
}
! Vertex common = Edge.commonVertex(e1, e2);
! Vertex from = e1.otherVertex(common);
! Vertex to = e2.otherVertex(common);
from = system.translate(from);
common = system.translate(common);
--- 78,122 ----
}
double y = Double.MAX_VALUE;
!
! List<Vertex> vertices = Command.Offset.vertices(edges);
! int inx0 = 0;
! int inx = 0;
! int inx1 = 0;
!
! for (int i = 0; i < vertices.size(); i++) {
! Vertex current = system.translate(vertices.get(i));
! if (current.getY() <= y) {
! inx = i;
! y = current.getY();
}
}
!
! if (inx == 0) {
! inx0 = vertices.size() - 1;
! } else {
! inx0 = inx - 1;
}
! search:
! {
! for (int i = inx + 1; i < vertices.size(); i++) {
! Vertex current = system.translate(vertices.get(i));
! if (current.getY() > y) {
! inx1 = i;
! break search;
! }
! }
! for (int i = 0; i < inx0; i++) {
! Vertex current = system.translate(vertices.get(i));
! if (current.getY() > y) {
! inx1 = i;
! break search;
! }
! }
! }
!
! Vertex from = vertices.get(inx0);
! Vertex common = vertices.get(inx);
! Vertex to = vertices.get(inx1);
!
from = system.translate(from);
common = system.translate(common);
***************
*** 107,112 ****
Vertex cross = u.cross(v);
cross.normalize();
- double determinant = system.determinant();
// if the cross points into the screen (along the negative z),
--- 126,131 ----
Vertex cross = u.cross(v);
cross.normalize();
+ double determinant = system.determinant();
// if the cross points into the screen (along the negative z),
***************
*** 487,491 ****
}
} else {
! Edge previous = edges[i - 1];
if (previous.contains(current.getTo())) {
lst.add(e2);
--- 506,510 ----
}
} else {
! Edge previous = edges[i - 1];
if (previous.contains(current.getTo())) {
lst.add(e2);
Index: Command.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Command.java,v
retrieving revision 1.61
retrieving revision 1.62
diff -C2 -d -r1.61 -r1.62
*** Command.java 8 Jan 2008 10:49:19 -0000 1.61
--- Command.java 10 Jan 2008 09:54:05 -0000 1.62
***************
*** 1145,1149 ****
}
! private static List<Vertex> vertices(List<Edge> edges) {
List<Vertex> vertices = new ArrayList();
if (edges.size() > 1) {
--- 1145,1154 ----
}
! /**
! *
! * @param edges Edges
! * @return vertices
! */
! public static List<Vertex> vertices(List<Edge> edges) {
List<Vertex> vertices = new ArrayList();
if (edges.size() > 1) {
Index: SurfaceAnalysis.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/SurfaceAnalysis.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** SurfaceAnalysis.java 13 Dec 2007 12:00:32 -0000 1.14
--- SurfaceAnalysis.java 10 Jan 2008 09:54:05 -0000 1.15
***************
*** 704,707 ****
--- 704,714 ----
surfaces.add(surface);
}
+
+ /**
+ * {@inheritDoc}
+ */
+ public String toString() {
+ return "{node " + surfaces + "}";
+ }
}
}
|