def osmSaxReader(path, features): parser = xml.sax.make_parser() # 创建一个 XMLReader parser.setFeature(xml.sax.handler.feature_namespaces, 0) # turn off namepsaces ?????? Handler = osmHandler(features) # 重写 ContextHandler parser.setContentHandler(Handler) parser.parse(path) for p in Handler.dicOfRelations.itervalues(): # 这里要学习迭代遍历dic的方法 tmplist = Handler.parseRelations(p) # pprint.pprint(tmplist) # assemList = Handler.nodeAssembly(tmplist) # 装配“描绘点集” # if res: # print "not all member found!" # else: # print "Find all members!" actor = visu.getlsactor(tmplist) visu.showact(actor) # if Handler.gotObject: # actor = visu.getlsactor(Handler.noTypebdSets) # visu.showact(actor) # # for b in Handler.bdSets: # # actor = visu.getlsactor(b) # # visu.showact2(actor) # else: # print "未找到目标设施数据" pass
return None pass if __name__ == '__main__': # tmplist = [1, 2, 3, 4, 5, 6] # tmp = tmplist.append([]) # print tmplist # print [[p,V] for p, V in tmplist ] import visu handler = osmdbOperation("osmdb.db") # tmplist = handler.Readrelationsfromdb("200257") # # handler.Readwaysfromdb('28771749') # actor = visu.getlsactor(tmplist) # visu.showact(actor) ID = '200257' query = 'SELECT id FROM relations' # WHERE id = %s' % ID handler.curs.execute(query) tmplist = handler.curs.fetchall() for p in tmplist: try: q = handler.Readrelationsfromdb(p) actor = visu.getlsactor(q) visu.showact(actor) except TypeError, e: # print e continue pass
ls.append(l) pass # draw.line((x1,y1, x2,y2), fill=128) #im.show() #im.save(out) print len(ls), ls[:10] #visulines(ls[:20]) #print nodes print elenum return visu.getlsactor(ls) if __name__ == '__main__': print 'ss' path = "../../lidar_asc/TQ37" a1 = getASC(path) gl = '/home/wlw/K40/osm/greater-london-latest.osm' a2 = drawOSM('../lidar/t2.osm') a3 = drawOSM('../lidar/t3.osm') a4 = drawOSM('../lidar/t5.osm') a6 = drawOSM('../lidar/t6.osm') a7 = drawOSM('../lidar/t7.osm') a8 = drawOSM('../lidar/t8.osm') a9 = drawOSM('../lidar/t9.osm') #a3 = drawOSM(gl) visu.showact([a1, a6, a7, a8, a9])