Changeset 985 for GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves
- Timestamp:
- 05/24/06 13:48:26 (19 years ago)
- Location:
- GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves/Arbol.cpp
r895 r985 79 79 void Arbol::ReadVertices(const Geometry::SubMesh *submesh) 80 80 { 81 int countv= submesh->mVertexBuffer->mVertexCount;81 int countv= int(submesh->mVertexBuffer->mVertexCount); 82 82 vertexdata = create_vertex_data_func(2*countv); 83 83 Hojas = new Hoja[countv*2]; … … 361 361 void Arbol::ReadLeafs(const Geometry::SubMesh *submesh) 362 362 { 363 int numtris = submesh->mIndexCount / 3;363 int numtris = int(submesh->mIndexCount / 3); 364 364 nHojas = numtris / 2; 365 365 for (int h=0; h<nHojas; h++) … … 477 477 { 478 478 FILE* fp_simpli; 479 char linea[256] , str[10];479 char linea[256]; 480 480 int v0, v1, v2, v3, tn, tv1,tv2, e=0; 481 481 … … 679 679 { 680 680 vertexdata->Begin(); 681 for ( unsignedint i=0; i<nHojas; i++)681 for (int i=0; i<nHojas; i++) 682 682 { 683 683 const float* lanormal = Hojas[i].Normal; -
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves/Hoja.cpp
r895 r985 13 13 hoja_cerca=-1; 14 14 Cuantas_hojas = 1; 15 dist = coplanar = criterio = hoja_cop = hoja_crit =-1; 15 dist = -1; 16 coplanar = -1; 17 criterio = -1; 18 hoja_cop = -1; 19 hoja_crit =-1; 16 20 existe = false; 17 21 padre=-1; -
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves/TMatrix.h
r830 r985 99 99 { 100 100 float ff=0.0f; 101 ff+= col[0][f]*tm[c][0];102 ff+= col[1][f]*tm[c][1];103 ff+= col[2][f]*tm[c][2];101 ff+=float(col[0][f]*tm[c][0]); 102 ff+=float(col[1][f]*tm[c][1]); 103 ff+=float(col[2][f]*tm[c][2]); 104 104 res[c][f]=ff; 105 105 } … … 113 113 { 114 114 float ff=0.0f; 115 ff+= col[0][c]*tm[f][0];116 ff+= col[1][c]*tm[f][1];117 ff+= col[2][c]*tm[f][2];115 ff+=float(col[0][c]*tm[f][0]); 116 ff+=float(col[1][c]*tm[f][1]); 117 ff+=float(col[2][c]*tm[f][2]); 118 118 res[c][f]=ff; 119 119 } … … 144 144 // WARNING: returns a dir to a TEMP variable 145 145 float *GetOpenGLConform(void){ 146 tempmat[0]= col[0][0];147 tempmat[1]= col[0][1];148 tempmat[2]= col[0][2];146 tempmat[0]=float(col[0][0]); 147 tempmat[1]=float(col[0][1]); 148 tempmat[2]=float(col[0][2]); 149 149 tempmat[3]=0.0f; 150 tempmat[4]= col[1][0];151 tempmat[5]= col[1][1];152 tempmat[6]= col[1][2];150 tempmat[4]=float(col[1][0]); 151 tempmat[5]=float(col[1][1]); 152 tempmat[6]=float(col[1][2]); 153 153 tempmat[7]=0.0f; 154 tempmat[8]= col[2][0];155 tempmat[9]= col[2][1];156 tempmat[10]= col[2][2];154 tempmat[8]=float(col[2][0]); 155 tempmat[9]=float(col[2][1]); 156 tempmat[10]=float(col[2][2]); 157 157 tempmat[11]=0.0f; 158 158 tempmat[12]=0.0f; … … 222 222 223 223 Rx.SetBaseX(1.0f, 0.0f, 0.0f); 224 Rx.SetBaseY(0.0f, axis.z/d, axis.y/d);225 Rx.SetBaseZ(0.0f, -axis.y/d, axis.z/d);224 Rx.SetBaseY(0.0f, float(axis.z/d), float(axis.y/d)); 225 Rx.SetBaseZ(0.0f, float(-axis.y/d), float(axis.z/d)); 226 226 227 Ry.SetBaseX(d, 0.0f, axis.x);227 Ry.SetBaseX(d, 0.0f, float(axis.x)); 228 228 Ry.SetBaseY(0.0f, 1.0f, 0.0f); 229 Ry.SetBaseZ( -axis.x, 0.0f, d);229 Ry.SetBaseZ(float(-axis.x), 0.0f, d); 230 230 231 231 Rz.LoadRotationZMatrix(angle); … … 251 251 252 252 void Traspose(void){ 253 tempmat[0]= col[0][0];254 tempmat[1]= col[0][1];255 tempmat[2]= col[0][2];256 257 tempmat[3]= col[1][0];258 tempmat[4]= col[1][1];259 tempmat[5]= col[1][2];260 261 tempmat[6]= col[2][0];262 tempmat[7]= col[2][1];263 tempmat[8]= col[2][2];253 tempmat[0]=float(col[0][0]); 254 tempmat[1]=float(col[0][1]); 255 tempmat[2]=float(col[0][2]); 256 257 tempmat[3]=float(col[1][0]); 258 tempmat[4]=float(col[1][1]); 259 tempmat[5]=float(col[1][2]); 260 261 tempmat[6]=float(col[2][0]); 262 tempmat[7]=float(col[2][1]); 263 tempmat[8]=float(col[2][2]); 264 264 265 265 col[0].x=tempmat[0]; col[1].x=tempmat[1]; col[2].x=tempmat[2]; … … 356 356 { 357 357 float ff=0.0f; 358 ff+= col[0][f]*tm[c][0];359 ff+= col[1][f]*tm[c][1];360 ff+= col[2][f]*tm[c][2];361 ff+= col[3][f]*tm[c][3];358 ff+=float(col[0][f]*tm[c][0]); 359 ff+=float(col[1][f]*tm[c][1]); 360 ff+=float(col[2][f]*tm[c][2]); 361 ff+=float(col[3][f]*tm[c][3]); 362 362 res[c][f]=ff; 363 363 } … … 371 371 { 372 372 float ff=0.0f; 373 ff+= col[0][c]*tm[f][0];374 ff+= col[1][c]*tm[f][1];375 ff+= col[2][c]*tm[f][2];376 ff+= col[3][c]*tm[f][3];373 ff+=float(col[0][c]*tm[f][0]); 374 ff+=float(col[1][c]*tm[f][1]); 375 ff+=float(col[2][c]*tm[f][2]); 376 ff+=float(col[3][c]*tm[f][3]); 377 377 res[c][f]=ff; 378 378 } … … 406 406 // WARNING: returns a dir to a TEMP variable 407 407 float *GetOpenGLConform(void){ 408 tempmat[0]= col[0][0];409 tempmat[1]= col[0][1];410 tempmat[2]= col[0][2];411 tempmat[3]= col[0][3];412 tempmat[4]= col[1][0];413 tempmat[5]= col[1][1];414 tempmat[6]= col[1][2];415 tempmat[7]= col[1][3];416 tempmat[8]= col[2][0];417 tempmat[9]= col[2][1];418 tempmat[10]= col[2][2];419 tempmat[11]= col[2][3];420 tempmat[12]= col[3][0];421 tempmat[13]= col[3][1];422 tempmat[14]= col[3][2];423 tempmat[15]= col[3][3];408 tempmat[0]=float(col[0][0]); 409 tempmat[1]=float(col[0][1]); 410 tempmat[2]=float(col[0][2]); 411 tempmat[3]=float(col[0][3]); 412 tempmat[4]=float(col[1][0]); 413 tempmat[5]=float(col[1][1]); 414 tempmat[6]=float(col[1][2]); 415 tempmat[7]=float(col[1][3]); 416 tempmat[8]=float(col[2][0]); 417 tempmat[9]=float(col[2][1]); 418 tempmat[10]=float(col[2][2]); 419 tempmat[11]=float(col[2][3]); 420 tempmat[12]=float(col[3][0]); 421 tempmat[13]=float(col[3][1]); 422 tempmat[14]=float(col[3][2]); 423 tempmat[15]=float(col[3][3]); 424 424 return tempmat; 425 425 } … … 514 514 515 515 Rx.SetBaseX(1.0f, 0.0f, 0.0f); 516 Rx.SetBaseY(0.0f, axis.z/d, axis.y/d);517 Rx.SetBaseZ(0.0f, -axis.y/d, axis.z/d);516 Rx.SetBaseY(0.0f, float(axis.z/d), float(axis.y/d)); 517 Rx.SetBaseZ(0.0f, float(-axis.y/d), float(axis.z/d)); 518 518 519 Ry.SetBaseX(d, 0.0f, axis.x);519 Ry.SetBaseX(d, 0.0f, float(axis.x)); 520 520 Ry.SetBaseY(0.0f, 1.0f, 0.0f); 521 Ry.SetBaseZ( -axis.x, 0.0f, d);521 Ry.SetBaseZ(float(-axis.x), 0.0f, d); 522 522 523 523 Rz.LoadRotationZMatrix(angle); … … 575 575 576 576 void Traspose(void){ 577 tempmat[0]= col[0][0];578 tempmat[1]= col[0][1];579 tempmat[2]= col[0][2];580 tempmat[3]= col[0][3];581 582 tempmat[4]= col[1][0];583 tempmat[5]= col[1][1];584 tempmat[6]= col[1][2];585 tempmat[7]= col[1][3];586 587 tempmat[8]= col[2][0];588 tempmat[9]= col[2][1];589 tempmat[10]= col[2][2];590 tempmat[11]= col[2][3];591 592 tempmat[12]= col[3][0];593 tempmat[13]= col[3][1];594 tempmat[14]= col[3][2];595 tempmat[15]= col[3][3];577 tempmat[0]=float(col[0][0]); 578 tempmat[1]=float(col[0][1]); 579 tempmat[2]=float(col[0][2]); 580 tempmat[3]=float(col[0][3]); 581 582 tempmat[4]=float(col[1][0]); 583 tempmat[5]=float(col[1][1]); 584 tempmat[6]=float(col[1][2]); 585 tempmat[7]=float(col[1][3]); 586 587 tempmat[8]=float(col[2][0]); 588 tempmat[9]=float(col[2][1]); 589 tempmat[10]=float(col[2][2]); 590 tempmat[11]=float(col[2][3]); 591 592 tempmat[12]=float(col[3][0]); 593 tempmat[13]=float(col[3][1]); 594 tempmat[14]=float(col[3][2]); 595 tempmat[15]=float(col[3][3]); 596 596 597 597 col[0].x=tempmat[0]; col[1].x=tempmat[1]; col[2].x=tempmat[2]; col[3].x=tempmat[3]; … … 603 603 // This function inverts a (only) TRANSFORM Matrix. This should not work on arbitrary matrices 604 604 void Invert(void){ 605 tempmat[0]= col[0][0];606 tempmat[1]= col[0][1];607 tempmat[2]= col[0][2];605 tempmat[0]=float(col[0][0]); 606 tempmat[1]=float(col[0][1]); 607 tempmat[2]=float(col[0][2]); 608 608 tempmat[3]=0.0f; 609 609 610 tempmat[4]= col[1][0];611 tempmat[5]= col[1][1];612 tempmat[6]= col[1][2];610 tempmat[4]=float(col[1][0]); 611 tempmat[5]=float(col[1][1]); 612 tempmat[6]=float(col[1][2]); 613 613 tempmat[7]=0.0f; 614 614 615 tempmat[8]= col[2][0];616 tempmat[9]= col[2][1];617 tempmat[10]= col[2][2];615 tempmat[8]=float(col[2][0]); 616 tempmat[9]=float(col[2][1]); 617 tempmat[10]=float(col[2][2]); 618 618 tempmat[11]=0.0f; 619 619 620 tempmat[12]= -(col[3][0]*col[0][0])-(col[3][1]*col[0][1])-(col[3][2]*col[0][2]);621 tempmat[13]= -(col[3][0]*col[1][0])-(col[3][1]*col[1][1])-(col[3][2]*col[1][2]);622 tempmat[14]= -(col[3][0]*col[2][0])-(col[3][1]*col[2][1])-(col[3][2]*col[2][2]);620 tempmat[12]=float(-(col[3][0]*col[0][0])-(col[3][1]*col[0][1])-(col[3][2]*col[0][2])); 621 tempmat[13]=float(-(col[3][0]*col[1][0])-(col[3][1]*col[1][1])-(col[3][2]*col[1][2])); 622 tempmat[14]=float(-(col[3][0]*col[2][0])-(col[3][1]*col[2][1])-(col[3][2]*col[2][2])); 623 623 tempmat[15]=1.0f; 624 624 -
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves/Vector.h
r830 r985 47 47 // Vector operator-(Vector &v){ return Vector(x-v.x,y-v.y,z-v.z); } 48 48 inline Vector operator-(const Vector &v) const { return Vector(x-v.x,y-v.y,z-v.z); } 49 inline double Module(void) const { return sqrtf( x*x + y*y + z*z); }49 inline double Module(void) const { return sqrtf(float(x*x) + float(y*y) + float(z*z)); } 50 50 inline bool operator==(const Vector &v) const { return (x==v.x && y==v.y && z==v.z); } 51 51 inline bool operator!=(const Vector &v) const { return (x!=v.x || y!=v.y || z!=v.z); } … … 57 57 inline bool operator<(const Vector &v) const { return (x<v.x && y<v.y && z<v.z && w<v.w); } 58 58 inline void Normalize(void){ 59 double module=sqrtf( x*x + y*y + z*z);59 double module=sqrtf(float(x*x) + float(y*y) + float(z*z)); 60 60 x=x/module; 61 61 y=y/module; -
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/leaves/foliage.cpp
r895 r985 263 263 bool Foliage::LeafinFrustum ( int i, float frustum[6][4]) 264 264 { 265 float a,b,c, tmp ,rad;265 float a,b,c, tmp; 266 266 int j,p; 267 267 Vector v; … … 277 277 278 278 for( p = 0; p < 5; p++ ) 279 { tmp = f rustum[p][0] * v[0] + frustum[p][1] * v[1] + frustum[p][2] * v[2] + frustum[p][3];279 { tmp = float(frustum[p][0] * v[0] + frustum[p][1] * v[1] + frustum[p][2] * v[2] + frustum[p][3]); 280 280 if ( tmp <= -2.0 ) return false; 281 281 } … … 756 756 //regla de 3 757 757 758 nhojas = abs(d*difhojas /difdist);758 nhojas = int(abs(d*difhojas /difdist)); 759 759 760 760 AjusteHojas ((MiArbol->nHojas)-nhojas);
Note: See TracChangeset
for help on using the changeset viewer.