delphi7+mapx5开发的测量距离工具,界面和mapinfo一样,使用十分简单。

Author: 杜长宇 junqilian@163.com
Purpose: 量距离工具
History: 2005-05-21

开发环境: delphi7+mapX 5.02.38
windows XP Sp2

许可:
您可以自由的使用本代码进行学习或非商业、商业应用,
你可以自由更改本代码以便更适合你的应用,但请保留原作者版权信息;
如果你对本代码作过修改优化,请添加详细注释后重新发布到网上,并发给原作者一份拷贝,以利于大家共同进步;

用法:
1、主程序中uses TDistanceToolClass;
2、在主程序窗体中放置ToolButtonDistance
3、添加事件处理函数,形如:
procedure TForm1.ToolButtonDistanceClick(Sender: TObject);
var
m_MapDistanceTool : TDistanceTool;
begin
m_MapDistanceTool := TDistanceTool.Create;
m_MapDistanceTool.CreateDistanceTool(map1);
Map1.CurrentTool := m_MapDistanceTool.GetToolNum;
end;

突然想起来上传的代码里可能有个函数没包含进去,其实也很简单了,我把代码贴出来。

{-----------------------------------------------------------------------------
Procedure: TdchyMapModule.GetChineseMapUnit
Author: duchangyu
Date: 02-六月-2005
Arguments: var currentMap: TMap; mapUnit: TOleEnum
Result: string

得到中文的地图单位字符串
-----------------------------------------------------------------------------}

function TdchyMapModule.GetChineseMapUnit(var currentMap: TMap;
mapUnit: TOleEnum): string;
begin
case mapUnit of
miUnitMile : result := '英里';
miUnitKilometer : result := '千米';
miUnitInch : result := '英寸';
miUnitFoot : result := '英尺';
miUnitYard : result := '码';
miUnitMillimeter : result := '毫米';
miUnitCentimeter : result := '厘米';
miUnitMeter : result := '米';
miUnitSurveyFoot : result := 'SurveyFoot';
miUnitNauticalMile : result := '海里';
miUnitTwip : result := '缇';
miUnitPoint : result := '点';
miUnitPica : result := 'Pica';
miUnitDegree : result := '度';
miUnitLink : result := 'Link';
miUnitChain : result := 'Chain';
miUnitRod : result := 'Rod';
end;
end;


以下内容只有回复后才可以浏览

{-----------------------------------------------------------------------------
Procedure: TdchyMapModule.AutoPan
Author: duchangyu
Date: 02-六月-2005
Arguments: var m_pMap: TMap; mapX, mapY, deltaXScale, deltaYScale: double
Result: None

鼠标到底地图边界时自动移图
-----------------------------------------------------------------------------}

procedure TdchyMapModule.AutoPan(var m_pMap: TMap; mapX, mapY,
deltaXScale, deltaYScale: double);
var
maxX, maxY, minX, minY: double;
deltaX, deltaY: double;
begin
// 当mapX,mapY点到达屏幕距边界还有1/deltaXScale水平和1/deltaYScale垂直时,自动移动屏幕1/deltaXScale(水平)和1/deltaYScale(垂直)
maxX := m_pMap.Bounds.XMax;
minX := m_pMap.Bounds.XMin;
maxY := m_pMap.Bounds.YMax;
minY := m_pMap.Bounds.YMin;
deltaX := (maxX - minX) / deltaXScale;
deltaY := (maxY - minY) / deltaYScale;
if (mapX < minX + deltaX) then
m_pMap.CenterX := m_pMap.CenterX - (minX - mapX) - deltaX
else if (mapX > maxX - deltaX) then
m_pMap.CenterX := m_pMap.CenterX + (mapX - maxX) + deltaX;
if (mapY < minY + deltaY) then
m_pMap.CenterY := m_pMap.CenterY - (minY - mapY) - deltaY
else if (mapY > maxY - deltaY) then
m_pMap.CenterY := m_pMap.CenterY + (mapY - maxY) + deltaY;

end;

2005527114030697.rar

本文转自峻祁连. Moving to Cloud/Mobile博客园博客,原文链接:http://www.cnblogs.com/junqilian/archive/2009/11/03/1595286.html,如需转载请自行联系原作者

