private Restricciones[] GetRestricciones() { Restricciones[] restricciones = new Restricciones[nroRestricciones]; try { for (int i = 0; i < nroRestricciones; i++) { float[] variables = new float[nroVariables]; var b = float.Parse(dgvRestriciones.Rows[i].Cells[nroVariables + 1].Value.ToString()); string signo = Convert.ToString(dgvRestriciones.Rows[i].Cells[nroVariables].Value); for (int j = 0; j < nroVariables; j++) { if (dgvRestriciones.Rows[i].Cells[j].Value == null) { variables[j] = 0; continue; } variables[j] = float.Parse(dgvRestriciones.Rows[i].Cells[j].Value.ToString()); } restricciones[i] = new Restricciones(variables, b, signo); } return(restricciones); } catch (Exception e) { throw new Exception("Se han Ingresado datos erróneos al ingresar los valores de las Restricciones"); } }
private Restricciones[] GetRestriccionesEjemplo() { Restricciones[] restriccionesArray = new Restricciones[3]; Restricciones r1 = new Restricciones(); r1.sign = "<="; r1.b = 70; r1.variables = new float[2] { 1, 0 }; Restricciones r2 = new Restricciones(); r2.sign = "<="; r2.b = 50; r2.variables = new float[2] { 0, 1 }; Restricciones r3 = new Restricciones(); r3.sign = "<="; r3.b = 120; r3.variables = new float[2] { 1, 1 }; restriccionesArray[0] = r1; restriccionesArray[1] = r2; restriccionesArray[2] = r3; return(restriccionesArray); }
public void Mover(Vector2 input, Restricciones restricciones) { Vector3 newPosition = transform.position; if (input.x != 0) { float dirX = -Mathf.Sign(input.x); float rot = dirX * OrbitDegrees * Time.deltaTime; Quaternion rotation = Quaternion.Euler(0, rot, 0); newPosition = RotatePointAroundPivot(newPosition, target.transform.position, rotation); } if (input.y != 0) { float distanciaY = Mathf.Sign(input.y) < 0 ? 1f : 3f; Vector3 lerpTo = new Vector3(newPosition.x, distanciaY, newPosition.z); newPosition = Vector3.Lerp(newPosition, lerpTo, Time.deltaTime); } newPosition.x = Mathf.Clamp(newPosition.x, restricciones.minX, restricciones.maxX); newPosition.y = Mathf.Clamp(newPosition.y, restricciones.minY, restricciones.maxY); newPosition.z = Mathf.Clamp(newPosition.z, restricciones.minZ, restricciones.maxZ); transform.position = newPosition; }
public Personajes(int _id, string _nombre_personaje, byte _sexo, Celda _celda, int _restricciones) { id = _id; nombre = _nombre_personaje; sexo = _sexo; celda = _celda; restricciones = new Restricciones(_restricciones); }
public virtual void Dispose(bool disposing) { if (!disposed) { celda = null; disposed = true; restricciones = null; } }
private string GetValidacionRestriccion(double restriccionValor, Restricciones restriccion) { var signo = restriccion.sign; string resp = "NO"; switch (signo) { case "=": if (restriccionValor == restriccion.b) { resp = "SI"; } break; case "<": if (restriccionValor < restriccion.b) { resp = "SI"; } break; case "<=": if (restriccionValor <= restriccion.b) { resp = "SI"; } break; case ">": if (restriccionValor > restriccion.b) { resp = "SI"; } break; case ">=": if (restriccionValor >= restriccion.b) { resp = "SI"; } break; default: break; } return(resp); }
public void Mover(Vector2 input, Restricciones restricciones) { Vector3 newPosition = transform.position; if(input.x != 0){ float dirX = -Mathf.Sign(input.x); float rot = dirX * OrbitDegrees * Time.deltaTime; Quaternion rotation = Quaternion.Euler(0, rot, 0); newPosition = RotatePointAroundPivot(newPosition, target.transform.position, rotation); } if(input.y != 0){ float distanciaY = Mathf.Sign(input.y) < 0 ? 1f : 3f; Vector3 lerpTo = new Vector3(newPosition.x, distanciaY, newPosition.z); newPosition = Vector3.Lerp(newPosition, lerpTo, Time.deltaTime); } newPosition.x = Mathf.Clamp(newPosition.x, restricciones.minX, restricciones.maxX); newPosition.y = Mathf.Clamp(newPosition.y, restricciones.minY, restricciones.maxY); newPosition.z = Mathf.Clamp(newPosition.z, restricciones.minZ, restricciones.maxZ); transform.position = newPosition; }