tengo un problemilla que no sé resolver a ver si vosotros se os occure algo
Esto es lo que tengo:
Un vector de massas (es francés) dnd massa es una classe:
Código:
std::vector<Masse>
Y dentro de esa clase tengo los atributos siguientes:
Código:
private:
Vecteur3D mPosition;
Vecteur3D mVitesse;
Vecteur3D mForceS;
std::vector<Ressort*> mEnsRes;
double mMasse;
double mCoefFrott;
CoordIJ mCoordIJ;
///-----------------------------Dans le cas ou coeff est pareil partout, ou pour definir val par défaut.
static double msCoeffCste;
position, velocidad y demas cosas sin importancia... Lo que importa que que la clase masa tiene un atributo :Vecteur3D mPosition;
Vecteur3D mVitesse;
Vecteur3D mForceS;
std::vector<Ressort*> mEnsRes;
double mMasse;
double mCoefFrott;
CoordIJ mCoordIJ;
///-----------------------------Dans le cas ou coeff est pareil partout, ou pour definir val par défaut.
static double msCoeffCste;
Código:
typedef std::array <size_t, 2> CoordIJ;
CoordIJ mCoordIJ
(el typedef esta afuera pero es para que veais lo que es )CoordIJ mCoordIJ
Este atributo en especial cuado esta inicializado posee las coordenadas de su posicion en otro vector pero de dos dimensiones tal que asi:
Código:
typedef std::vector<std::vector<Masse> > TabMasses2D
En definitiva lo que me gustaria seria poder pasar de mi 1era dimension que posee las coordenadas de la segunda a la segunda XD.
Pero notese que el vector de una dimesion las masas que estan dentro no tienen por que estar en orden y puede tambien pasar lo siguiente:
massa m1;
massa m2;
m1.coordenadasEn2D( 2, 5);
m1.coordenadasEn2D( 7,0);
es decir que el resto de las "cuadriculas" (asi me lo imagino) estarian vacias.
Un pseudo codigo me bastaria de sobra o nada mas que la parte algoritmica. Estoy desesperado espero que alguien pueda ayudarme...
Gracias de antemano y saludos!
pd: aqui teneis el prototipo de mi funcion:
Código:
TabMasses2D Dim1toDim2(std::vector<Masse> const&);