From bc1b0276a3947e10f914e83f9750add4fa8b6c00 Mon Sep 17 00:00:00 2001 From: hwc487 Date: Fri, 25 May 2012 09:25:37 -0700 Subject: New functions on shape primitives. --- js/lib/geom/shape-primitive.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'js/lib/geom') diff --git a/js/lib/geom/shape-primitive.js b/js/lib/geom/shape-primitive.js index 380cf334..5a44deb3 100644 --- a/js/lib/geom/shape-primitive.js +++ b/js/lib/geom/shape-primitive.js @@ -71,6 +71,33 @@ ShapePrimitive.getMeshBounds = function( verts, nVerts ) return bounds; }; +ShapePrimitive.getBounds = function( prim ) +{ + var verts = prim.bufferStreams[0]; + var nVerts = verts.length; + var xMin = verts[0], xMax = verts[0], + yMin = verts[1], yMax = verts[1], + zMin = verts[2], zMax = verts[2]; + + for (var index=3; index xMax) xMax = verts[index]; + + index++; + if (verts[index] < yMin) yMin = verts[index]; + else if (verts[index] > yMax) yMax = verts[index]; + + index++; + if (verts[index] < zMin) zMin = verts[index]; + else if (verts[index] > zMax) zMax = verts[index]; + + index++; + } + + return [xMin, yMin, zMin, xMax, yMax, zMax]; +}; + ShapePrimitive.refineMesh = function( verts, norms, uvs, indices, nVertices, paramRange, tolerance ) { var oldVrtCount = nVertices; -- cgit v1.2.3