Ticket #17034: Power_connection.patch

File Power_connection.patch, 14.5 KB (added by gaben, 3 years ago)

first idea

  • resources/data/defaultpresets.xml

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
    diff --git a/resources/data/defaultpresets.xml b/resources/data/defaultpresets.xml
    a b  
    68026802            <combo key="line_management" text="Line management" values="branch,cross,split,straight,termination,transition,transpose" values_context="Line management" />
    68036803            <reference ref="ref_operator" />
    68046804        </item> <!-- Insulator -->
     6805        <item name="Power connection" icon="presets/power/connection.svg" type="node" preset_name_label="true">
     6806            <link wiki="Tag:power=connection" />
     6807            <space />
     6808            <label text="The tag is used for a freestanding electrical connection between two or more overhead wires" />
     6809            <space />
     6810            <key key="power" value="connection" />
     6811            <reference ref="ref_operator" />
     6812            <!-- Or simple ref without operator -->
     6813            <!-- <text key="ref" text="Reference" /> -->
     6814            <reference ref="cables" />
     6815        </item> <!-- Power connection -->
    68056816        <item name="Power Line" icon="presets/power/line.svg" type="way" preset_name_label="true">
    68066817            <link wiki="Tag:power=line" />
    68076818            <space />
  • new file resources/images/presets/power/connection.svg

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
    diff --git a/resources/images/presets/power/connection.svg b/resources/images/presets/power/connection.svg
    new file mode 100644
    - +  
     1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
     2<!-- Created with Inkscape (http://www.inkscape.org/) -->
     3
     4<svg
     5        xmlns:dc="http://purl.org/dc/elements/1.1/"
     6        xmlns:cc="http://creativecommons.org/ns#"
     7        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     8        xmlns:svg="http://www.w3.org/2000/svg"
     9        xmlns="http://www.w3.org/2000/svg"
     10        xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
     11        xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
     12        width="16"
     13        height="16"
     14        viewBox="0 0 16 16"
     15        id="svg4264"
     16        version="1.1"
     17        inkscape:version="0.92.3 (2405546, 2018-03-11)"
     18        sodipodi:docname="connection43.svg">
     19    <defs
     20            id="defs4266">
     21        <marker
     22                inkscape:stockid="EmptyTriangleInL"
     23                orient="auto"
     24                refY="0"
     25                refX="0"
     26                id="EmptyTriangleInL"
     27                style="overflow:visible"
     28                inkscape:isstock="true">
     29            <path
     30                    id="path4298"
     31                    d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
     32                    style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
     33                    transform="matrix(-0.8,0,0,-0.8,4.8,0)"
     34                    inkscape:connector-curvature="0" />
     35        </marker>
     36        <marker
     37                inkscape:stockid="Arrow1Lstart"
     38                orient="auto"
     39                refY="0"
     40                refX="0"
     41                id="marker4778"
     42                style="overflow:visible"
     43                inkscape:isstock="true">
     44            <path
     45                    id="path4780"
     46                    d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
     47                    style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
     48                    transform="matrix(0.8,0,0,0.8,10,0)"
     49                    inkscape:connector-curvature="0" />
     50        </marker>
     51        <marker
     52                inkscape:stockid="Arrow1Lstart"
     53                orient="auto"
     54                refY="0"
     55                refX="0"
     56                id="marker4657"
     57                style="overflow:visible"
     58                inkscape:isstock="true">
     59            <path
     60                    id="path4659"
     61                    d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
     62                    style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
     63                    transform="matrix(0.8,0,0,0.8,10,0)"
     64                    inkscape:connector-curvature="0" />
     65        </marker>
     66        <marker
     67                style="overflow:visible"
     68                inkscape:stockid="InfiniteLineStart"
     69                id="InfiniteLineStart"
     70                refX="0"
     71                refY="0"
     72                orient="auto"
     73                inkscape:isstock="true">
     74            <g
     75                    id="g4391"
     76                    style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1"
     77                    transform="translate(-13,0)">
     78                <circle
     79                        id="circle4393"
     80                        r="0.80000001"
     81                        cy="0"
     82                        cx="3"
     83                        style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1" />
     84                <circle
     85                        id="circle4395"
     86                        r="0.80000001"
     87                        cy="0"
     88                        cx="6.5"
     89                        style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1" />
     90                <circle
     91                        id="circle4397"
     92                        r="0.80000001"
     93                        cy="0"
     94                        cx="10"
     95                        style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1" />
     96            </g>
     97        </marker>
     98        <marker
     99                inkscape:stockid="Arrow2Lstart"
     100                orient="auto"
     101                refY="0"
     102                refX="0"
     103                id="Arrow2Lstart"
     104                style="overflow:visible"
     105                inkscape:isstock="true">
     106            <path
     107                    id="path4165"
     108                    style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
     109                    d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
     110                    transform="matrix(1.1,0,0,1.1,1.1,0)"
     111                    inkscape:connector-curvature="0" />
     112        </marker>
     113        <marker
     114                inkscape:stockid="Arrow1Mstart"
     115                orient="auto"
     116                refY="0"
     117                refX="0"
     118                id="Arrow1Mstart"
     119                style="overflow:visible"
     120                inkscape:isstock="true">
     121            <path
     122                    id="path4153"
     123                    d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
     124                    style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
     125                    transform="matrix(0.4,0,0,0.4,4,0)"
     126                    inkscape:connector-curvature="0" />
     127        </marker>
     128        <marker
     129                inkscape:stockid="Arrow1Lstart"
     130                orient="auto"
     131                refY="0"
     132                refX="0"
     133                id="Arrow1Lstart"
     134                style="overflow:visible"
     135                inkscape:isstock="true">
     136            <path
     137                    id="path4147"
     138                    d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
     139                    style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
     140                    transform="matrix(0.8,0,0,0.8,10,0)"
     141                    inkscape:connector-curvature="0" />
     142        </marker>
     143    </defs>
     144    <sodipodi:namedview
     145            id="base"
     146            pagecolor="#ffffff"
     147            bordercolor="#666666"
     148            borderopacity="1.0"
     149            inkscape:pageopacity="0.0"
     150            inkscape:pageshadow="2"
     151            inkscape:zoom="32"
     152            inkscape:cx="5.8462"
     153            inkscape:cy="5.134108"
     154            inkscape:document-units="px"
     155            inkscape:current-layer="layer1"
     156            showgrid="false"
     157            units="px"
     158            inkscape:snap-bbox="true"
     159            inkscape:bbox-paths="true"
     160            inkscape:bbox-nodes="true"
     161            inkscape:snap-bbox-edge-midpoints="true"
     162            inkscape:snap-bbox-midpoints="true"
     163            inkscape:snap-global="true"
     164            inkscape:object-paths="true"
     165            inkscape:snap-intersection-paths="true"
     166            inkscape:object-nodes="true"
     167            inkscape:snap-smooth-nodes="true"
     168            inkscape:snap-midpoints="true"
     169            inkscape:snap-object-midpoints="true"
     170            inkscape:snap-center="true"
     171            inkscape:snap-nodes="true"
     172            inkscape:snap-others="true"
     173            inkscape:snap-page="true"
     174            showguides="true"
     175            inkscape:guide-bbox="true"
     176            inkscape:snap-grids="true"
     177            inkscape:window-width="1680"
     178            inkscape:window-height="987"
     179            inkscape:window-x="-8"
     180            inkscape:window-y="-8"
     181            inkscape:window-maximized="1">
     182        <inkscape:grid
     183                type="xygrid"
     184                id="grid4137" />
     185    </sodipodi:namedview>
     186    <metadata
     187            id="metadata4269">
     188        <rdf:RDF>
     189            <cc:Work
     190                    rdf:about="">
     191                <dc:format>image/svg+xml</dc:format>
     192                <dc:type
     193                        rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
     194                <dc:title></dc:title>
     195                <cc:license
     196                        rdf:resource="http://creativecommons.org/publicdomain/zero/1.0/" />
     197            </cc:Work>
     198            <cc:License
     199                    rdf:about="http://creativecommons.org/publicdomain/zero/1.0/">
     200                <cc:permits
     201                        rdf:resource="http://creativecommons.org/ns#Reproduction" />
     202                <cc:permits
     203                        rdf:resource="http://creativecommons.org/ns#Distribution" />
     204                <cc:permits
     205                        rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
     206            </cc:License>
     207        </rdf:RDF>
     208    </metadata>
     209    <g
     210            inkscape:label="Camada 1"
     211            inkscape:groupmode="layer"
     212            id="layer1"
     213            transform="translate(0,-1036.3621)">
     214        <rect
     215                style="opacity:1;fill:#ffcc00;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
     216                id="rect4288"
     217                width="16"
     218                height="16"
     219                x="0"
     220                y="1036.3621" />
     221        <g
     222                id="g3382-9"
     223                transform="matrix(0,0.15384648,-0.35461025,0,155.24126,1020.1082)"
     224                style="fill:#000000;fill-opacity:1" />
     225        <path
     226                style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8944273px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     227                d="m 5.5000007,1038.3621 c -0.020897,3.4518 0.068411,8.7353 0.7174012,10.9985 0.7485548,2.6104 5.3926701,2.7624 4.2825981,-3.4985"
     228                id="path4226"
     229                inkscape:connector-curvature="0"
     230                sodipodi:nodetypes="csc" />
     231        <path
     232                style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     233                d="M 0,1038.8621 H 16"
     234                id="path4230"
     235                inkscape:connector-curvature="0"
     236                sodipodi:nodetypes="cc" />
     237        <circle
     238                style="opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
     239                id="path4238"
     240                cx="5.499999"
     241                cy="1038.8621"
     242                r="1.5" />
     243        <circle
     244                r="1.5"
     245                cy="1045.8621"
     246                cx="10.5"
     247                id="circle4240"
     248                style="opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
     249        <path
     250                style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
     251                d="M 0,1045.8621 H 16"
     252                id="path4230-7"
     253                inkscape:connector-curvature="0"
     254                sodipodi:nodetypes="cc" />
     255    </g>
     256</svg>
  • resources/styles/standard/elemstyles.mapcss

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
    diff --git a/resources/styles/standard/elemstyles.mapcss b/resources/styles/standard/elemstyles.mapcss
    a b  
    12691269    icon-image: "presets/power/insulator.svg";
    12701270    set icon_z17;
    12711271}
     1272node[power=connection] {
     1273    icon-image: "presets/power/connection.svg";
     1274    set icon_z17;
     1275}
    12721276way[power=portal],
    12731277way[power=line],
    12741278way[power=minor_line] {
  • src/org/openstreetmap/josm/data/validation/tests/PowerLines.java

    IDEA additional info:
    Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
    <+>UTF-8
    diff --git a/src/org/openstreetmap/josm/data/validation/tests/PowerLines.java b/src/org/openstreetmap/josm/data/validation/tests/PowerLines.java
    a b  
    4444    static final Collection<String> BUILDING_STATION_TAGS = Arrays.asList("transformer_tower");
    4545    /** Values for {@code power} key interpreted as allowed power items */
    4646    static final Collection<String> POWER_ALLOWED_TAGS = Arrays.asList("switch", "transformer", "busbar", "generator", "switchgear",
    47             "portal", "terminal", "insulator");
     47            "portal", "terminal", "insulator", "connection");
    4848
    4949    private final Set<Node> badConnections = new LinkedHashSet<>();
    5050    private final Set<Node> missingTowerOrPole = new LinkedHashSet<>();