Example #1
0
    def getFsegmentlist(roadlist, dis, divang):
        fcrosslist = GetData.getFCrosslist(roadlist, dis, divang)[0]
        # 取数据中带有交叉点的路
        for itemC in fcrosslist:
            list1 = []
            for itemR in roadlist:
                if itemC in itemR.cordinations:
                    list1.append(itemR)

        fsegmentlist = []
        count = 0
        for item in roadlist:
            tempList1 = item.divideByJointList(fcrosslist)
            if GetData.isContinuous(tempList1) is not True:
                print("警告,道路划分后,不连续!!!!")
                # print (len(roadList1))
            for segmentCordination in tempList1:
                count += 1
                fsegmentlist.append(
                    RoadClass.FSegment(item.id, item.description,
                                       segmentCordination))

        othercrossinfo = GetData.getFCrosslist(roadlist, dis, divang)[2]
        for item2 in othercrossinfo:
            fsegmentlist.append(RoadClass.FSegment(
                None, None, item2))  ##定义新加的交点路段描述为None,id为None
        return fsegmentlist