关于在Arcgis上显示GPS上的点的有关问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于在Arcgis上显示GPS上的点的有关问题相关的知识,希望对你有一定的参考价值。

本人Arcgis初学者,有点问题请赐教
老师要我们研究如何将由GPS上得到的点在Arcgis上的地图中显示出来,在地图上形成连续的显示状态(仅用arcmap软件)。而初级要我们解决怎么样在gis上输入一个点的空间坐标(经纬度),将这个点在地图上显示出来,输入下一组经纬度再显示一个点,这样依次保留的显示各个点。具体方法是什么,需要怎样的操作,是否很困难复杂
感谢
感谢前两位回答者
现在是这样:需要建立一个窗体。这个窗体可以输入很多组数据(经纬度坐标为一组,如1.X117 Y35 这样的),然后将多组数据比如说10组数据在图中显示出来。条件是10个点一个一个的按顺序依次在地图中显示出来,后一个显示时前一个消失。关键是现在怎样编程区实现,请赐教~
求助各位Arcgis与VBA同时在行的大侠们....
万谢

这个问题的实现不困难,主要是你的GPS点是什么格式的?建议使用txt文本格式,如果使用的是9.3.1之前的版本,在Insert下应该有个Insert XY Data的项,点击后,浏览至GPS点文件的位置,即可用ArcMap打开查看了,并且如果有需要,可以将其导出成shape和GDB格式。
显示的话,我不是很明白你的意思,如果是输入坐标显示,就使用标准工具条上,有个写着XY的按钮,点击后,输入你想要的坐标,即可跳转到你想要的位置。
过程很简单,祝成功~
参考技术A 把点用exl表表示出来,再在arcgis中导入就可以了。

获取有关单击了哪个图钉的信息

【中文标题】获取有关单击了哪个图钉的信息【英文标题】:getting information about which push pin was clicked 【发布时间】:2014-11-04 17:45:30 【问题描述】:

我正在构建一个读取文件的 Windows Phone 8.1 应用程序(其中包含 GPS 点,每个点由例如纬度和经度字段组成)。对于每个点,我都有它,因此它在地图控件上显示一个小图钉图标,基于它与上述文件的协调。我想让图钉可点击,最终目标是获取用户点击的点的纬度和经度,并根据点击的点执行适当的操作。我怎样才能掌握这些信息?这是我尝试过的,但它不起作用:

 private async void Image_Tapped(object sender, TappedRoutedEventArgs e)
    
        var point = sender as Geopoint;

        MessageDialog msgbox = new MessageDialog("point tapped: " + point.Position.Latitude );

        await msgbox.ShowAsync();
    

这是我的模板:

<Maps:MapControl x:Name="myMap">
        <Maps:MapItemsControl ItemsSource="Binding ">
            <Maps:MapItemsControl.ItemTemplate>
                <DataTemplate>
                    <Image Source="Assets/pushpin.png" Tapped="Image_Tapped" Width="50" Height="50"  Maps:MapControl.Location="Binding"></Image>                     
                </DataTemplate>
            </Maps:MapItemsControl.ItemTemplate>
        </Maps:MapItemsControl>
     </Maps:MapControl>

这是我用来读取文件和显示图钉的(它显示它们很好)

 protected async override void OnNavigatedTo(NavigationEventArgs e)
    
        Geoposition position = await App.DataModel.GetCurrentPosition();

        await myMap.TrySetViewAsync(position.Coordinate.Point, 16D);

        List<Geopoint> list = new List<Geopoint>();            

        bool exist; // used to check if JSON file exists

        exist = await App.DataModel.FileExistsAsync();

        if (exist == true)
        
            // read the file and load points into a list
            await App.DataModel.ReadFile();


            foreach (var point in App.DataModel.notes)
            
                Geopoint geo = new Geopoint(new BasicGeoposition()
                
                    Latitude = point.Latitude,
                    Longitude = point.Longitude
                );

                list.Add(geo);
            
        

        myMap.DataContext = list;
    

【问题讨论】:

【参考方案1】:

在您的Image_Tapped 处理程序中,sender 变量不是Geopoint,而是Image。但Geopoint 应该是这张图片的DataContext

var point = (sender as Image).DataContext as Geopoint;

【讨论】:

以上是关于关于在Arcgis上显示GPS上的点的有关问题的主要内容,如果未能解决你的问题,请参考以下文章

请问如何在用ARCGIS做好的DEM中查找一个已知坐标的点的高程?

Mapx 与delphi 关于地图

n皇后问题——关于斜线的编号

关于ArcGIS中ArcMap运行不了

获取有关单击了哪个图钉的信息

在 skyplot 上显示 gps 卫星位置