SVGLoader.js 726 B

123456789101112131415161718192021222324252627282930313233
  1. /**
  2. * @author mrdoob / http://mrdoob.com/
  3. * @author zz85 / http://joshuakoo.com/
  4. */
  5. THREE.SVGLoader = function ( manager ) {
  6. this.manager = ( manager !== undefined ) ? manager : THREE.DefaultLoadingManager;
  7. };
  8. THREE.SVGLoader.prototype = {
  9. constructor: THREE.MaterialLoader,
  10. load: function ( url, onLoad, onProgress, onError ) {
  11. var scope = this;
  12. var parser = new DOMParser();
  13. var loader = new THREE.XHRLoader( scope.manager );
  14. loader.setCrossOrigin( this.crossOrigin );
  15. loader.load( url, function ( svgString ) {
  16. var doc = parser.parseFromString( svgString, 'image/svg+xml' ); // application/xml
  17. onLoad( doc.firstChild );
  18. }, onProgress, onError );
  19. }
  20. };