def generate_styles(doc): colors = [ 'ffd18802', 'ff2f8b55', 'ff00d6ff', 'ff1427a5', 'ff7e231a', 'ff2f8b55', ] for idx, color in enumerate(colors): styles[idx + 1] = [] for i in range(0, 19): color_id = '{}{}{}'.format(color[6:8], color[4:6], color[2:4]).capitalize() style_normal = KML.Style(KML.IconStyle( KML.scale(1.0), KML.color(color), KML.Icon(KML.href("images/icon-{}.png".format(i + 1)), ), ), KML.LabelStyle(KML.scale(0.0)), KML.BallonStyle(KML.text('FIXME')), id="icon-seq2-{}-{}-{}-normal".format( i, idx, color_id)) doc.append(style_normal) #styles.append(style_normal.get('id')) style_highlight = KML.Style( KML.IconStyle( KML.scale(1.0), KML.color(color), KML.Icon(KML.href("images/icon-{}.png".format(i + 1)), ), ), KML.LabelStyle(KML.scale(1.0)), KML.BallonStyle(KML.text('FIXME')), id="icon-seq2-{}-{}-{}-highlight".format(i, idx, color_id)) doc.append(style_highlight) style_map = KML.StyleMap( KML.Pair( KML.key('normal'), KML.styleUrl('#{}'.format(style_normal.get('id'))), ), KML.Pair( KML.key('highlight'), KML.styleUrl('#{}'.format(style_highlight.get('id'))), ), id="icon-seq2-{}-{}-{}".format(i, idx, color_id)) doc.append(style_map) styles[idx + 1].append(style_map.get('id')) return doc