anchor.diff:        function Length: real;
         function Normalize: Tvec3;
   
  +      class property Down: Tvec3 read TDown;
  +      class property Up: Tvec3 read TUp;
  +      class property Left: Tvec3 read TLeft;
  +      class property Right: Tvec3 read TRight;
  +      class property Forward: Tvec3 read TForward;
  +      class property Backward: Tvec3 read TBackward;
  +
         property X: real read hx write hx;
         property Y: real read hy write hy;
         property Z: real read hz write hz;
   
     end;
  +
  +   Tvec4 = class(TObject)
  +    private
  +      hx,hy,hz, hw: real;
  +
  +    public
  +      constructor Create(tx: real = 0; ty: real = 0; tz: real = 0; tw: real = 0);
  +      constructor Create(t1: Tvec3; t2: real = 0);
  +
  +      function Length: real;
  +      function Normalize: Tvec4;
  +
  +      property X: real read hx write hx;
  +      property Y: real read hy write hy;
  +      property Z: real read hz write hz;
  +      property W: real read hw write hw;
  +
  +  end;
  +
  +
   
   function Dot(para1, para2: Tvec2): real;
   function Angle(para1, para2: Tvec2): real;
  
positive.code: 
    end;
  
    Tvec3 = class
      private
        var hx,hy,hz: real;
  
      public
        constructor Create(tx: real = 0; ty: real = 0; tz: real = 0);
  
negative.code: 
    Tvec2 = class(TObject)
      private
        hx,hy: real;
  
        class function TDown: Tvec2; static;
        class function TUp: Tvec2; static;
        class function TLeft: Tvec2;  static;
        class function TRight: Tvec2;  static;
  
      public
        constructor Create(tx: real = 0; ty: real = 0);
  
  
        class property Down: Tvec2 read TDown;
        class property Up: Tvec2 read TUp;
        class property Left: Tvec2 read TLeft;
        class property Right: Tvec2 read TRight;
  
  
        function Length: real;
        function Normalize: Tvec2;
  
  