<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta name="generator" content="pdf2htmlEX">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="https://static.pudn.com/base/css/base.min.css">
<link rel="stylesheet" href="https://static.pudn.com/base/css/fancy.min.css">
<link rel="stylesheet" href="https://static.pudn.com/prod/directory_preview_static/626825184f8811599ef56c31/raw.css">
<script src="https://static.pudn.com/base/js/compatibility.min.js"></script>
<script src="https://static.pudn.com/base/js/pdf2htmlEX.min.js"></script>
<script>
try{
pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
}catch(e){}
</script>
<title></title>
</head>
<body>
<div id="sidebar" style="display: none">
<div id="outline">
</div>
</div>
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/626825184f8811599ef56c31/bg1.jpg"><div class="c x0 y1 w2 h2"><div class="t m0 x1 h3 y2 ff1 fs0 fc0 sc0 ls0 ws0">Option Explicit</div><div class="t m0 x1 h3 y3 ff1 fs0 fc0 sc0 ls0 ws0">'***************************************<span class="_ _0"></span>***************************************</div><div class="t m0 x1 h3 y4 ff1 fs0 fc0 sc0 ls0 ws0">*****</div><div class="t m0 x1 h4 y5 ff1 fs0 fc0 sc0 ls0 ws0">'<span class="ff2">获取指定窗口的设备场景</span></div><div class="t m0 x1 h3 y6 ff1 fs0 fc0 sc0 ls0 ws0">Private Declare Function GetDC Lib "user32" (ByV<span class="_ _1"></span>al hwnd <span class="_ _2"></span>As Long) <span class="_ _2"></span>As Long</div><div class="t m0 x1 h4 y7 ff1 fs0 fc0 sc0 ls0 ws0">'<span class="ff2">为指定的设备场景指定一个新的当前画笔位置</span></div><div class="t m0 x1 h3 y8 ff1 fs0 fc0 sc0 ls0 ws0">Private<span class="_ _3"></span> <span class="_ _3"></span>Declare<span class="_ _3"></span> <span class="_ _3"></span>Function<span class="_ _3"></span> <span class="_ _3"></span>MoveT<span class="_ _2"></span>oEx <span class="_ _3"></span>Lib<span class="_ _3"></span> <span class="_ _3"></span>"gdi32"<span class="_ _3"></span> <span class="_ _3"></span>(ByV<span class="_ _1"></span>a<span class="_ _3"></span>l <span class="_ _4"></span>hdc As <span class="_ _3"></span>Long,<span class="_ _3"></span> <span class="_ _3"></span>ByV<span class="_ _1"></span>al<span class="_ _3"></span> <span class="_ _3"></span>X<span class="_ _3"></span> As <span class="_ _3"></span>Long,<span class="_ _3"></span> <span class="_ _3"></span>ByV<span class="_ _1"></span>al</div><div class="t m0 x1 h3 y9 ff1 fs0 fc0 sc0 ls0 ws0">Y<span class="_ _2"></span> <span class="_ _0"></span>As Long, lpPoint <span class="_ _2"></span>As P<span class="_ _0"></span>OINT<span class="_ _2"></span>AP<span class="_ _0"></span>I) <span class="_ _2"></span>As Long</div><div class="t m0 x1 h4 ya ff1 fs0 fc0 sc0 ls0 ws0">'<span class="ff2">从当前位置连到一个指定的点</span></div><div class="t m0 x1 h3 yb ff1 fs0 fc0 sc0 ls0 ws0">Private Declare <span class="_ _3"></span>Function LineT<span class="_ _2"></span>o Lib "gdi32" (ByV<span class="_ _1"></span>al <span class="_ _3"></span>hdc <span class="_ _2"></span>As Long, <span class="_ _3"></span>ByV<span class="_ _1"></span>al X <span class="_ _2"></span>As <span class="_ _3"></span>Long, ByV<span class="_ _1"></span>al Y<span class="_ _2"></span> <span class="_ _2"></span>As</div><div class="t m0 x1 h3 yc ff1 fs0 fc0 sc0 ls0 ws0">Long) <span class="_ _2"></span>As Long</div><div class="t m0 x1 h3 yd ff1 fs0 fc0 sc0 ls0 ws0">Private T<span class="_ _5"></span>ype POINT<span class="_ _5"></span>API</div><div class="t m0 x1 h3 ye ff1 fs0 fc0 sc0 ls0 ws0"> lngX <span class="_ _2"></span>As Long</div><div class="t m0 x1 h3 yf ff1 fs0 fc0 sc0 ls0 ws0"> lngY<span class="_ _2"></span> <span class="_ _2"></span>As Long</div><div class="t m0 x1 h3 y10 ff1 fs0 fc0 sc0 ls0 ws0">End T<span class="_ _5"></span>ype</div><div class="t m0 x1 h3 y11 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_apiPoint <span class="_ _2"></span>As POINT<span class="_ _5"></span>API</div><div class="t m0 x1 h4 y12 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_lngMapDc <span class="_ _2"></span>As Long '<span class="ff2">设备场景变量</span></div><div class="t m0 x1 h4 y13 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_dblMoveX <span class="_ _2"></span>As Double '<span class="ff2">每次绘线的起点</span> X</div><div class="t m0 x1 h4 y14 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_dblMoveY<span class="_ _2"></span> <span class="_ _2"></span>As Double '<span class="_ _3"></span><span class="ff2">每次绘线的起点</span> Y</div><div class="t m0 x1 h4 y15 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_ptRule <span class="_ _2"></span>As New MapXLib.Point '<span class="ff2">测距时的当前点</span></div><div class="t m0 x1 h4 y16 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_ptsRule <span class="_ _2"></span>As New MapXLib.Points '<span class="ff2">测距时的点集</span>(<span class="ff2">用来生成直线</span>)</div><div class="t m0 x1 h4 y17 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_blnRulerFlag <span class="_ _2"></span>As Boolean '<span class="ff2">测量标志</span></div><div class="t m0 x1 h4 y18 ff1 fs0 fc0 sc0 ls0 ws0">Dim<span class="_ _6"> </span> <span class="_ _6"> </span>m_dblDistanceT<span class="_ _5"></span>emp<span class="_ _6"> </span> <span class="_ _7"></span>As<span class="_ _6"> </span> <span class="_ _6"> </span>Double<span class="_ _6"> </span> <span class="_ _8"> </span> <span class="_ _8"> </span> <span class="_ _9"> </span> <span class="_ _8"> </span> <span class="_ _8"> </span> <span class="_ _9"> </span> <span class="_ _8"> </span> <span class="_ _9"> </span> <span class="_ _8"> </span> <span class="_ _8"> </span> <span class="_ _9"> </span> <span class="_ _8"> </span> <span class="_ _9"> </span> <span class="_ _8"> </span> <span class="_ _6"> </span>'<span class="_ _a"> </span><span class="ff2">测<span class="_ _8"> </span>距<span class="_ _9"> </span>时<span class="_ _8"> </span>从<span class="_ _b"> </span></span>Map1_MouseDown<span class="_ _b"> </span><span class="ff2">到</span></div><div class="t m0 x1 h4 y19 ff1 fs0 fc0 sc0 ls0 ws0">Map1_MouseMove<span class="_ _c"> </span><span class="ff2">的直线距离</span></div><div class="t m0 x1 h4 y1a ff1 fs0 fc0 sc0 ls0 ws0">Dim<span class="_ _7"></span> <span class="_ _d"> </span>m_dblDistanceSum<span class="_ _7"></span> <span class="_ _4"></span>As<span class="_ _7"> </span> <span class="_ _d"> </span>Double<span class="_ _7"></span> <span class="_"> </span> <span class="_ _c"> </span> <span class="_"> </span> <span class="_ _c"> </span> <span class="_"> </span> <span class="_ _c"> </span> <span class="_ _c"> </span> <span class="_"> </span> <span class="_ _c"> </span> <span class="_"> </span> <span class="_ _c"> </span> <span class="_"> </span> <span class="_ _c"> </span> <span class="_ _c"> </span> <span class="_"> </span> <span class="_ _7"></span>'<span class="_ _9"> </span><span class="ff2">测<span class="_ _e"> </span>距<span class="_ _c"> </span>时<span class="_ _e"> </span>从<span class="_ _e"> </span>第<span class="_ _e"> </span>一<span class="_ _c"> </span>次<span class="_ _f"> </span></span>Map1_T<span class="_ _5"></span>oolUse<span class="_ _10"> </span><span class="ff2">到</span></div><div class="t m0 x1 h4 y1b ff1 fs0 fc0 sc0 ls0 ws0">Map1_DblChick<span class="_ _c"> </span><span class="ff2">的折线距离</span></div><div class="t m0 x1 h4 y1c ff1 fs0 fc0 sc0 ls0 ws0">Dim m_dblRuleW<span class="_ _2"></span>indowLeft <span class="_ _2"></span>As Double '"<span class="_ _3"></span><span class="ff2">距离</span>"<span class="ff2">窗体的左边位置</span></div><div class="t m0 x1 h4 y1d ff1 fs0 fc0 sc0 ls0 ws0">Dim m_dblRuleW<span class="_ _2"></span>indowT<span class="_ _2"></span>op <span class="_ _2"></span>As Double '"<span class="ff2">距离</span>"<span class="ff2">窗体的顶部位置</span></div><div class="t m0 x1 h3 y1e ff1 fs0 fc0 sc0 ls0 ws0">'***************************************<span class="_ _0"></span>***************************************</div><div class="t m0 x1 h3 y1f ff1 fs0 fc0 sc0 ls0 ws0">*****</div><div class="t m0 x1 h4 y20 ff1 fs0 fc0 sc0 ls0 ws0">Dim m_sngMoveX<span class="_ _3"></span> <span class="_ _2"></span>As Sing<span class="_ _3"></span>le <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span>'<span class="_ _6"> </span><span class="ff2">由<span class="_ _e"> </span></span>Map1_MouseMove<span class="_ _c"> </span><span class="ff2">传<span class="_ _3"></span>给<span class="_ _e"> </span></span>Map1_MapV<span class="_ _2"></span>iewChange</div><div class="t m0 x1 h4 y21 ff2 fs0 fc0 sc0 ls0 ws0">的地图屏幕坐标<span class="_ _c"> </span><span class="ff1">X</span></div><div class="t m0 x1 h4 y22 ff1 fs0 fc0 sc0 ls0 ws0">Dim <span class="_ _3"></span>m_sngMoveY<span class="_ _0"></span> <span class="_ _2"></span>As <span class="_ _3"></span>Single <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span> <span class="_ _3"></span>'<span class="_ _7"></span><span class="ff2">由<span class="_ _c"> </span></span>Map1_MouseMove<span class="_"> </span><span class="ff2">传给<span class="_ _e"> </span></span>Map1_MapV<span class="_ _5"></span>ie<span class="_ _3"></span>wChange</div><div class="t m0 x1 h4 y23 ff2 fs0 fc0 sc0 ls0 ws0">的地图屏幕坐标<span class="_ _c"> </span><span class="ff1">Y</span></div><div class="t m0 x1 h4 y24 ff1 fs0 fc0 sc0 ls0 ws0">Const PolyRulerT<span class="_ _5"></span>ool <span class="_ _2"></span>As Integer = 101 '<span class="ff2">折线测距工具编号</span></div><div class="t m0 x1 h3 y25 ff1 fs0 fc0 sc0 ls0 ws0">Private Sub Command1_Click()</div><div class="t m0 x1 h3 y26 ff1 fs0 fc0 sc0 ls0 ws0"> Dim lyrT<span class="_ _5"></span>emp <span class="_ _2"></span>As MapXLib.Layer</div></div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div>
</body>
</html>