diff drawObj/drawObj.html @ 5:85896f291a95

modify drawObj
author Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
date Mon, 16 Apr 2012 01:02:54 +0900
parents 86eb5933aeb9
children a6215e33597a
line wrap: on
line diff
--- a/drawObj/drawObj.html	Sun Apr 15 19:17:56 2012 +0900
+++ b/drawObj/drawObj.html	Mon Apr 16 01:02:54 2012 +0900
@@ -68,17 +68,25 @@
     
     gl.enable(gl.TEXTURE_2D);
     
-    parseXml(gl);//parse.js
+    modelMap = new XMLModelMap(gl);
+    modelMap.load("./xml/Cube.xml");
+    object = modelMap["Cube"];
 
     return gl;
     }
     
-
-    function parseXml(gl)
-    {
-    loadObjXml(gl, "./xml/cube.xml");
+    function XMLModelMap(gl) {
+    this.gl = gl;
     }
 
+    XMLModelMap.prototype.load = function(file) {
+    var data = parseObj(file);
+    if(!data) return;
+    for(var name in data) {
+    this[name] = makeXmlObj(gl,data[name]);
+    this[name].texture = loadImageTexture(this.gl, data[name].image);
+    }
+    }
 
     function reshape(ctx, ortho)
     {
@@ -142,7 +150,6 @@
 //    c.height = H;
 
     var ctx = init();
-    object = gl.obj["Cube"]; // default object.
 
     o = function() {opening(ctx, ortho);};
     setTimeout(o, 10);
@@ -153,9 +160,9 @@
     function loadFile(objectname)
     {
     var filename = "./xml/"+objectname+".xml";
-    loadObjXml(gl, filename);
-    console.log(filename);
-    object = gl.obj[objectname];
+    modelMap.load(filename);
+//    console.log(filename);
+    object = modelMap[objectname];
     }
 
 function objToString(obj,map,indent){