【old】mapX距离工具源码,delphi7+mapx5.0相关推荐

  1. 网站站长综合seo在线查询工具源码

    介绍: 网站综合网查询工具源码站长seo综合查询工具提供网站收录查询和站长查询 以及百度权重值查询等多个站长工具,免费查询各种数据,包括收录量.反链. 域名Whois查询.ping查询.子域名查询.服 ...

  2. SSL 自签证书工具源码

    简介: HTTPS/SSL证书自签源码,喜欢就下载吧. 这是一款免费的SSL证书自签工具源码,可随时随地签发SSL证书,运行环境:你的 PHP 必须 >=5.6,且安装了 OpenSSL 扩展, ...

  3. adb 工具源码修改

    adb 工具源码修改 1.修改客户端输入后的判断逻辑,使带密码的命令 可以通过命令检查 修改 system/core/adb/client/commandline.cpp 在最前面 新增一个函数 用来 ...

  4. MFC自用小工具源码

    效果:快速打开计算机内常用的软件,功能,设置 // 自用小工具Dlg.cpp : 实现文件 // #include "stdafx.h" #include "自用小工具. ...

  5. gh-ost大表DDL工具源码阅读

    gh-ost大表DDL工具源码阅读 最终目的 开发环境与测试数据库准备 一个简单的ddl案例 debug分析程序执行过程 vscode debug配置 变量介绍 核心处理逻辑 分析我的需求 最终目的 ...

  6. 翻译python代码的软件_Linux环境下的Python翻译工具源码

    玩蛇网Python教程源码示例,本文源码是用于Linux环境下的Python翻译工具源码详解. 学习计算机编程语言一定会涉及到英文和学习应用,但通常英语词典在Linux环境下都不如Win环境下的好用. ...

  7. 以前写的网页游戏辅助工具源码 传奇类的HOOK 封包 按钮

    以前写的网页游戏辅助工具源码 传奇类的HOOK 封包 按钮. 限量出源码,有需要的 116327160

  8. Python+Qt抽奖点名工具源码窗体程序

     程序示例精选 Python+Qt抽奖点名工具源码窗体程序 如需安装运行环境或远程调试,见文章底部微信名片,由专业技术人员远程协助! 前言 这篇博客针对<Python+Qt抽奖点名工具源码窗体程 ...

  9. 查看QQ是否隐身,轻而易举。 - [工具+源码]

    作者:小黑 ------------------>> /******************************************  * Code By Sinner  * QQ ...

最新文章

  1. redis 漏洞利用与防御
  2. IntelliJ中的main函数、for循环、System.out.println()快捷键
  3. Linux 常用命令与设置
  4. 完成了C++作业,本博客现在开始全面记录acm学习历程,真正的acm之路,现在开始
  5. 视频图像处理平台对比_对比传统智能结算,戈子视觉结算有了质的改变
  6. SQLSERVER数据仓库的构建与分析
  7. html标签默认属性值之margin;padding值
  8. java的tcp通信项目_java实现TCP通信
  9. Win7 IIS7 HTTP 错误 404.2 - Not Found解决方法
  10. sql数据库身份验证登录
  11. gof 设计模式 java_javaSE中的GOF设计模式
  12. C语言 用矩形法计算定积分∫(0—1)sinxdx、∫(-1—1)cosxdx、∫(0—2)e^xdx
  13. 用计算机弹熊出没,熊出没之熊大快跑2018辅助
  14. 联想thinkpad E450C如何进入BIOS?
  15. GNSS观测方程及线性组合
  16. 陈艾盐:春燕百集访谈节目第二十五集
  17. YOLOv5-网络结构
  18. 数据库字段动态扩展设计
  19. border每个边框的阴影(box-shadow属性)
  20. 什么是模块化?及其优缺点

热门文章

  1. vim 编辑器安装 使用
  2. 单片机中SDZ是什么意思_合泰单片机ADC转换程序
  3. 浅谈CSRF攻击方式
  4. iOS Masonry的使用详解
  5. 浏览器兼容问题IE兼容模式下 SCRIPT1028: 缺少标识符、字符串或数字
  6. ffmpeg推流_明白了以下5点思路,你也能用Python实现直播推流效果(技术活)
  7. python数值运算实例_Python矩阵常见运算操作实例总结
  8. 新手入门必看:使用Selenium进行自动化测试
  9. linux ping程序设计与实现,一步步学Linux网络编程--ping命令的实现分析
  10. php 标准输出到文件格式,php格式输出文件var_export函数实例