Библиотека гиперболической тесселяции Java - PullRequest
6 голосов
/ 30 января 2011

Мне было интересно, знает ли кто-нибудь хорошую библиотеку для тесселяции гиперболической плоскости полигонами (мой основной интерес заключается в тесселяции {8,3}).Я нашел некоторые апплеты здесь и там, но отделение логики от взгляда ужасно во всех из них.Было бы идеально, если бы была библиотека, которая вообще не работает с графикой (так как я НЕ планирую использовать Swing или создаю свой собственный апплет), просто принимает параметры: {p, q} и количество слоев, а затем возвращаетмассив линий или точек (или многоугольников).Если худшее приходит к худшему, мне придется реализовать свою собственную библиотеку, поэтому, возможно, будет полезно, если кто-то знает какую-то статью, в которой подробно описан алгоритм тесселяции.Кстати, я должен был упомянуть, что нашел классный апплет гиперболического тесселяции Дона Хэтча и сначала был взволнован.Затем я посмотрел на то, что он называет исходным кодом .Внутри JAR я обнаружил файлы с расширением .prejava и совершенно не представлял, на что смотрю - это был ужасный гибрид кода на Java и C.При попытке более тщательного осмотра я сразу же получил головную боль.Видимо, он пытался оптимизировать компилятор Java ... или, по крайней мере, это то, что я понял, посмотрев на содержимое javacpp.Излишне говорить, что я крайне не решаюсь тратить время на следование его инструкциям, чтобы сгенерировать исходные файлы Java с помощью компилятора C, вау ...

Ответы [ 3 ]

3 голосов
/ 30 января 2011

Есть апплет на http://aleph0.clarku.edu/~djoyce/poincare/PoincareApplet.html. Возможно, вы можете прочитать код.

2 голосов
/ 08 февраля 2011

это может быть немного не по теме, я также ищу чистую, слабо связанную реализацию гиперболических тесселяций.Я нашел эту прямую реализацию модели пуанкаре диска http://haishibai.blogspot.com/2010/07/draw-hyperbolic-geometry-poincare-disc.html

Я также нашел эту статью, в которой есть некоторый псевдокод http://www.d.umn.edu/cs/thesis/ajit_datar_ms.pdf

, в котором говорится о доступном исходном коде: hyperart http://sourceforge.net/projects/hyperart/ но это скомпилированный exe без исходного кода.

0 голосов
/ 06 июля 2013

Также посмотрите апплет Тайлер , который мы с Доном написали.Установите флажок «Гиперболический», затем введите «8,8,8» в поле «Кривизна на основе».Вы также захотите выбрать переключатель «8» справа, чтобы каждый щелчок добавлял восьмиугольник к краю, ближайшему к указателю мыши.Вы также можете нажать цифровую клавишу, чтобы вставить полигоны с таким количеством сторон.Прочитайте инструкции, и вы быстро сможете построить практически любой вид плитки, какой только сможете вообразить.Это может быть все, что вам нужно, но полный исходный код также доступен на этой странице и без предварительной обработки.

...