code: function(normals, offset, stride) {
  				if(arguments.length === 0){
  					normals = undefined;
  					offset = 0;
  					stride = TriangleMesh.DEFAULT_STRIDE;
  				} else if(arguments.length == 1 && typeof(arguments[0]) == 'object'){ //options object
  					var opts = arguments[0];
  					normals = opts.normals;
  					offset = opts.offset;
  					stride = opts.stride;
  				}
  				stride = mathUtils.max(stride, 3);
  				if (normals === undefined) {
  					normals = [];
  				}
  				var i = offset;
  				var l = this.faces.length;
  				for (var j=0;j<l;j++) {
  					var f = this.faces[j];
  					normals[i] = f.normal.x;
  					normals[i + 1] = f.normal.y;
  					normals[i + 2] = f.normal.z;
  					i += stride;
  					normals[i] = f.normal.x;
  					normals[i + 1] = f.normal.y;
  					normals[i + 2] = f.normal.z;
  					i += stride;
  					normals[i] = f.normal.x;
  					normals[i + 1] = f.normal.y;
  					normals[i + 2] = f.normal.z;
  					i += stride;
  				}
  				return normals;
  			}
docs: Creates an array of unravelled normal coordinates. For each vertex the
  normal vector of its parent face is used. This method can be used to
  translate the internal mesh data structure into a format suitable for
  OpenGL Vertex Buffer Objects (by choosing stride=4). For more detail,
  please see {@link #getMeshAsVertexArray(float[], int, int)}
  
  @see #getMeshAsVertexArray(float[], int, int)
  
  @param normals existing float array or null to automatically create one
  @param offset start index in array to place normals
  @param stride stride/alignment setting for individual coordinates (min value = 3)
  @return array of xyz normal coords