[Bprocessor-commit] model/src/net/sourceforge/bprocessor/model Edge.java,1.29,1.30 Vertex.java,1.21,
Status: Pre-Alpha
Brought to you by:
henryml
From: Michael L. <he...@us...> - 2006-02-01 11:45:37
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1282/src/net/sourceforge/bprocessor/model Modified Files: Edge.java Vertex.java Surface.java Geometry.java Geometric.java Mesh.java Log Message: Surface, Edge and Vertex now belongs to a Mesh Index: Surface.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Surface.java,v retrieving revision 1.67 retrieving revision 1.68 diff -C2 -d -r1.67 -r1.68 *** Surface.java 1 Feb 2006 09:08:39 -0000 1.67 --- Surface.java 1 Feb 2006 11:45:25 -0000 1.68 *************** *** 365,369 **** newFrom = from.copy(); map.put(from.getId(), newFrom); ! Project.getInstance().add(newFrom); } newEdge.setFrom(newFrom); --- 365,369 ---- newFrom = from.copy(); map.put(from.getId(), newFrom); ! getMesh().add(newFrom); } newEdge.setFrom(newFrom); *************** *** 373,384 **** newTo = to.copy(); map.put(to.getId(), newTo); ! Project.getInstance().add(newTo); } newEdge.setTo(newTo); ! Project.getInstance().add(newEdge); edges.add(newEdge); } surface.setEdges(edges); ! Project.getInstance().add(surface); return surface; } --- 373,384 ---- newTo = to.copy(); map.put(to.getId(), newTo); ! getMesh().add(newTo); } newEdge.setTo(newTo); ! getMesh().add(newEdge); edges.add(newEdge); } surface.setEdges(edges); ! getMesh().add(surface); return surface; } *************** *** 425,439 **** for (int i = 0; i < n; i++) { vmap[i] = v[i].add(normal); ! Project.getInstance().add(vmap[i]); } for (int i = 0; i < n; i++) { topmap[i] = new Edge(vmap[i], vmap[(i + 1) % n]); ! Project.getInstance().add(topmap[i]); } for (int i = 0; i < n; i++) { sidemap[i] = new Edge(v[i], vmap[i]); ! Project.getInstance().add(sidemap[i]); } --- 425,439 ---- for (int i = 0; i < n; i++) { vmap[i] = v[i].add(normal); ! getMesh().add(vmap[i]); } for (int i = 0; i < n; i++) { topmap[i] = new Edge(vmap[i], vmap[(i + 1) % n]); ! getMesh().add(topmap[i]); } for (int i = 0; i < n; i++) { sidemap[i] = new Edge(v[i], vmap[i]); ! getMesh().add(sidemap[i]); } *************** *** 449,453 **** newEdges.add(b); facemap[i] = new Surface(newEdges); ! Project.getInstance().add(facemap[i]); sides.add(facemap[i]); } --- 449,453 ---- newEdges.add(b); facemap[i] = new Surface(newEdges); ! getMesh().add(facemap[i]); sides.add(facemap[i]); } *************** *** 459,463 **** } top = new Surface(newEdges); ! Project.getInstance().add(top); } --- 459,463 ---- } top = new Surface(newEdges); ! getMesh().add(top); } *************** *** 582,587 **** } if (this.isInner()) { ! Collection surfaces = Project.getInstance().getSurfaces(); Iterator surfIt = surfaces.iterator(); while (surfIt.hasNext()) { --- 582,588 ---- } + // FIXME: Reimplement this without looking at all surfaces in the mesh if (this.isInner()) { ! Collection surfaces = getMesh().getSurfaces(); Iterator surfIt = surfaces.iterator(); while (surfIt.hasNext()) { Index: Edge.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Edge.java,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** Edge.java 1 Feb 2006 09:08:39 -0000 1.29 --- Edge.java 1 Feb 2006 11:45:25 -0000 1.30 *************** *** 267,277 **** */ public void split(Vertex vertex) { if (!constructor) { Vertex from = getFrom(); Vertex to = getTo(); Edge e1 = new Edge(from, vertex); ! Project.getInstance().add(e1); Edge e2 = new Edge(vertex, to); ! Project.getInstance().add(e2); --- 267,278 ---- */ public void split(Vertex vertex) { + // FIXME Why not split a constructor? if (!constructor) { Vertex from = getFrom(); Vertex to = getTo(); Edge e1 = new Edge(from, vertex); ! getMesh().add(e1); Edge e2 = new Edge(vertex, to); ! getMesh().add(e2); *************** *** 282,286 **** current.replace(this, e1, e2); } ! Project.getInstance().remove(this); } } --- 283,287 ---- current.replace(this, e1, e2); } ! getMesh().remove(this); } } *************** *** 300,304 **** public Set getSurfaces() { Set result = new HashSet(); ! Collection surfaces = Project.getInstance().getSurfaces(); Iterator iter = surfaces.iterator(); while (iter.hasNext()) { --- 301,305 ---- public Set getSurfaces() { Set result = new HashSet(); ! Collection surfaces = getMesh().getSurfaces(); Iterator iter = surfaces.iterator(); while (iter.hasNext()) { Index: Geometry.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Geometry.java,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Geometry.java 30 Jan 2006 14:11:51 -0000 1.11 --- Geometry.java 1 Feb 2006 11:45:25 -0000 1.12 *************** *** 256,265 **** int count = 0; List surfaces = new LinkedList(); ! { Surface clockwise = clockwiseSurface(vertex, last, edges); if (clockwise != null) { if (clockwise.angle(vertex.system()) < 0) { ! Project.getInstance().add(clockwise); surfaces.add(clockwise); count++; --- 256,265 ---- int count = 0; List surfaces = new LinkedList(); ! Mesh mesh = ((Edge) edges.iterator().next()).getMesh(); { Surface clockwise = clockwiseSurface(vertex, last, edges); if (clockwise != null) { if (clockwise.angle(vertex.system()) < 0) { ! mesh.add(clockwise); surfaces.add(clockwise); count++; *************** *** 271,275 **** if (counterclockwise != null) { if (counterclockwise.angle(vertex.system()) > 0) { ! Project.getInstance().add(counterclockwise); surfaces.add(counterclockwise); count++; --- 271,275 ---- if (counterclockwise != null) { if (counterclockwise.angle(vertex.system()) > 0) { ! mesh.add(counterclockwise); surfaces.add(counterclockwise); count++; *************** *** 293,297 **** current.setFrontDomain(exterior.getFrontDomain()); } ! Project.getInstance().remove(exterior); } } --- 293,297 ---- current.setFrontDomain(exterior.getFrontDomain()); } ! mesh.remove(exterior); } } Index: Geometric.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Geometric.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Geometric.java 1 Feb 2006 09:08:39 -0000 1.1 --- Geometric.java 1 Feb 2006 11:45:25 -0000 1.2 *************** *** 13,16 **** */ public abstract class Geometric extends Entity { ! } --- 13,33 ---- */ public abstract class Geometric extends Entity { ! /** The mesh containing this geometric entity */ ! private Mesh mesh; ! ! /** ! * Get the mesh ! * @return The mesh ! */ ! public Mesh getMesh() { ! return mesh; ! } ! ! /** ! * Set the mesh ! * @param mesh The mesh ! */ ! public void setMesh(Mesh mesh) { ! this.mesh = mesh; ! } } Index: Vertex.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Vertex.java,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** Vertex.java 1 Feb 2006 09:08:39 -0000 1.21 --- Vertex.java 1 Feb 2006 11:45:25 -0000 1.22 *************** *** 126,130 **** public Set getEdges() { Set result = new HashSet(); ! Collection edges = Project.getInstance().getEdges(); Iterator iter = edges.iterator(); while (iter.hasNext()) { --- 126,130 ---- public Set getEdges() { Set result = new HashSet(); ! Collection edges = getMesh().getEdges(); Iterator iter = edges.iterator(); while (iter.hasNext()) { Index: Mesh.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Mesh.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Mesh.java 27 Jan 2006 13:17:52 -0000 1.6 --- Mesh.java 1 Feb 2006 11:45:25 -0000 1.7 *************** *** 66,69 **** --- 66,70 ---- vertex.setId(id); vertices.put(id, vertex); + vertex.setMesh(this); } *************** *** 75,78 **** --- 76,80 ---- vertices.remove(vertex.getId()); vertex.setId(null); + vertex.setMesh(null); } *************** *** 93,98 **** public void delete(Vertex vertex) { if (vertex.getId() != null) { - remove(vertex); Set edges = vertex.getEdges(); Iterator iter = edges.iterator(); while (iter.hasNext()) { --- 95,100 ---- public void delete(Vertex vertex) { if (vertex.getId() != null) { Set edges = vertex.getEdges(); + remove(vertex); Iterator iter = edges.iterator(); while (iter.hasNext()) { *************** *** 128,131 **** --- 130,134 ---- edge.setId(id); edges.put(id, edge); + edge.setMesh(this); } *************** *** 137,140 **** --- 140,144 ---- edges.remove(edge.getId()); edge.setId(null); + edge.setMesh(null); } *************** *** 155,160 **** public void delete(Edge edge) { if (edge.getId() != null) { - remove(edge); Set surfaces = edge.getSurfaces(); Iterator it = surfaces.iterator(); while (it.hasNext()) { --- 159,167 ---- public void delete(Edge edge) { if (edge.getId() != null) { Set surfaces = edge.getSurfaces(); + Vertex to = edge.getTo(); + Vertex from = edge.getFrom(); + + remove(edge); Iterator it = surfaces.iterator(); while (it.hasNext()) { *************** *** 162,173 **** remove(surface); } ! if (edge.getTo().getEdges().size() == 0) { ! remove(edge.getTo()); } ! if (edge.getFrom().getEdges().size() == 0) { ! remove(edge.getFrom()); } } - } --- 169,183 ---- remove(surface); } ! if (to.getMesh() != null) { ! if (to.getEdges().size() == 0) { ! remove(to); ! } } ! if (from.getMesh() != null) { ! if (from.getEdges().size() == 0) { ! remove(from); ! } } } } *************** *** 197,200 **** --- 207,211 ---- surface.setId(id); surfaces.put(id, surface); + surface.setMesh(this); } *************** *** 220,223 **** --- 231,235 ---- surfaces.remove(surface.getId()); surface.setId(null); + surface.setMesh(null); } |