发表用户:hens
收集整理:James.Liu
相关讨论:http://www.mygis.com.cn/forum/dispbbs.asp?boardID=4&ID=9807
信息原始来源:不祥

文章标题:缓冲区分析(Delphi源码)


var
  BufferFea: MapXLib_TLB.Feature;
  FeaFac: MapXLib_TLB.FeatureFactory;
  Fea: MapXLib_TLB.Feature;
  lyr: MapXLib_TLB.Layer;
  TempLyr: MapXLib_TLB.Layer;
  i, j: Integer;
  select: Variant;
begin
  if Edit1.Text = '' then
  begin
    ShowMessage('请输入距离');
  end else
  begin
    TempLyr := JLfrm.MapMain.Layers.CreateLayer('TempLayer', emptyparam, 1, emptyparam, emptyparam);
    JLfrm.MapMain.Layers.AnimationLayer := TempLyr;
    TempLyr.Editable := true;

    FeaFac := JLfrm.MapMain.FeatureFactory;
    for i := 1 to JLfrm.MapMain.Layers.Count do
    begin
      lyr := JLfrm.MapMain.Layers.Item[i];
      if lyr.Selection.Count > 0 then
      begin
        select := lyr.Selection;
        for j := 1 to select.Count do
        begin
          Fea := lyr.Selection.Item[j];
          BufferFea := FeaFac.BufferFeatures(lyr.Selection, StrToInt(Edit1.Text), SelectionUnit, 12);
          TempLyr.AddFeature(BufferFea, emptyparam);
        end;
      end;
    end;
  end;
  close