Ignore:
Timestamp:
03/31/06 17:29:32 (18 years ago)
Author:
igarcia
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Illum/IBRBillboardCloudTrees/OGRE/src/IMGCluster2d.cpp

    r699 r721  
    11 
    2 #include "IMGCluster2d.h" 
    3 #include "IMGCluster.h" 
     2#include <IMGCluster2d.h> 
     3#include <IMGCluster.h> 
    44 
    5 namespace IMG { 
     5namespace IMG  
     6{ 
    67 
    7 //* Create a 2d polygon from a polygon 3d. The projecte polygon is belong the dominant normal. 
     8Cluster2d::Cluster2d()  
     9{ 
     10    Vector3s = NULL; 
     11    cluster =NULL; 
     12    normal = NULL; 
     13} 
     14 
     15Ogre::Vector2 * Cluster2d::GetVector3s() 
     16{  
     17        return Vector3s;  
     18} 
     19 
     20std::vector<Ogre::Vector2> * Cluster2d::GetVector3sVector()  
     21{  
     22        return &Vector3s2_vector;  
     23}  
     24 
     25Ogre::Vector3 * Cluster2d::GetNormal()  
     26{  
     27        return normal;  
     28} 
     29 
     30//* Create a 2d polygon from a polygon 3d. The projecte polygon is belong the dominant ERROR_MSG. 
    831//                       
    932//        
    10 int Cluster2d::Create2d(Cluster * cluster, int type, int type_vertexs) { 
    11         if (!cluster) return false; 
     33int Cluster2d::Create2d(Cluster * cluster, int type, int type_vertexs)  
     34{ 
     35        if (!cluster) 
     36        { 
     37                return false; 
     38        } 
    1239         
    1340        int axis = cluster->AxisProjected(); 
    14         Ogre::Vector3 *vertexs3d; 
    15         std::vector<Ogre::Vector3> vertexs3d_; 
    16         int num_vertexs = 4; 
    17          
    18         //printf("\nDins Create cluster2d axisproj: %d ", axis); 
    19          
    20          
    21          
    22         switch(type) 
    23         { 
    24                 //case 0:       vertexs3d = poly->GetVector3s(); break; 
    25                 case 0: vertexs3d_ = *cluster->GetVector3sVector(); break;               
    26                 //case 1: vertexs3d = poly->GetVector3sTex(); break; 
    27         } 
    28         /* 
    29         if (type_vertexs) num_vertexs = 3; 
    30         else num_vertexs = 4; 
    31         */ 
     41 
    3242        this->cluster = cluster; 
    33          
    34         //Vector2 * vertexs2d = new Vector2[4]; 
    35         // GametoolsError -- Isma 17/08/2005 
    36         //vertexs = new Vector2[4]; 
    37         //vertexs = new Vector2[vertexs3d_.size()]; 
    38          
    39         //normal = new Vector2; 
    40         normal = new Ogre::Vector3; 
    41         Ogre::Vector3 *normal3d = cluster->GetPlane()->GetNormal(); 
    42         Ogre::Box bound; 
    43          
    44          
    45         switch(axis) 
    46         { 
    47                 case (0): 
    48                         for (int i = 0; i < vertexs3d_.size(); i++) 
    49                         {        
    50                                 // GametoolsError -- Isma 17/08/2005 
    51                                 //vertexs[i].x = vertexs3d_[i].z; 
    52                                 //vertexs[i].y = vertexs3d_[i].y; 
    53                                 //vertexs2_vector.push_back(vertexs[i]); 
    5443 
    55                                 //printf("Assignat 0: (%.4f, %.4f)- (%.4f, %.4f)\n", vertexs3d_[i].z, vertexs3d_[i].y, vertexs[i].x, vertexs[i].y); 
    56                                 //bound.AddBoundingVector3 (vertexs[i].x, vertexs[i].y, 0);              
    57          
    58                         } 
    59                         break;                                   
    60                  
    61                   case (1): 
    62  
    63                          
    64                         for (int i = 0; i < vertexs3d_.size(); i++) 
    65                         { 
    66                                 // GametoolsError -- Isma 17/08/2005 
    67                                 //vertexs[i].x = vertexs3d_[i].x; 
    68                                 //vertexs[i].y = vertexs3d_[i].z; 
    69                                 //vertexs2_vector.push_back(vertexs[i]); 
    70                                 //printf("Assignat 1: (%.4f, %.4f)- (%.4f, %.4f)\n", vertexs3d_[i].x, vertexs3d_[i].z, vertexs[i].x, vertexs[i].y); 
    71                                 //bound.AddBoundingVector3 (vertexs[i].x, vertexs[i].y, 0);      
    72                         } 
    73                          
    74                         break; 
    75  
    76                 case(2): 
    77                         for (int i = 0; i < vertexs3d_.size(); i++) 
    78                         { 
    79                                 // GametoolsError -- Isma 17/08/2005 
    80                                 //vertexs[i].x = vertexs3d_[i].x; 
    81                                 //vertexs[i].y = vertexs3d_[i].y; 
    82                                 //vertexs2_vector.push_back(vertexs[i]); 
    83                                 //printf("Assignat 2: (%.4f, %.4f)- (%.4f, %.4f)\n", vertexs3d_[i].x, vertexs3d_[i].y, vertexs[i].x, vertexs[i].y); 
    84                                 //bound.AddBoundingVector3 (vertexs[i].x, vertexs[i].y, 0);      
    85                         } 
    86                  
    87                 break; 
    88         } 
    89  
    90          
    91         id = cluster->GetId(); 
    92         //printf("\n\nen 2d: "); 
    93         //Print(); 
    94         //printf("\n-----------------"); 
    9544        return axis; 
    9645} 
    9746 
    98 void Cluster2d::Print() { 
     47void Cluster2d::Print()  
     48{ 
    9949        printf("\nPrintant cluster2d: %d", id); 
    100         // GametoolsError -- Isma 17/08/2005 
    101         //if (!vertexs) return; 
    102          
    103         //printf("\nVector3 1 (%.4f, %.4f)  ", vertexs[0].x, vertexs[0].y); 
    104         //printf("\nVector3 2 (%.4f, %.4f)  ", vertexs[1].x, vertexs[1].y); 
    105         //printf("\nVector3 3 (%.4f, %.4f)  ", vertexs[2].x, vertexs[2].y);      
    106         //printf("\nVector3 3 (%.4f, %.4f)  ", vertexs[3].x, vertexs[3].y);      
    10750} 
    10851 
    109 Cluster2d::~Cluster2d() { 
     52Cluster2d::~Cluster2d()  
     53{ 
    11054} 
    11155 
    112  
    11356} 
Note: See TracChangeset for help on using the changeset viewer.