在两个已知点之间画线

时间:2014-04-18 20:11:14

标签: delphi gmlib

使用Delphi XE3和GMLib 1.2.4。应该是基本问题。如何在两个给定点之间绘制基本的非连接线。我目前在WebBrowser上显示GMMap并具有GMPolyline组件。使用两个lat-lon对的已知值。只需要帮助绘制两者之间的界线。用它来绘制轴承线。这就是我到目前为止所做的:

procedure TMainGMForm.ButtonPlotLineClick(Sender: TObject);
var
  CurLat,CurLon,DisLat,DisLon: Double;
  P1,P2: TLatLng;
begin
  CurLat := StrToFloat(EditLat.Text);
  CurLon := StrToFloat(EditLon.Text);
  DisLat := StrToFloat(EditLat2.Text);
  DisLon := StrToFloat(EditLon2.Text);
  P1 := TLatLng.Create(CurLat,CurLon);
  Inc(PointIndex);
  P2 := TLatLng.Create(DisLat,DisLon);
  Inc(PointIndex);
  //what goes here to plot a line between these two points? 
  // 
  FreeAndNil(P1);
  FreeAndNil(P2);
end;

1 个答案:

答案 0 :(得分:1)

您需要在TGMPolyline中添加TPolyline,类似这样

var
  Poly: TPolyline;
begin
  Poly := TPolyline(GMPolyline1.Add);

并将两个点添加到LinePoints数组

  Poly.AddLinePoint(CurLat, CurLon);
  Poly.AddLinePoint(DisLat, Double);