martes, 6 de agosto de 2013

Vector





Definición.- Segmento de línea que tienen magnitud y dirección.


















Código Delphi:
Declaración de funciones y atributos de la clase vector:

  TVector = Class
  X0, Y0:Real;
  Color0: TColor;
  Constructor Create(nX0,nY0:Real; nColor0:Tcolor);
  Destructor Destroy();
  Procedure Pantalla(X,Y: Real; var Sx,Sy: Integer);
  Procedure MundoReal(Sx,Sy: Integer; Var X,Y: Real);
  Procedure Encender; virtual;
  Procedure Apagar; virtual;

Implementación de las funciones:

Constructor TVector.Create(nX0: Real; nY0: Real; nColor0: TColor);
begin
    X0:=nX0;
    Y0:=nY0;
    Color0:= nColor0;
end;


Destructor TVector.Destroy();
begin
end;


Procedure TVector.Pantalla(X,Y: Real; Var SX,SY: Integer);
begin
    SX:= Trunc(((SX1-SX2)/(X1-X2))*(X-X2))+ SX2;
    SY:= Trunc(((SY1-SY2)/(Y2-Y1))*(Y-Y2))+ SY1;
end;

Procedure TVector.MundoReal(SX,SY: Integer; Var X,Y: Real);
begin
     X:= (((SX-SX2)*(X1-X2))/(SX1-SX2))+ X2;
     Y:= (((SY-SY1)*(Y2-Y1))/(SY1-SY2))+ Y2;
end;

Procedure TVector.Encender;
var
  i,j: Integer;
begin
  Pantalla(X0,Y0,i,j);
  Form1.PaintBox1.Canvas.Pixels[i,j]:= Color0;
end;

Procedure TVector.Apagar;
begin
  Color0:= Form1.Panel1.Color;
  Encender;
end;

No hay comentarios:

Publicar un comentario