public synchronized void rand(float temp, Mesh.Vertex p) {
- p.reComputeError();
- //p.reComputeErrorAround();
+ //p.reComputeError();
+ p.reComputeErrorAround();
double tile_error = tile.error();
double goal_error = goal.error();
reComputeError();
if (nearest_in_other_mesh != null)
nearest_in_other_mesh.reComputeError();
+ /*
for(E e = this.e; e!=null; e=e.pair.next==this.e?null:e.pair.next)
e.p2.reComputeError();
+ */
}
public boolean visit(Object o) {
for(Vertex p = this; p != null; p = (p.bound_to==this)?null:p.bound_to)
good &= p.transform(m.times(p.p), ignoreProblems);
for(Vertex p = this; p != null; p = (p.bound_to==this)?null:p.bound_to)
- if (good) { p.reComputeError/*Around*/(); }
- else p.transform(p.oldp, true);
+ if (good || ignoreProblems) p.reComputeErrorAround();
+ else p.transform(p.oldp, true);
return good;
}