aboutsummaryrefslogtreecommitdiff
path: root/js/lib/geom/line.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/lib/geom/line.js')
-rwxr-xr-xjs/lib/geom/line.js80
1 files changed, 9 insertions, 71 deletions
diff --git a/js/lib/geom/line.js b/js/lib/geom/line.js
index e839e229..8ee39098 100755
--- a/js/lib/geom/line.js
+++ b/js/lib/geom/line.js
@@ -44,7 +44,7 @@ var Line = function GLLine( world, xOffset, yOffset, width, height, slope, strok
44 44
45 this._slope = slope; 45 this._slope = slope;
46 this._strokeWidth = strokeSize; 46 this._strokeWidth = strokeSize;
47 if (strokeColor) this._strokeColor = strokeColor.slice(); 47 this._strokeColor = strokeColor;
48 48
49 this._strokeStyle = strokeStyle; 49 this._strokeStyle = strokeStyle;
50 this._scaleX = (world.getViewportWidth())/(world.getViewportHeight()); 50 this._scaleX = (world.getViewportWidth())/(world.getViewportHeight());
@@ -137,77 +137,15 @@ var Line = function GLLine( world, xOffset, yOffset, width, height, slope, strok
137 this._strokeStyle = jObj.strokeStyle; 137 this._strokeStyle = jObj.strokeStyle;
138 this._strokeColor = jObj.strokeColor; 138 this._strokeColor = jObj.strokeColor;
139 var strokeMaterialName = jObj.strokeMat; 139 var strokeMaterialName = jObj.strokeMat;
140 this.importMaterialsJSON( jObj.materials );
141 };
142
143 this.export = function() {
144 var rtnStr = "type: " + this.geomType() + "\n";
145
146 rtnStr += "xoff: " + this._xOffset + "\n";
147 rtnStr += "yoff: " + this._yOffset + "\n";
148 rtnStr += "width: " + this._width + "\n";
149 rtnStr += "height: " + this._height + "\n";
150 rtnStr += "xAdj: " + this._xAdj + "\n";
151 rtnStr += "yAdj: " + this._yAdj + "\n";
152 rtnStr += "strokeWidth: " + this._strokeWidth + "\n";
153
154 if(this._strokeColor.gradientMode) {
155 rtnStr += "strokeGradientMode: " + this._strokeColor.gradientMode + "\n";
156 rtnStr += "strokeColor: " + this.gradientToString(this._strokeColor.color) + "\n";
157 } else {
158 rtnStr += "strokeColor: " + String(this._strokeColor) + "\n";
159 }
160
161 rtnStr += "strokeStyle: " + this._strokeStyle + "\n";
162 rtnStr += "slope: " + String(this._slope) + "\n";
163
164 rtnStr += "strokeMat: ";
165 if (this._strokeMaterial) {
166 rtnStr += this._strokeMaterial.getName();
167 } else {
168 rtnStr += MaterialsModel.getDefaultMaterialName();
169 }
170
171 rtnStr += "\n";
172 return rtnStr;
173 };
174
175 this.import = function( importStr ) {
176 this._xOffset = Number( this.getPropertyFromString( "xoff: ", importStr ) );
177 this._yOffset = Number( this.getPropertyFromString( "yoff: ", importStr ) );
178 this._width = Number( this.getPropertyFromString( "width: ", importStr ) );
179 this._height = Number( this.getPropertyFromString( "height: ", importStr ) );
180 this._xAdj = Number( this.getPropertyFromString( "xAdj: ", importStr ) );
181 this._yAdj = Number( this.getPropertyFromString( "yAdj: ", importStr ) );
182 this._strokeWidth = Number( this.getPropertyFromString( "strokeWidth: ", importStr ) );
183 var slope = this.getPropertyFromString( "slope: ", importStr );
184
185 if(isNaN(Number(slope))) {
186 this._slope = slope;
187 } else {
188 this._slope = Number(slope);
189 }
190
191 var strokeMaterialName = this.getPropertyFromString( "strokeMat: ", importStr );
192 this._strokeStyle = this.getPropertyFromString( "strokeStyle: ", importStr );
193 140
194 if(importStr.indexOf("strokeGradientMode: ") < 0) 141 var strokeMat = MaterialsModel.getMaterial( strokeMaterialName );
195 { 142 if (!strokeMat) {
196 this._strokeColor = eval( "[" + this.getPropertyFromString( "strokeColor: ", importStr ) + "]" ); 143 console.log( "object material not found in library: " + strokeMaterialName );
197 } else { 144 strokeMat = MaterialsModel.getMaterial( MaterialsModel.getDefaultMaterialName() );
198 this._strokeColor = {};
199 this._strokeColor.gradientMode = this.getPropertyFromString( "strokeGradientMode: ", importStr );
200 this._strokeColor.color = this.stringToGradient(this.getPropertyFromString( "strokeColor: ", importStr ));
201 } 145 }
146 this._strokeMaterial = strokeMat;
202 147
203 var strokeMat = MaterialsModel.getMaterial( strokeMaterialName ); 148 this.importMaterialsJSON( jObj.materials );
204 if (!strokeMat) {
205 console.log( "object material not found in library: " + strokeMaterialName );
206 strokeMat = MaterialsModel.getMaterial( MaterialsModel.getDefaultMaterialName() );
207 }
208
209 this._strokeMaterial = strokeMat;
210
211 }; 149 };
212 150
213 /////////////////////////////////////////////////////////////////////// 151 ///////////////////////////////////////////////////////////////////////
@@ -220,7 +158,7 @@ var Line = function GLLine( world, xOffset, yOffset, width, height, slope, strok
220 if (!world._useWebGL) return; 158 if (!world._useWebGL) return;
221 159
222 // make sure RDGE has the correct context 160 // make sure RDGE has the correct context
223 g_Engine.setContext( world.getCanvas().rdgeid ); 161 RDGE.globals.engine.setContext( world.getCanvas().rdgeid );
224 162
225 // create the gl buffer 163 // create the gl buffer
226 var gl = world.getGLContext(); 164 var gl = world.getGLContext();
@@ -381,7 +319,7 @@ var Line = function GLLine( world, xOffset, yOffset, width, height, slope, strok
381 indices.push( index ); index++; 319 indices.push( index ); index++;
382 } 320 }
383 321
384 var prim = ShapePrimitive.create(strokeVertices, strokeNormals, strokeTextures, indices, g_Engine.getContext().renderer.TRIANGLES, indices.length); 322 var prim = ShapePrimitive.create(strokeVertices, strokeNormals, strokeTextures, indices, RDGE.globals.engine.getContext().renderer.TRIANGLES, indices.length);
385 323
386 var strokeMaterial = this.makeStrokeMaterial(); 324 var strokeMaterial = this.makeStrokeMaterial();
387 325