rem: var n = trigs.length, k = n, i; do { i = k - n; 
add: var i = trigs.length; while (i--) { 
context:   area: function() {    if (this.isTriangle()) {      // Area is half the modulus of the cross product of two sides      var A = this.vertices.first, B = A.next, C = B.next;      A = A.data.elements; B = B.data.elements; C = C.data.elements;      return 0.5 * Vector.create([        (A[1] - B[1]) * (C[2] - B[2]) - (A[2] - B[2]) * (C[1] - B[1]),        (A[2] - B[2]) * (C[0] - B[0]) - (A[0] - B[0]) * (C[2] - B[2]),        (A[0] - B[0]) * (C[1] - B[1]) - (A[1] - B[1]) * (C[0] - B[0])      ]).modulus();    } else {      var trigs = this.trianglesForSurfaceIntegral(), area = 0;      var n = trigs.length, k = n, i;      do { i = k - n;        area += trigs[i].area() * trigs[i].plane.normal.dot(this.plane.normal);      } while (--n);      return area;    }  },
meta: 3877	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/3877/5bb35ddb3516d7e68f3747d86540ffaa68de3fe3/polygon.js/clean/src/polygon.js