Алгоритм генерации карты проезда метро - PullRequest
2 голосов
/ 09 января 2020

Я хотел бы нарисовать карту транзита , которая не основана ни на какой реальной карте.

В отличие от обычных карт, карты транзита обычно не являются географически точными - вместо этого они используют прямые линии и фиксированные углы, и часто иллюстрируют фиксированное расстояние между станциями, сжимая те во внешней области системы и расширяя те близко к центру.

Эта карта была бы массивной, не бесконечной, но если линия проходит горизонтально, в идеале может быть 40 075 станций. Я хочу, чтобы она выглядела так же, как любая карта местного транзита (я основываюсь на карте метро Монреаля ), но намного больше, очевидно, что означает, что мне все равно, что должна делать система метро такого масштаба Как выглядит или насколько бесполезна карта такого размера.

Я думаю, что самая сложная часть будет состоять в том, чтобы генерировать, где будут находиться станции, тогда рисование стилизованных линий между этими станциями должно быть относительно простым с использованием чего-то вроде Обработки.

Итак, у вас есть какие-либо идеи как создать гигантскую карту транзита ???

Пока что исследование

Генератор карт метро Nathan Hellinga Processing.py напоминает то, что я ищу, и выглядит великолепно, но алгоритм не будет хорошо масштабироваться до очень большая сетка.

Теория генерирования транзитной карты Янниса Редманна действительно интересна, но основывается на данных реального мира. Может быть, его можно использовать с сгенерированными данными, но как вы тогда сгенерируете эти данные?

Моя идея, случайный бродяга

В основном, бросьте несколько кубиков и на основе предопределенный набор правил: go вперед, разместите станцию, поверните ... и повторяйте бесчисленное количество раз, пока карта не будет заполнена. Я еще не уверен, что вероятности были бы, это потребовало бы некоторого метода проб и ошибок.

Результаты еще один вопрос, который я задал по Worldbuilding

Fractal генераторы действительно многообещающие! Но как мне сделать так, чтобы это выглядело как карта транзита? Я думаю, что это относится к slime (см. Ниже), поэтому я рассмотрю его подробнее.

Graphviz , инструмент с открытым исходным кодом, который конвертирует файлы сценариев DOT в графические изображения. Я думаю, что это та же проблема, что и у Яниса Редманна, мне все еще нужен алгоритм для генерации данных.

Слизь - это действительно интересная идея! Мне бы пришлось провести еще несколько исследований о том, как воспроизвести эти шаблоны, но это интересное место для начала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...