Changeset 7625 in josm


Ignore:
Timestamp:
2014-10-16T21:10:23+02:00 (10 years ago)
Author:
Don-vip
Message:

see #10615 - update taginfo script to take into account r7621 changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/taginfoextract.groovy

    r7554 r7625  
    77 * groovy -cp dist/josm-custom.jar taginfoextract.groovy
    88 */
    9 
    10 import java.io.BufferedReader
    119import java.awt.image.BufferedImage
     10
    1211import javax.imageio.ImageIO
    1312
    1413import org.openstreetmap.josm.Main
     14import org.openstreetmap.josm.data.Version
    1515import org.openstreetmap.josm.data.coor.LatLon
    1616import org.openstreetmap.josm.data.osm.Node
    1717import org.openstreetmap.josm.data.osm.Way
     18import org.openstreetmap.josm.data.osm.visitor.paint.MapPaintSettings
     19import org.openstreetmap.josm.data.osm.visitor.paint.StyledMapRenderer
    1820import org.openstreetmap.josm.data.projection.Projections
    19 import org.openstreetmap.josm.data.Version
     21import org.openstreetmap.josm.gui.NavigatableComponent
    2022import org.openstreetmap.josm.gui.mappaint.AreaElemStyle
    21 import org.openstreetmap.josm.gui.mappaint.Cascade
    2223import org.openstreetmap.josm.gui.mappaint.Environment
    2324import org.openstreetmap.josm.gui.mappaint.LineElemStyle
     25import org.openstreetmap.josm.gui.mappaint.MultiCascade
     26import org.openstreetmap.josm.gui.mappaint.MapPaintStyles.IconReference
     27import org.openstreetmap.josm.gui.mappaint.mapcss.MapCSSStyleSource
    2428import org.openstreetmap.josm.gui.mappaint.mapcss.Condition.SimpleKeyValueCondition
    25 import org.openstreetmap.josm.gui.mappaint.mapcss.MapCSSStyleSource
     29import org.openstreetmap.josm.gui.mappaint.mapcss.Selector.GeneralSelector
    2630import org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.MapCSSParser
    27 import org.openstreetmap.josm.gui.mappaint.mapcss.Selector.GeneralSelector
    28 import org.openstreetmap.josm.gui.mappaint.MapPaintStyles.IconReference
    29 import org.openstreetmap.josm.gui.mappaint.MultiCascade
    3031import org.openstreetmap.josm.io.CachedFile
    3132
    32 import org.openstreetmap.josm.gui.NavigatableComponent
    33 import org.openstreetmap.josm.data.osm.visitor.paint.StyledMapRenderer
    34 import org.openstreetmap.josm.data.Bounds
    35 //import org.openstreetmap.josm.data.osm.DataSet
    36 import org.openstreetmap.josm.data.osm.visitor.paint.MapPaintSettings
    37 
    3833class taginfoextract {
    39    
     34
    4035    static def options
    4136    static String image_dir
     
    4641    def base_dir = "."
    4742    def tags = [] as Set
    48    
     43
    4944    private def cached_svnrev
    5045
     
    5348     */
    5449    abstract class Checker {
    55        
     50
    5651        def tag
    5752        def osm
    58        
     53
    5954        Checker(tag) {
    6055            this.tag = tag
    6156        }
    62        
     57
    6358        def apply_stylesheet(osm) {
    6459            osm.put(tag[0], tag[1])
    6560            def mc = new MultiCascade()
    66            
     61
    6762            def env = new Environment(osm, mc, null, style_source)
    6863            for (def r in style_source.rules) {
     
    8075            return env
    8176        }
    82        
     77
    8378        /**
    8479         * Determine full image url (can refer to JOSM or OSM repository).
     
    10095         * Create image file from ElemStyle.
    10196         * @return the URL
    102          */       
     97         */
    10398        def create_image(elem_style, type, nc) {
    10499            def img = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB)
     
    107102            def renderer = new StyledMapRenderer(g, nc, false)
    108103            renderer.getSettings(false)
    109             elem_style.paintPrimitive(osm, MapPaintSettings.INSTANCE, renderer, false, false)
     104            elem_style.paintPrimitive(osm, MapPaintSettings.INSTANCE, renderer, false, false, false)
    110105            def base_url = options.imgurlprefix ? options.imgurlprefix : image_dir
    111106            def image_name = "${type}_${tag[0]}=${tag[1]}.png"
     
    234229        }
    235230    }
    236    
     231
    237232    void run() {
    238233        init()
     
    280275                }
    281276            }
    282            
     277
    283278            output """${sep}    {
    284279                     |      "key": "${tag[0]}",
     
    294289            }
    295290            sep = ",\n"
    296         }   
     291        }
    297292        output """
    298293        |  ]
     
    343338            xml = "svn info --xml ${base_dir}/images/styles/standard/".execute().text
    344339        }
    345        
     340
    346341        def svninfo = new XmlParser().parseText(xml)
    347342        def rev = svninfo.entry.'@revision'[0]
     
    350345        return cached_svnrev
    351346    }
    352    
     347
    353348    /**
    354349     * Read the style sheet file and parse the MapCSS code.
     
    362357        parser.sheet(style_source)
    363358    }
    364    
     359
    365360    /**
    366361     * Collect all the tag from the style sheet.
     
    382377    /**
    383378     * Write the JSON output (either to file or to command line).
    384      */   
     379     */
    385380    def output(x) {
    386381        if (output_file != null) {
     
    398393        System.err.print(s);
    399394    }
    400    
     395
    401396}
    402397
Note: See TracChangeset for help on using the changeset viewer.