Скрипт предназначен для генерации координат Вершин (Vertex.json) и Рёбер (Edges.json) графа по файлу SVG (сгенерированном в Adobe Illistrator).
- Рёбра представлены списком смежности
Правила:
Вершиной считается circle с [id] {
1. В начале [id] необходимо ставить '#' (этот символ не попадёт в [name] вершины)
2. Далее [name](не должен содержать '')
3. Теперь через '' добавляйте [name] вершин, которые связаны с текущей
[!] >> Для полностью валидного ввода [id] должен содержать любые буквы английского, русского алфавита и только разрешённые знаки (permittedHexSymbols.json), иначе программа предупредит об это (но если соблюдены 3 правила сверху, включит в граф)
}
Примеры:
Ввод SVG:
file.svg:
...
<circle id="#[name][nameNeighboor1]..._[nameNeighboorN]" .../>
...
1. <circle id="#perehod&B&F&2_2074a_toilet&B&2&1_2008" class="st8" cx="211" cy="97" r="6.4"/>
2. <circle id="#2006b_2006a_2003a_2005b" class="st8" cx="583" cy="739.6" r="6.4"/>
3. <circle id="#2003_Переход&Г&1_2003а_2005б" class="st8" cx="583" cy="739.6" r="6.4"/>
Вывод JSON:
Vertex.json:
{
"[name]": {
"housing": "[housing]",
"floor": "[floor]",
"x": "[cX]",
"y": "[cY]"
},
...
}
Edges.json:
{
"[name]": [
"[nameNeighboor1]",
...
"[nameNeighboorN]"
],
...
}
Запуск:
python3 generateOnText.py wayToFileSVG