Einzelnen Beitrag anzeigen

Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#8

AW: 2 Vektoren und 1 Punkt, wo näher drann?

  Alt 5. Apr 2012, 17:31
Ach noch etwas:
Delphi-Quellcode:
// das hier
  OrtsVektorPrevPoint : array [0..1] of Double;
sieht nicht schön aus.

Lieber soetwas:
Delphi-Quellcode:
type
  TVector2d = record
  case Boolean of
    False: (X: Double; Y: Double);
    True: (Values: Array[0..1] of Double);
  end;

(...)
var
  P: TVector2d;
Damit kannste nämlich direkt per P.X und P.Y oder P.Values[0] und P.Values[1] auf die X & Y Koordinaten zugreifen

Praktisch sind dann noch folgende Erweiterungen:
Delphi-Quellcode:
  TVector2d = record
    procedure Assign(const newX, newY: Double);
    function Length: Double;
  case Boolean of
    False: (X: Double; Y: Double);
    True: (Values: Array[0..1] of Double);
  end;
    

procedure TVector2d.Assign(const newX, newY: Double);
begin
  X := newX;
  Y := newY;
end;

function TVector2d.Length: Double;
begin
  Result := SQRT(X*X + Y*Y);
end;
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton ( 5. Apr 2012 um 17:34 Uhr)
  Mit Zitat antworten Zitat