使用Mapwingis剪辑两个形状:结果shapefile没有形状

时间:2015-06-27 15:18:42

标签: vb.net visual-studio-2012 dictionary shapes shapefile

我将MapWingis.ocx用于我的代码

我使用MapWingis.Shapefile声明一个“Shapefile”对象

我只想剪辑两个shapefile。有一种API函数格式:

Shapefile.Clip (bool SelectedOnlySubject, Shapefile sfOverlay, bool SelectedOnlyOverlay)

我开始写这个。

    Dim sfOverlay As New MapWinGIS.Shapefile
    Dim sfinput As New MapWinGIS.Shapefile
    Dim sfClip As New MapWinGIS.Shapefile
    Dim index1 As Integer
    Dim index2 As Integer

        index1 = CbBInputLayer.SelectedIndex
        index2 = CbBOverlayClipLayer.SelectedIndex
        sfinput = FormMain.AxMapMain.get_Shapefile(index1)
        sfOverlay = FormMain.AxMapMain.get_Shapefile(index2)

    sfClip = sfinput.Clip(False, sfOverlay, False)
        If sfClip Is Nothing Then
            MessageBox.Show("Failed to calculate Clip :" + sfinput.ErrorMsg(sfinput.LastErrorCode))
            MessageBox.Show("Failed to calculate Clip :" + sfOverlay.ErrorMsg(sfOverlay.LastErrorCode))
            MessageBox.Show("Failed to calculate Clip :" + sfClip.ErrorMsg(sfClip.LastErrorCode))

        Else
            shape2.Add(sfClip)
        End If

结果is Nothing

sfInput结果shapefile没有形状

sfOverlay无错误

sfClip空引用设置为对象的实例

我该如何解决这个问题?有什么错吗?

1 个答案:

答案 0 :(得分:0)

这段代码没有错。我的错误是我用来输入和剪辑它的地图。感谢您的评论