образец или минимальный пример облака тегов в переполнении стека

Я получил проект Tagcloud на C ++, из моего университета. Я много гуглил, чтобы найти базовую версию Tagcloud. Но все есть в .net / java. Не возможно сделать Tagcloud в с ++? Мне не удалось найти какой-либо минимальный пример C ++ в Интернете.

  1. Возможность сделать TagCloud в C ++?
  2. Любое место, чтобы найти минимальный / базовый пример кода, чтобы сделать облако тегов в C ++?

Да, это плохо, чтобы спросить минимальный рабочий пример. Но я не смог найти ничего.

-1

Решение

Это звучит как домашнее задание, но я укушу …

  1. Прикрепите графический рендерер C ++, который вы будете использовать. OpenGL выполним, но имеет сложную кривую обучения, но также дает вам возможность (в некоторой степени) кросс-платформенной совместимости с помощью таких проектов, как Угол. Просто помните, что «дьявол кроется в деталях», когда рендеринг текста в C ++ и только текстовый рендеринг — это забавная задача. Если вы решите ограничить свою поддержку, скажем, Windows, существует множество примеров использования C ++ для рисования текста. Посмотреть здесь

  2. Если TagCloud (также называемый WordCloud) будет интерактивным, выберите простую абстракцию пользовательского ввода, которая дополняет ваш выбор рендеринга, и проведите множество «хитовых» тестов, чтобы убедиться, что вы отображаете входные данные из «экранного пространства» в «мировое пространство» правильно (также весело на всех устройствах).

  3. Как только эти части на месте (только после шагов 1 и 2), исследуйте алгоритмы в Интернете и исследуйте другие общедоступные работы, которые вдохновят вас на интерактивную доску. На этом этапе проблема сводится к простой области и задаче двухмерных столкновений (столкновения, являющиеся «словом», перекрываются в вашем случае).

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

Облако слов поколения

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

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]