• Delphi ArcEngine 创建点密度专题方法



    function DotDensityRenderer(pLayer: ILayer; sField: string; iDotSize: Integer; pRgbColor: IRgbColor; dDotValue:  Double): Boolean;

    //参数说明 ,按顺序 指定的图层,字段  ,点大小,颜色,每个点代表的值
    var
       pGeoLayer: IGeoFeatureLayer;
       pRenderer: IDotDensityRenderer;
       pMarkerSymbol: ISimpleMarkerSymbol;
       pRendererFields: IRendererFields;
       pDotDensitySymbol: IDotDensityFillSymbol;

       pSymbolArray: ISymbolArray;
    begin
       //创建点密度渲染对象
       pRenderer := CoDotDensityRenderer.Create as IDotDensityRenderer;
       pRendererFields := pRenderer as IRendererFields;

       //创建点密度符号
       pDotDensitySymbol := CoDotDensityFillSymbol.Create as IDotDensityFillSymbol;
       pDotDensitySymbol.DotSize := iDotSize;
       pDotDensitySymbol.BackgroundColor := pRgbColor;

       //创建点符号,用于点密度渲染
       pMarkerSymbol := CoSimpleMarkerSymbol.Create as ISimpleMarkerSymbol;
       pMarkerSymbol.Color := getRGB(0, 0, 255, 255);
       pMarkerSymbol.Style := esriSMSCircle;

       pSymbolArray := pDotDensitySymbol as ISymbolArray;
       pSymbolArray.AddSymbol(pMarkerSymbol as ISymbol);

       pRenderer.DotDensitySymbol := pDotDensitySymbol;
       pRenderer.DotValue := dDotValue;
       pRenderer.CreateLegend;

       if pRenderer <> nil then
       begin
          pGeoLayer := pLayer as IGeoFeatureLayer;
          pGeoLayer.Renderer := pRenderer as IFeatureRenderer;
          Result := True;
       end
       else
       begin
          Result := False;
       end;
    end;

  • 相关阅读:
    learning scala pattern matching
    learning scala Case Classses
    simcom7600ce-t LBS function
    hadoop kafka learning url
    python 生成器
    计算机名称和IP地址
    批量压缩文件夹到Zip文件
    批量解压Zip文件
    创建本地作业
    方便不冗余的桌面文件夹
  • 原文地址:https://www.cnblogs.com/chinacodegear/p/1418270.html
Copyright © 2020-2023  润新知