Kreisfläche auf einem Gitter mit euklidischem Abstand ermitteln?

Ich hätte gerne eine Funktion, bei der ich einen Radiuswert eingeben und diese Funktion den Bereich für diesen Größenkreis ausspucken lassen kann. Der Haken ist, dass ich das nur für ganzzahlige Koordinaten machen möchte.

Mir wurde gesagt, woanders nachzuschauenGauß'sches KreisproblemDas scheint genau das zu sein, woran ich interessiert bin, aber ich verstehe die Mathematik dahinter nicht wirklich (vorausgesetzt, sie ist tatsächlich genau, um zu berechnen, was ich will).

Als Randnotiz verwende ich derzeit einen modifizierten Algorithmus zum Zeichnen von Kreisen, der zwar die gewünschten Ergebnisse liefert, aber unglaublich ineffizient erscheint (sowohl der Algorithmus als auch die Art und Weise, wie ich ihn verwende, um die Fläche zu erhalten).

Mögliche Antworten hierfür wären für mich also tatsächlicher Code oder Pseudocode für eine solche Funktion, wenn so etwas existiert oder so etwas wie eine gründliche Erklärung des Gaußschen Kreisproblems und warum es das ist, wonach ich suche.

Die Ergebnisse, von denen ich hoffe, dass die Funktion Folgendes hervorbringt:

Input: Output
0: 1
1: 5
2: 13
3: 29
4: 49
5: 81
6: 113
7: 149
8: 197
9: 253

Antworten auf die Frage(2)

Ihre Antwort auf die Frage