2010-09-02 2 views
1

Я собираюсь приступить к проекту, который будет включать приложение GUI, которое должно будет отображать интерфейс карты, сгенерированный из глобального кеша плитки карты (на локальном диске) на разных уровнях масштабирования.отображение плиточной карты в Gtk + app

Приложение будет написано с использованием Gtk, и, хотя я довольно хорошо знаком с основными виджетами Gtk, я не уверен, как подойти к компоненту интерфейса карты. Существуют различные виджеты, которые выглядят так, будто они могут быть хорошим началом (фреймы, макеты, видовые экраны), но я хотел бы знать, как другие могут подойти к одной и той же проблеме.

Некоторые конкретные аспекты, которые я хотел бы получить по телефону:
- Возможно ли иметь изображение (скажем, 1000x1000), но отображать только раздел (скажем, 500x500) в интерфейсе? Идея здесь заключается в том, что недостающие фрагменты могут быть добавлены к скрытой части изображения при прокрутке карты, поэтому нет видимых недостающих фрагментов.
- Возможность прокрутки карты с помощью мыши, чтобы захватить и перетащить изображение.
- Возможность рисовать интерактивные наложения на карте. Например. маленькая иконка, обозначающая метку места, которая реагирует на всплывающие подсказки и события кнопки мыши.

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

Приветствия

ответ

1

Я сделал это, но в коде, который я не могу поделиться. В моей текущей реализации используется модифицированный геок (http://geocanvas.sourceforge.net/geoc/index.html), SqlLite с Spatialite и GDAL. Есть что-то, называемое champlain, которое может работать для вашей ситуации, но это использует Clutter.

+0

Спасибо за предложения. Мой проект, вероятно, будет использовать Perl/Gtk, поэтому я не буду использовать Geocanvas напрямую (это, кажется, все python), но он должен дать некоторые хорошие идеи. – aaa90210

+0

У него есть привязки python, но он написан на C. – Rubinium

+0

Хммм. Интересно, как я с ума схожу с тем, что буду писать привязки Perl для него ... но он действительно очень похож на то, что я хочу. – aaa90210

Смежные вопросы