anchor.diff:      property Items[aIndex: Integer]: TKMPoint read GetPoint write SetPoint; default;
       property Last: TKMPoint read GetLast;
       function IsEmpty: Boolean;
  +    property Len: Single read GetLen;
   
       procedure Clear; virtual;
       procedure Copy(aSrc: TKMPointList);
  
positive.code:     function GetPoint(aIndex: Integer): TKMPoint; inline;
      procedure SetPoint(aIndex: Integer; const aValue: TKMPoint); inline; //1..Count
      function GetLast: TKMPoint;
    public
      constructor Create;
  
  
negative.code: procedure TKMPointList.SetPoint(aIndex: Integer; const aValue: TKMPoint);
  begin
    fItems[aIndex] := aValue;
  end;
  
  
  function TKMPointList.GetLen: Single;
  var
    I: Integer;
  begin
    Result := 0;
    for I := 0 to fCount - 2 do
      Result := Result + KMLengthDiag(fItems[I], fItems[I + 1]);
  end;
  
  
  