Geometry2Exporter.js 884 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /**
  2. * @author mrdoob / http://mrdoob.com/
  3. */
  4. THREE.Geometry2Exporter = function () {};
  5. THREE.Geometry2Exporter.prototype = {
  6. constructor: THREE.Geometry2Exporter,
  7. parse: function ( geometry ) {
  8. var output = {
  9. metadata: {
  10. version: 4.0,
  11. type: 'Geometry2',
  12. generator: 'Geometry2Exporter'
  13. }
  14. };
  15. var attributes = [ 'vertices', 'normals', 'uvs' ];
  16. for ( var key in attributes ) {
  17. var attribute = attributes[ key ];
  18. var typedArray = geometry[ attribute ];
  19. var array = [];
  20. for ( var i = 0, l = typedArray.length; i < l; i ++ ) {
  21. array[ i ] = typedArray[ i ];
  22. }
  23. output[ attribute ] = array;
  24. }
  25. var boundingSphere = geometry.boundingSphere;
  26. if ( boundingSphere !== null ) {
  27. output.boundingSphere = {
  28. center: boundingSphere.center.toArray(),
  29. radius: boundingSphere.radius
  30. }
  31. }
  32. return output;
  33. }
  34. };