10楼#
发布于:2004-09-09 15:37
<P>请问楼上的:你的这段代码是关于MO的吗?我怎么找不到OnAfterDraw这个事件啊?</P><P>谢谢你的回复</P><P>以下代码:</P><P>Dim pt As MapObjects2.Point
Dim tl As MapObjects2.TrackingLayer Private Sub sRePlay() Dim lngLoop As Long Dim bCenter As Boolean bCenter = False For lngLoop = 1 To lngRecAll - 1 If bUnload Then Exit Sub Seek #ihFile, cTestPLFileHeaderLen + 1 + cTestPLFileRecordLen * (lngLoop) Get #ihFile, , wDataWdd With wDataWdd mNowdblLon = Val(.Lon) mNowdblLat = Val(.Lat) labInfo = "经度:" + .Lon + "--纬度:" + .Lat If mNowdblLon <> 0 And mNowdblLat <> 0 Then If Not bCenter Then moMain.CenterAt mNowdblLon, mNowdblLat bCenter = True End If Set pt = New MapObjects2.Point pt.x = mNowdblLon pt.y = mNowdblLat tl.AddEvent pt, 0 End If End With DoEvents Next Close #ihFile End Sub</P><P>在加载了地图文件(shp类型)后可以正常画出GPS所走的轨迹,但如果没有加载地图,也就是说MO上没任何图层的话,就不能画出轨迹,请问要如何做?</P><P>我用MAPX开发的话,不加载任何地图文件也一样可以画出GPS所走的轨迹,但现在用MO就不知要如何做了</P> |
|
11楼#
发布于:2004-09-09 14:28
Private Sub MapControl1_OnAfterDraw(ByVal display As esriCore.IDisplay, ByVal phase As esriCore.esriViewDrawPhase)
If (phase = esriViewForeground) Then Dim pElement As IElement Dim i As Integer For i = 0 To m_pElementcollection.Count - 1 m_pElementcollection.QueryItem i, pElement MapControl1.DrawShape pElement.Geometry Next End If End Sub |
|
|
12楼#
发布于:2004-09-09 10:12
实在不好意思,还是搞不懂该怎么做
|
|
13楼#
发布于:2004-09-09 08:10
<P>tomappoint应该是把屏幕坐标转换为地图坐标</P><P>你要么用Gis说的得到points</P><P>如果显示点用map1.drawshape画出来</P><P>也可以用map1.trackinglayer.addevent一个个化(不知道有没有个数限制)</P><P>如果画线</P><P>dim ln as new mapojects2.line</P><P>ln.parts.add points</P><P>trackinglayer.addevent ln</P>
|
|
14楼#
发布于:2004-09-08 15:39
<P>是在trackinglayer上画,但不知该怎么做。</P><P>我用tomappoint函数转换了经纬度,但画的点在MO上要么显示不出来,要么就是都显示在左上角上,不能显示成一条GPS行走的轨迹路线</P><P>如果我加载了地图后,不用tomappoint函数就可以直接用经纬度画点并在地图上相应位置上显示</P><P>请问这要如何解决?</P><P>谢谢各位的答复</P>
|
|
15楼#
发布于:2004-09-08 12:42
<P>你想实现的应该是在trackinglayer上画点</P><P>map1.TrackingLayer.AddEvent 可以实现</P><P>也可以用Gis说的得到points然后drawshape</P>
|
|
16楼#
发布于:2004-09-08 12:21
<P>楼上的方法不行</P><P>我现在需要的效果是:</P><P>在没有加载地图的情况下,根据GPS的经纬度来画轨迹点</P><P>请问要如何做?谢谢</P>
|
|
17楼#
发布于:2004-09-06 17:43
'建立一组点,进行跟踪
Dim pt As MapObjects2.Point Set m_ptsTrack = New MapObjects2.Points Set pt = New MapObjects2.Point pt.Set -79.3062, 39.9254 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -79.0407, 39.5037 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -78.7127, 39.2694 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -78.291, 39.2694 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -77.8069, 39.4256 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -77.4008, 39.6599 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -77.026, 39.7536 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -76.6511, 39.6911 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -76.2763, 39.41 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -75.9483, 39.0196 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -75.839, 38.6916 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -75.511, 38.2855 m_ptsTrack.Add pt Set pt = New MapObjects2.Point pt.Set -75.3704, 37.9419 m_ptsTrack.Add pt |
|
|
18楼#
发布于:2004-09-06 11:07
<P>谢谢您的回复!</P><P>我就是不知道该如何转换为Map控件坐标系的点啊?代码怎样写啊?</P>
|
|
19楼#
发布于:2004-09-06 10:54
源代码没有,只能提供思路,把经纬度转换为Map控件坐标系的点,不就OK啦!
|
|
|
上一页
下一页