Exemple #1
0
/*Realiza el movimiento de las manchas llamando funciones*/
void mueveOduplica(tTablero* miT,tMovimiento* mov)
{
    double distancia;
    distancia = sqrt(pow((double)(mov->filaFinal- mov->filaInicial),2.0)+pow((double)(mov->colFinal- mov->colInicial),2.0));
    if(distancia<2)/*Duplica*/
    {
        duplica(miT, mov);
    }
    if(distancia>= 2)/*Se mueve*/
    {
        mueve(miT,mov);
    }
    return;
}
Exemple #2
0
void MoleculaB::centraentorno (int num)	//Centra un atomo en su entorno de tres vecinos
{
    pto3D pto = susatomos.get(num)->vert;
    int numvert = nvec (num);
    pto3D posnueva = pto3D ();
    if (numvert == 3) {
	for (int i = 0; i < susatomos.size (); i++) {
	    pto3D ptov = susatomos.get(i)->vert;
	    if (ptov.dista (pto) < 1.6)
		posnueva = posnueva.mas (ptov.escala (0.333));
	}
	mueve (num, posnueva);
    }

}
Exemple #3
0
//PRAMA FINAL(REAL)
void menuprincipal ()
{
inicializa();
mueve();
}