Please enable / Bitte aktiviere JavaScript!
Veuillez activer / Por favor activa el Javascript![ ? ]
Este foro usa cookies
Este foro usa cookies para almacenar tu sesión de inicio si estás registrado, y de tu última visita si no lo estás. Las Cookies son un pequeños documento de texto almacenado en tu PC; las cookies de este foro sólo pueden ser usadas en el mismo y no suponen ninguna amenaza para tu seguridad. Estas Cookies también anotan los hilos que has leído y cuándo lo has hecho. Por favor, confirma si aceptas o declinas el uso de estas cookies.

Una cookie será almacenada en tu navegador a pesar de tu decisión para prevenir que este mensaje te vuelva a aparecer. Podrás cambiar la configuración de las cookies en cualquier momento siguiendo el enlace de la parte inferior.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Práctica 5
#1
Código PHP:
package p5;

public class 
Punto implements IForma {
    private 
double x,y;
    private 
int color;
    
    public 
Punto(){
        
this.setX(0);
        
this.setY(0);        
    }
    public 
Punto(double edouble i){
        
this.setX(e);
        
this.setY(i);        
    }
    public 
void setX(double e){
        
this.e;
    }
    public 
void setY(double i){
        
this.i;
    }
    public 
Punto clonar(){
        return new 
Punto(this.getX(),this.getY());
    }
    public 
String toString(){
        return 
"P[" getX()+", "getY()+"]";
    }

    @
Override
    
public double getX() {
        
// TODO Auto-generated method stub
        
return this.x;
    }

    @
Override
    
public double getY() {
        
// TODO Auto-generated method stub
        
return this.y;
    }

    @
Override
    
public double getOrientacion() {
        
// TODO Auto-generated method stub
        
return 0;
    }

    @
Override
    
public IForma girar(double gradosdouble xdouble y) {
        
double angulo Math.toRadians(grados);
 
       double x1 x+Math.cos(angulo)*(this.x-x)-Math.sin(angulo)*(this.y-y);
 
       double y1 y+Math.sin(angulo)*(this.x-x)+Math.cos(angulo)*(this.y-y);
 
       return new Punto (x1y1);
    }

    @
Override
    
public IForma girar(double grados) {
        
// TODO Auto-generated method stub
        
return this.clonar();
    }

    @
Override
    
public IForma trasladar(double deltaXdouble deltaY) {
        return new 
Punto (this.x+deltaX,this.y+deltaY);
    }

    @
Override
    
public double distancia(double xdouble y) {
        
// TODO Auto-generated method stub
        
return 0;
    }

    @
Override
    
public IForma escalar(double k) {
        
// TODO Auto-generated method stub
        
return null;
    }

    @
Override
    
public void setColor(int code) {
        
color code;        
    }

    @
Override
    
public int getColor() {
        return 
this.color;
    }
    



Código PHP:
package p5;

public class 
TrianguloEquilatero implements IPoligonoRegularIForma {
    private 
Punto p1,p2,p3;
    private 
double y;
    private 
int color;

    public 
TrianguloEquilatero() {
        
double y1 50*Math.tan(Math.toRadians(30));
        
p1 = new Punto (0,y1);
        
p2 = (Puntop1.girar(120,0,0);
        
p3 = (Puntop2.girar(120,0,0);
    }
    public 
TrianguloEquilatero(double lado){
        
double y1 lado*Math.tan(Math.toRadians(30));
 
       p1 = new Punto (0,y1);
 
       p2 = (Puntop1.girar(120,0,0);
 
       p3 = (Puntop2.girar(120,0,0);    
    }

    public 
Punto[] getVertices() {
 
       Punto vertices [] = {p1,p2,p3};
 
       return vertices;
 
   }

 
   public double getLado() {
 
       return p1.distancia(p2.getX(), p2.getY());
 
   }

 
   public void orientar(Vector v) {
 
       double orientacion v.getOrientacion()-getOrientacion();
 
       girar(orientacion,getCentro());
 
   }

 
   public void girar(double gradosPunto cdg) {
 
       p1 = (Puntop1.girar(gradoscdg.getX(), cdg.getY());
 
       p2 = (Puntop2.girar(gradoscdg.getX(), cdg.getY());
 
       p3 = (Puntop3.girar(gradoscdg.getX(), cdg.getY());
 
   }


 
   public void trasladar(Vector v) {
 
       p1 = (Puntop1.trasladar(v.getCompX(), v.getCompY());
 
       p2 = (Puntop2.trasladar(v.getCompX(), v.getCompY());
 
       p3 = (Puntop3.trasladar(v.getCompX(), v.getCompY());
 
   }

 
   public Punto getCentro() {
 
       double x p1.getX()+p2.getX()+p3.getX();
 
       double y p1.getY()+p2.getY()+p3.getY();
 
       return new Punto (x/3,y/3);
 
   }

 
   public Vector getUnitario() {
 
       Vector a = new Vector (getCentro(),p1);
 
       return new Vector (getCentro(),1,a.getOrientacion());
 
   }

 
   public double getArea() {  
        double h 
getLado()*Math.sin(Math.PI/3);
 
       return getLado()*h/2;
 
   }

 
   public double getPerimetro() {
 
       return 3*getLado();
 
   }

 
   public void reset() {
 
       Vector trasladar = new Vector (getCentro(),new Punto());
 
       trasladar(trasladar);
 
   }

 
   public double getX() {
 
       return getCentro().getX();
 
   }

 
   public double getY() {
 
       return getCentro().getY();
 
   }

 
   public double getOrientacion() {
 
       return getUnitario().getOrientacion();
 
   }

 
   public IForma girar(double gradosdouble xdouble y) {
 
       p1 = (Puntop1.girar(grados,x,y);
 
       p2 = (Puntop2.girar(grados,x,y);
 
       p3 = (Puntop3.girar(grados,x,y);
 
       return this;
 
   }

 
   public IForma girar(double grados) {
 
       double x getX();
 
       double y getY();
 
       p1 = (Puntop1.girar(grados,x,y);
 
       p2 = (Puntop2.girar(grados,x,y);
 
       p3 = (Puntop3.girar(grados,x,y);
 
       return this;
 
   }

 
   public IForma trasladar(double deltaXdouble deltaY) {
 
       p1 = (Puntop1.trasladar(deltaXdeltaY);
 
       p2 = (Puntop2.trasladar(deltaXdeltaY);
 
       p3 = (Puntop3.trasladar(deltaXdeltaY);
 
       return this;
 
   }

 
   public double distancia(double xdouble y) {
 
       return getCentro().distancia(xy);
 
   }

 
   public IForma escalar(double k) {
 
       Punto centro getCentro();
 
       Vector a = (Vector) new Vector (centro,p1).escalar(k);
 
       p1 a.getExtremo();
 
       p2 = (Puntop1.girar(120,centro.getX(),centro.getY());
 
       p3 = (Puntop2.girar(120,centro.getX(),centro.getY());
 
       return this;
 
   }

 
   public void setColor(int code) {
 
       color code;
 
   }

 
   public int getColor() {
 
       return color;
 
   }

 
   public String toString (){
 
       return "Triángulo --> C:P[" +getX()+ ", " +getY()+ "], L:" +getLado()+ 
 
               ", P[" p1.getX() +", " +p1.getY()+ "], P[" +p2.getX()+ ", " +p2.getY()+ 
 
               "], P[" +p3.getX()+ ", " +p3.getY()+ "], theta = "+getOrientacion(); 
 
   }


Código PHP:
package p5;

public class 
Vector implements IForma {
    private 
Punto o,e;
    private 
double modang;
    private final static 
Punto defecto = new Punto(0,0);
    private 
int color;

    public 
Vector() {
        
= new Punto(0,0);
        
= new Punto(1,0);
        
//mod=1;
        
ang=0;
    }
    public 
Vector(double fdouble i){
        
= new Punto(0,0);
        
= new Punto(f,i);
        
//mod=Math.sqrt((f*f)+(i*i));
        
ang=Math.toRadians(Math.atan(i/f));
    }
    public 
Vector(Punto a){
        
= new Punto(0,0);
        
a.clonar();
        
//mod=Math.sqrt((a.getX()*a.getX())+(a.getY()*a.getY()));
        
ang=Math.toRadians(Math.atan(a.getY()/a.getX()));
    }
    public 
Vector(Punto aPunto b){
        
a.clonar();
        
b.clonar();
        
//mod=Math.sqrt(Math.pow((b.getX()-a.getX()),2)+(Math.pow((b.getY()-a.getY()), 2)));
        
ang=Math.toRadians(Math.atan((b.getY()-a.getY())/(b.getX()-a.getX())));
    }
    public 
Vector(Punto adouble bdouble c){
        
mod b;
        
ang =Math.toRadians(c);
        
a.clonar();
        
= new Punto((a.getX()+Math.cos(ang)*mod),a.getY()+(Math.sin(ang)*mod));        
    }
    public 
Vector clonar(){
        return new 
Vector(this.o,this.e);
    }
    public 
String toString(){
        
String h = ("Vector O: P["+o.getX() +","+o.getY()+"] E["+e.getX()+","+e.getY()+"] |v|="+mod+", ang = "+ang);
        return 
h;
    }
    public 
double getCompX(){
        return 
e.getX()-o.getX();
    }
    public 
double getCompY(){
        return 
e.getY()-o.getY();
    }
    public 
Punto getPuntoAplicacion(){
        return 
o;
    }
    public 
Punto getExtremo(){
        return 
e;
    }
    public 
double modulo(){
        return 
Math.sqrt(getCompX()*getCompX()+getCompY()*getCompY());
    }
    public 
Vector getUnitario(){
        return new 
Vector(this.o,1,this.ang);        
    }
    public static 
Vector getUnitario(double gr){
        return new 
Vector(defecto,1,gr);    
    }

    @
Override
    
public double getX() {
        return 
o.getX();
    }

    @
Override
    
public double getY() {
        return 
o.getY();
    }

    @
Override
    
public double getOrientacion() {
        return 
Math.toDegrees(Math.atan2(getCompY(),getCompX()));
    }

    @
Override
    
public IForma girar(double gradosdouble xdouble y) {
        
Punto o = (Puntothis.o.girar(grados,x,y);
        
Punto e = (Puntothis.e.girar(grados,x,y);
        return new 
Vector (o,e);
    }

    @
Override
    
public IForma girar(double grados) {
        return new 
Vector(o,(Puntoe.girar(grados,o.getX(),o.getY()));
    }

    @
Override
    
public IForma trasladar(double deltaXdouble deltaY) {
        return new 
Vector(new Punto (o.getX()+deltaXo.getY()+deltaY),new Punto (e.getX()+deltaXe.getY()+deltaY));
    }

    @
Override
    
public double distancia(double xdouble y) {
        return 
o.distancia(xy);
    }

    @
Override
    
public IForma escalar(double k) {
        return new 
Vector (omodulo()*k,getOrientacion());
    }

    @
Override
    
public void setColor(int code) {
        
color=code;
    }

    @
Override
    
public int getColor() {
        return 
color;
    }


"Que yo sepa, el español medio no es más honrado que los políticos que lo gobiernan" Cool
Responder


Mensajes en este tema
Práctica 5 - por alfonso - 04-01-2016, 12:08
RE: Práctica 5 - por alfonso - 04-01-2016, 12:09
RE: Práctica 5 - por alfonso - 04-01-2016, 12:10

Salto de foro:


Usuarios navegando en este tema: 2 invitado(s)