把FLayerDataList、TmpRoad、TmpRoad1、TmpRoad2、...都是什麼?
貼出TList的定義、構造...

解决方案 »

  1.   

    FlayerDataList : TLayerList;
    TmpRoad,tmproad1,tmproad2 : TToadData;
    ********************************************
    TLayerList = class
      private
        LayerList, IDXList: TList;
        procedure ClearLayerData;
        procedure ClearIDXData;
        function GetIDX(sLayer: string; StartIDX: integer; EndIDX: integer): integer;
        function GetCount: integer;
        function GetItems(i: integer): TLayer;
        function GetCapacity: integer;
        procedure SetCapacity(const Value: integer);
      public
        function AddLayer(Layer: TLayer): integer;
        procedure InsertLayer(i: integer; Layer: TLayer);
        procedure MoveLayer(i, j: integer);
        procedure DeleteLayer(i: integer);
        procedure RemoveLayer(i: integer);
        function GetLayerIDX(sLayer: string): integer;
        procedure Clear;
        property Capacity: integer read GetCapacity write SetCapacity;
        property Count: integer read GetCount;
        constructor Create;
        destructor Destroy; override;
        property Items[i: integer]: TLayer read GetItems; Default;
      end;*****************************************
     TRoadData = class(TMapObject)                      //定义道路资料记录结构
      protected
        procedure AssignTo(Dest: TPersistent); override;
      public
        ID    :  Integer;
        ParentID :integer;
        sSecName: string;   //第二名称
        aPointList: TAPoint;      //点列表(接顺序)
        iDirection: smallint;     //方向;
        //约定:0表示双向;1表示从第一点到最后一点;-1表示从最后一点到
        //第一点。
        iMinx: integer;      //最小点X坐标
        iMiny: integer;      //最小点y坐标
        iMaxx: integer;      //最大点X坐标
        iMaxy: integer;      //最大点y坐标    //   iLevel               :Integer;
        //  iWidth               :Integer;    iDVGX: integer;
        iDVGY: integer;    Tag: integer;
        TagFirst, TagLast: integer;
        RectIDX: integer;//道路所在的网格.    fDist: double;       //长度;
        //以上五个值不再保存在表或文件中,而是在装入时计算。
        //去掉了原格式中起点坐标和终点坐标,需要时直接取数组的第0个和最
        //后一个点的坐标。
        aFromLinkNo: TAGUID;
        aToLinkNo: TAGUID;
        DTFr: TTime;
        DTTo: TTime;
        ByteData: TByteData;
        //所谓连接,不完全指起始点或终点完全重合的道路,也包括起始点和//终点距离在5个地图坐标点范围以内的道路(不包括5个点)。
        function GetRate(Index: integer): double;
        procedure CalcMaxMin;
        constructor Create;
      end;