文章の文字を最小限の領域に並べ替えるプログラムを書きます。このアプリを作成するツールは重要ではありません。問題は、これを行う方法がほとんどわからないことです。
私はこのようなものが欲しい:
いくつかのサーフェス (各文字をポリゴン サーフェスと仮定しましょう) を最小限の領域で並べ替えるアルゴリズムはありますか?
文章の文字を最小限の領域に並べ替えるプログラムを書きます。このアプリを作成するツールは重要ではありません。問題は、これを行う方法がほとんどわからないことです。
私はこのようなものが欲しい:
いくつかのサーフェス (各文字をポリゴン サーフェスと仮定しましょう) を最小限の領域で並べ替えるアルゴリズムはありますか?
このホワイトペーパーでは、美しいタグ クラウドを作成するためのツールである Wordle についての洞察を見つけることができます。ビン パッキング問題のランダム化された貪欲なアルゴリズムの近似を行います。
このようなアルゴリズムに対する私のアプローチは、遺伝的なものになります。これは、Java のサンプル データ構造サンプルになります。
public class Individual{
char letter;
double x;
double y;
double rotation;
}
public class Population{
private Individual[] individuals;
public Population(String s) {
individuals = new Individual[s.length()];
for(int i = 0; i < s.length(); i++ {
Individual individual = new Individual();
individual.letter = s.charAt(i);
// set random x, y, and rotation;
individuals[i] = individual;
}
}
// Calculate Fitness: (1/Totalspace needed ) - Overlapping Space
// Envolve Population
}