请教各位,开发环境,windows2000+delphi6+mapx控件,实现地图上两点测距。
我的代码有问题,请高人帮忙,指点迷津,谢谢!procedure TForm1.FormCreate(Sender: TObject);
begin
//添加测距工具
self.Map1.CreateCustomTool(tooldistance,miToolTypePoly,miCrossCursor);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
//加上这句,将出现测距的虚线,工具切换到测距状态
self.Map1.CurrentTool:=tooldistance;
end;procedure TForm1.Map1PolyToolUsed(Sender: TObject; ToolNum: Smallint;
Flags: Integer; const Points: IDispatch; bShift, bCtrl: WordBool;
var EnableDefault: WordBool);
var
pts:CMapxPoints;
i:integer;
pt1:CMapxPoint;
pt2:CMapxPoint;
//相临两点之间的直线距离
distance:double;
//起点和终点的距离
dissum:double;
begin
dissum:=0;if ToolNum=tooldistance then
begin
//从这里开始出现迷惑
//for以下的语句有问题,我不清楚的是,如何得到测距一共划了多少个点?
for i:=1 to pts.Count-1 do
begin
pt1:=pts.Item(i);
pt2:=pts.Item(i+1);
distance:=self.Map1.Distance(pt1.X,pt1.Y,pt2.X,pt2.Y );
dissum:=dissum+distance; end; end; end;
我的代码有问题,请高人帮忙,指点迷津,谢谢!procedure TForm1.FormCreate(Sender: TObject);
begin
//添加测距工具
self.Map1.CreateCustomTool(tooldistance,miToolTypePoly,miCrossCursor);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
//加上这句,将出现测距的虚线,工具切换到测距状态
self.Map1.CurrentTool:=tooldistance;
end;procedure TForm1.Map1PolyToolUsed(Sender: TObject; ToolNum: Smallint;
Flags: Integer; const Points: IDispatch; bShift, bCtrl: WordBool;
var EnableDefault: WordBool);
var
pts:CMapxPoints;
i:integer;
pt1:CMapxPoint;
pt2:CMapxPoint;
//相临两点之间的直线距离
distance:double;
//起点和终点的距离
dissum:double;
begin
dissum:=0;if ToolNum=tooldistance then
begin
//从这里开始出现迷惑
//for以下的语句有问题,我不清楚的是,如何得到测距一共划了多少个点?
for i:=1 to pts.Count-1 do
begin
pt1:=pts.Item(i);
pt2:=pts.Item(i+1);
distance:=self.Map1.Distance(pt1.X,pt1.Y,pt2.X,pt2.Y );
dissum:=dissum+distance; end; end; end;
解决方案 »
- 关于Excel文件的操作
- 在线等:请教如何将自己做的资源文件1.rc加入到delphi工程中?解决就给分。
- quickreport内的报表字段太多,如何做分页打印
- 钩子和服务应用程序问题
- 如何响应动态创建控件的鼠标双击事件??请高手指教……
- c++中的“带函数的”struct,对应于pascal的什么类型?? 200分相送!
- 请介绍控件
- 哪里有WordVBA的参考书籍下载?十分感谢!!!!!!
- 关于DELPHI的分帧!
- delphi xe4安装AlphaControls之后,控制面板没有显示那三个控件呢?
- 我现在用dbgrideh控件,用到日期时间字段时怎么显示时间的下拉框,而不是总是日历的下拉框?很急
- 急问:AdvStringGrid中单元格背景色设置的问题?
这个参数就是画线的点集合,数量就是pts.Count-1