Browse Source

Add SVGLoader. See #4429

Joshua Koo 11 years ago
parent
commit
6f01c2dc4b
1 changed files with 31 additions and 0 deletions
  1. 31 0
      src/loaders/SVGLoader.js

+ 31 - 0
src/loaders/SVGLoader.js

@@ -0,0 +1,31 @@
+/**
+ * @author mrdoob / http://mrdoob.com/
+ * @author zz85 / http://joshuakoo.com/
+ */
+
+THREE.SVGLoader = function ( manager ) {
+
+	this.manager = ( manager !== undefined ) ? manager : THREE.DefaultLoadingManager;
+
+};
+
+THREE.SVGLoader.prototype = {
+
+	constructor: THREE.MaterialLoader,
+
+	load: function ( url, onLoad, onProgress, onError ) {
+
+		var parser = new DOMParser();
+
+		var loader = new THREE.XHRLoader();
+		loader.setCrossOrigin( this.crossOrigin );
+		loader.load( url, function ( svgString ) {
+
+			var doc = parser.parseFromString( svgString, 'image/svg+xml' );  // application/xml
+
+			onLoad( doc.firstChild );
+
+		} );
+
+	}
+};