TGeometry.interpolate пусто

Я работаю с gmlib (1.5.3, XE10) и пытался использовать функцию TGeometry.interpolate, но всегда возвращает 0,00,0.00. Я просматриваю код и отмечаю, что функция интерполирует в GMFunctions.pas пусто??

С уважением

1 ответ

Вот Это Да! Так жаль!!

Попробуйте с этим кодом! (не испытано)

class procedure TGeometry.Interpolate(Map: TCustomGMMap; Origin, Dest: TLatLng;
  Fraction: Real; Result: TLatLng);
const
  StrParams = '%s,%s,%s,%s,%s';
var
  Params: string;
begin
  if not Assigned(Result) then Exit;

  Params := Format(StrParams, [
                Origin.LatToStr(Map.Precision),
                Origin.LngToStr(Map.Precision),
                Dest.LatToStr(Map.Precision),
                Dest.LngToStr(Map.Precision),
                StringReplace(FloatToStr(Fraction), ',', '.', [rfReplaceAll])
              ]);
  THackMap(Map).ExecuteScript('Interpolate', Params);
  Result.Lat := Result.StringToReal(THackMap(Map).FWC.GetStringField(GeometryForm, GeometryFormInterLat));
  Result.Lng := Result.StringToReal(THackMap(Map).FWC.GetStringField(GeometryForm, GeometryFormInterLng));
end;

Пожалуйста, дайте мне отзыв. Спасибо!

Другие вопросы по тегам