- public Matrix quadric() {
- Matrix m = new Matrix(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
+ public Matrix errorQuadric() { return quadric; }
+ public Point getPoint() { return p; }
+ public float score() { return oldscore; }
+
+ private Matrix fundamentalQuadric = null;
+ public Matrix fundamentalQuadric() {
+ if (fundamentalQuadric == null) recomputeFundamentalQuadric();
+ return fundamentalQuadric;
+ }
+
+ private Vert(Point p) {
+ this.p = p;
+ if (pointset.get(p) != null) throw new Error();
+ pointset.add(this);
+ }
+
+ public void recomputeFundamentalQuadric() {
+ unscore();
+ Matrix m = Matrix.ZERO;