Comments (1)
Нет, к сожалению сейчас такой возможности нет.
В общем случае задача "красивого" отображения графов на плоскости шибко нетривиальна, и, упрощённо выражаясь, вовсе нерешаема (есть масса более или менее субъективно приемлемых алгоритмов, ни один из которых не идеален). Не вижу смысла в эту сторону даже начинать копать.
Альтернативно можно было бы рассмотреть варианты "полумер":
- ручное редактирование "длин переходов" между конкретными комнатами (сейчас понятие "длины перехода" жёстко привязано к команде (север, восток, ...)); трудоёмкость реализации невелика, но пользоваться этим по-моему будет муторно, разве только в каких-то совсем простых случаях;
- придумать какие-то правила, по которым "растягивание" переходов происходило бы автоматически в наиболее распространённых ситуациях и давало бы ожидаемый и понятный результат; лично я затрудняюсь сходу сформулировать их.
Оставим за скобками всякие лабиринты, трёхмерные бутылки Клейна и прочие изыски; вот простейший рядовой умозрительный пример: домик 3х3 клетки посреди поля, в абсолютном большинстве случаев это будет что-то такое:
. . .
| | |
...--O---O---O--...
| |
| O-O-O |
| | | | |
...--O O-O-O O--...
| | | | |
| O-O-O |
| | |
...--O---O---O--...
| | |
. . .
Теперь вопросы:
- если отойти от дома подальше в поле, клетки поля должны оставаться друг от друга на столь же большом расстоянии? Видимо, нет, иначе бы все клетки поля должны были бы растягиваться до размеров максимально большого "домика" на этом поле, при этом "маленькие домики" смотрелись бы странно внутри большой пустой клетки. Можно попробовать изобразить рядом с домиком 3х3 по соседству 1х1. А если поле должно автоматически сужаться-расширяться в зависимости от удаления-приближения к какому-либо "домику", то это будет выглядеть плохо, на мой вкус, я пробовал: глазу трудно воспринимать постоянное перемасштабирование карты, к тому же происходящее дискретно, а не непрерывно, трудно сопоставлять комнаты друг с другом;
- а что если домик какой-то более "сложный", скажем, башня с балконами или большим подвалом?
- а если отказаться от идеи изображать дом одновременно с полем (только обозначать вход в дом), то будет ли это удобно -- стоять у входной двери и не видеть на карте того, что за ней?
from jmc.
Related Issues (20)
- Can't remove tabadd messages HOT 2
- ToText(ansi), ToColored(ansi), FromColored(colored) are not there HOT 5
- Не получается прикрепить дополнительные окна вывода к основному HOT 2
- Feature Request: Add #userinput command to control user input setting HOT 5
- Проблема с промоткой (scrolling) HOT 1
- Bug in logging previous lines HOT 3
- Триггеры. Непонятное поведение
- #wlog доработка
- Возможность выбора цвета иконки жабы в трее!
- jmc.DropEvent() не работает или работает некорректно HOT 2
- Support 256 ANSI colors HOT 12
- #unaction does not work for regexp actions HOT 2
- https://nerevar.github.io/jmc доступ к редактированию документации? HOT 1
- Status cells/onClick actions HOT 17
- Add more status cells HOT 3
- Python scripting support HOT 2
- #wait не корректно работает? HOT 1
- запись *.log файла HOT 1
- Окантовка окон, толщина полосы прокрутки и прозвольная окраска окон статуса HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jmc.