def geneKML_no_leaf(self, col_Tokyo_tree, col_map, col_Tokyo_tree_node, file_name=r'Tokyo.kmz'): fkml = open(file_name, 'w') paint = ITDKkml(fkml) paint.setting_line(line_color='cc00ff00', line_width=0.8) paint.setting_point( icon_path= 'http://maps.google.com/mapfiles/kml/shapes/shaded_dot.png', point_scale=0.4, point_color='ff00ffff') paint.head() paint.setting_line(line_color='cc0000ff', line_width=1.7) paint.setting_point( icon_path= 'http://maps.google.com/mapfiles/kml/shapes/placemark_circle.png', point_scale=1, point_color='cc0000ff') for edge in col_Tokyo_tree.find(): start_edge = col_map.find_one({'node_id': edge['start']}) end_edge = col_map.find_one({'node_id': edge['end']}) if start_edge['in'] and end_edge['in']: s = col_Tokyo_tree_node.find_one({'node_id': edge['start']}) e = col_Tokyo_tree_node.find_one({'node_id': edge['end']}) #这种方法会使叶子节点父节点多次绘制 if s['connect'] == [] or e['connect'] == []: paint.draw_edge(start=start_edge['new'], end=end_edge['new']) else: paint.draw_orig_edge(start=start_edge['new'], end=end_edge['new']) for node in col_map.find(): if node['in']: docu = col_Tokyo_tree_node.find_one( {'node_id': node['node_id']}) if len(docu['connect']) < 5: paint.draw_point2(longitude=node['new']['longitude'], latitude=node['new']['latitude']) else: paint.draw_orig_point(longitude=node['new']['longitude'], latitude=node['new']['latitude']) pass paint.tail() fkml.close()
fkml = open(file_name, 'w') paint = ITDKkml(fkml) paint.setting_line(line_color='cc00ff00', line_width=0.8) paint.setting_point( icon_path='http://maps.google.com/mapfiles/kml/shapes/shaded_dot.png', point_scale=0.4, point_color='ff00ffff') paint.head() polygon_point_num = len(polygon) i = 0 while i < polygon_point_num - 1: paint.draw_edge(start=polygon[i], end=polygon[i + 1]) i = i + 1 paint.draw_edge(start=polygon[polygon_point_num - 1], end=polygon[0]) for node in point_original: paint.draw_orig_point(longitude=node[0], latitude=node[1]) for e in edge: paint.draw_edge(start={'longitude':point_original[e[0]-1][0],'latitude':point_original[e[0]-1][1]},\ end={'longitude':point_original[e[1]-1][0],'latitude':point_original[e[1]-1][1]}) paint.tail() fkml.close() #开始处理 point_new = [[0.2, 0.7], [0.5, 1], [0.7, 0.2], [0.8, 0.6], [1.3, 0.3], [1.4, 0.9], [1.1, 1.1], [1.6, 0.4], [1.7, 0.7], [1.6, 1.2], [2, 1.1]] center_x = 0 center_y = 0 i = 0 for node in point_original: center_x = center_x + node[0] center_y = center_y + node[1]
'华中科大': [114.2734, 30.5801], '中科大': [117.2808, 31.8639] } point_edge = [[104.058986, 30.676235], [120.161519, 30.295558], [121.468973, 31.232382], [116.391464, 39.903152], [116.391464, 39.903152], [116.391464, 39.903152], [116.391464, 39.903152], [113.295827, 23.116548], [106.547819, 29.565937], [114.304197, 30.577806], [117.270667, 31.863063]] filename_KML = './教育科研网_测量点.kml' f = open(filename_KML, 'w') paint = ITDKkml(f) #paint.setting_line(line_hight_start=40000,line_hight_end=40000,line_width=5) #paint.setting_point(icon_path='juanjo_Router.png',point_hight=80000,point_scale=0.5) paint.head() i = 0 for node in point: print(point[node]) paint.draw_orig_point(longitude=point[node][0], latitude=point[node][1]) paint.draw_edge(start={ 'longitude': point[node][0], 'latitude': point[node][1] }, end={ 'longitude': point_edge[i][0], 'latitude': point_edge[i][1] }) i += 1 paint.tail() f.close()
#-*- coding:utf-8 -*- import pymongo from Tokyo_logistic_topo.kml_tool import ITDKkml from Tokyo_logistic_topo.Tokyo_logic import TokyoTopo client = pymongo.MongoClient() col_edge_degree = client['教育科研网']['node']#边 filename_KML = './教育科研网_点.kml' f=open(filename_KML,'w') paint = ITDKkml(f) #paint.setting_line(line_hight_start=40000,line_hight_end=40000,line_width=5) #paint.setting_point(icon_path='juanjo_Router.png',point_hight=80000,point_scale=0.5) paint.head() for node in col_edge_degree.find(): paint.draw_orig_point(longitude=node['longitude'],latitude=node['latitude']) paint.tail() f.close()