Skip to main content
Table of Contents

Getting started with TMS FNC Route Calculator

Prerequisites

  • TMS FNC Core installed and the runtime package added to the project.
  • TMS FNC Maps installed and the runtime package added to the project.
  • A map control (e.g. TTMSFNCMaps) already placed and configured on the form.

Add the control

  1. Drop TTMSFNCRouteCalculator from the TMS FNC Maps palette page onto a form.
  2. Set the Maps property to reference your map control instance.

Handle route completion

Handle route completionPascalC++
{ Inside your form's OnCreate event: }
var
  Start, Finish: TTMSFNCMapsCoordinateRec;
begin
  TMSFNCRouteCalculator1.OnCalculateRoute := TMSFNCRouteCalculator1CalculateRoute;

  Start.Latitude := 51.5074;
  Start.Longitude := -0.1278;
  Finish.Latitude := 48.8566;
  Finish.Longitude := 2.3522;
  TMSFNCRouteCalculator1.CalculateRoute(Start, Finish);
end;

procedure TForm1.TMSFNCRouteCalculator1CalculateRoute(
  Sender: TObject; const ARoute: TTMSFNCRouteCalculatorRoute);
begin
  { ARoute contains segments, total distance, and duration }
end;
// Inside your form's OnCreate event:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  TMSFNCRouteCalculator1->OnCalculateRoute = TMSFNCRouteCalculator1CalculateRoute;

  TTMSFNCMapsCoordinateRec Start, End;
  Start.Latitude = 51.5074;
  Start.Longitude = -0.1278;
  End.Latitude = 48.8566;
  End.Longitude = 2.3522;
  TMSFNCRouteCalculator1->CalculateRoute(Start, End);
}

void __fastcall TForm1::TMSFNCRouteCalculator1CalculateRoute(TObject *Sender,
  TTMSFNCRouteCalculatorRoute * const ARoute)
{
  // ARoute contains segments, total distance, and duration
}

Next steps

  • Guides — route building, undo/redo history, and GPX import/export.
  • API reference — full class reference.