Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24919/src/net/sourceforge/bprocessor/model
Modified Files:
Project.java Mesh.java
Log Message:
Fixed some delete related bugs
Index: Mesh.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Mesh.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** Mesh.java 27 Jan 2006 11:39:44 -0000 1.5
--- Mesh.java 27 Jan 2006 13:17:52 -0000 1.6
***************
*** 93,102 ****
public void delete(Vertex vertex) {
if (vertex.getId() != null) {
Set edges = vertex.getEdges();
! if (edges.size() < 1) {
! remove(vertex);
}
}
- remove(vertex);
}
--- 93,104 ----
public void delete(Vertex vertex) {
if (vertex.getId() != null) {
+ remove(vertex);
Set edges = vertex.getEdges();
! Iterator iter = edges.iterator();
! while (iter.hasNext()) {
! Edge current = (Edge) iter.next();
! delete(current);
}
}
}
***************
*** 153,166 ****
public void delete(Edge edge) {
if (edge.getId() != null) {
Set surfaces = edge.getSurfaces();
Iterator it = surfaces.iterator();
while (it.hasNext()) {
Surface surface = (Surface)it.next();
! delete(surface);
}
- delete(edge.getTo());
- delete(edge.getFrom());
}
! remove(edge);
}
--- 155,173 ----
public void delete(Edge edge) {
if (edge.getId() != null) {
+ remove(edge);
Set surfaces = edge.getSurfaces();
Iterator it = surfaces.iterator();
while (it.hasNext()) {
Surface surface = (Surface)it.next();
! remove(surface);
! }
! if (edge.getTo().getEdges().size() == 0) {
! remove(edge.getTo());
! }
! if (edge.getFrom().getEdges().size() == 0) {
! remove(edge.getFrom());
}
}
!
}
***************
*** 197,200 ****
--- 204,211 ----
*/
public void remove(Surface surface) {
+ if (surface.getExterior() != null) {
+ Surface exterior = surface.getExterior();
+ exterior.removeHole(surface);
+ }
Space back = surface.getBackDomain();
if (back != null) {
***************
*** 226,233 ****
*/
public void delete(Surface surface) {
! if (surface.getExterior() != null) {
! Surface exterior = surface.getExterior();
! exterior.removeHole(surface);
! }
List edges = surface.getEdges();
Iterator it = edges.iterator();
--- 237,241 ----
*/
public void delete(Surface surface) {
! remove(surface);
List edges = surface.getEdges();
Iterator it = edges.iterator();
***************
*** 238,242 ****
}
}
! remove(surface);
}
--- 246,250 ----
}
}
!
}
Index: Project.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Project.java,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** Project.java 27 Jan 2006 11:30:56 -0000 1.28
--- Project.java 27 Jan 2006 13:17:52 -0000 1.29
***************
*** 178,181 ****
--- 178,182 ----
public void delete(Edge edge) {
mesh.delete(edge);
+ changed(this);
}
***************
*** 221,225 ****
spaces.remove(space.getId());
space.setId(null);
- changed(this);
}
--- 222,225 ----
***************
*** 230,233 ****
--- 230,234 ----
public void delete(Space space) {
remove(space);
+ changed(this);
}
***************
*** 264,267 ****
--- 265,269 ----
public void delete(Surface surface) {
mesh.delete(surface);
+ changed(this);
}
***************
*** 298,301 ****
--- 300,304 ----
public void delete(Vertex vertex) {
mesh.delete(vertex);
+ changed(this);
}
|