利用MO实现流场显示 

                                                          利用MO实现流场显示 
转载

背景:有一个点状ShapeFile,每个点有一个方向字段,要将各个点显示为相应方向的箭头。

方法:想通了很简单,就是使用MO中的ClassBreaksRenderer,和点状Symbol即可完成,废话少说,关键代码上:

    Dim lyr As MapLayer, i As Integer
    Set lyr = Map1.Layers(0)
   
    Dim cl As New ClassBreaksRenderer
    cl.BreakCount = N
    cl.SymbolType = moPointSymbol
    cl.Field = "Angle"
    For i = 0 To N - 1
        cl.Break(i) = i / N * 360
        With cl.Symbol(i)
        .SymbolType = moPointSymbol
        .Color = moBlack
        .Font.Name = "宋体"
        .Font.Bold = False
        .Size = 22
        .Style = moTrueTypeMarker
        .SymbolType = moPointSymbol
        .CharacterIndex = 24
        .Rotation = i / N * 360 - 90
        End With
    Next i

    With cl.Symbol(i)
        .SymbolType = moPointSymbol
        .Color = moBlack
        .Font.Name = "宋体"
        .Size = 22
        .Style = moTrueTypeMarker
        .SymbolType = moPointSymbol
        .CharacterIndex = 24
        .Rotation = i / N * 360
    End With

    Set lyr.Renderer = cl

效果如下


posted @ 2007-05-24 08:37 GIS云中飞鹏 阅读(597) 评论(3)  编辑 收藏 所属分类: MapObject开发

  回复  引用    
#1楼 2007-08-10 02:21 | vipdog [未注册用户]
这样显示的流场怎么用箭头长度表示流速大小啊
  回复  引用    
#2楼 2007-08-10 08:56 | GIS云中飞鹏 [未注册用户]
自己研究研究吧!^_^
  回复  引用    
#3楼 2008-04-06 20:02 | 阿壳 [未注册用户]
前辈您好,我现在上大三,刚刚接触MO,看了您的关于MO的开发笔记很有收获,想向您请教一下,我的实习作业是用MO做校园导航系统,我想知道怎么能做出来路径分析的动能,比如用户输入起点终点,就可以在地图上显示可行的路径。若是您方便的时候给我发封邮件指教一二,那就太感谢您了。