Indexation de grille Morton
Entrelacez deux coordonnées entières positives ou nulles dans un indice Morton de largeur déclarée.
def morton2(x, y, bits):
if type(bits) is not int or not 1 <= bits <= 16:
raise ValueError("bits.range")
if any(type(v) is not int or not 0 <= v < (1 << bits)
for v in (x, y)):
raise ValueError("coordinate.range")
result = 0
for i in range(bits):
result |= ((x >> i) & 1) << (2 * i)
result |= ((y >> i) & 1) << (2 * i + 1)
return result- Projet
- Testez les coins et la largeur maximale admise, en refusant valeurs négatives, fractionnaires ou hors plage.
- Vérifiez avant d’appliquer
- Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
- Modèles
- Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
def morton2(x, y, bits):
if type(bits) is not int or not 1 <= bits <= 16:
raise ValueError("bits.range")
if any(type(v) is not int or not 0 <= v < (1 << bits)
for v in (x, y)):
raise ValueError("coordinate.range")
result = 0
for i in range(bits):
result |= ((x >> i) & 1) << (2 * i)
result |= ((y >> i) & 1) << (2 * i + 1)
return resultReliez le code d’indexation compact aux données qu’il sert
Le code d’indexation peut être court alors que ses hypothèses touchent le stockage et la récupération. TerraInterlace est un client de programmation avec IA sous Windows pour examiner cette relation dans votre projet. Demandez au modèle connecté d’inspecter les coordonnées d’entrée, la représentation de l’indice et ses consommateurs avant de suggérer des modifications. Indiquez la plage prise en charge pour qu’un type plus large ne devienne pas silencieusement un contrat plus large.
Vous pouvez par exemple demander de l’aide pour maintenir une clé de grille entrelaçant les bits des coordonnées. Apportez à la conversation la fonction d’encodage et le code qui stocke ou lit sa sortie. Demandez une explication de l’ordre des axes et de la largeur en bits, puis une proposition ciblée si ces hypothèses divergent. La tâche concerne votre implémentation de grille, pas un système cartographique inclus.
Vérifiez la proposition aux limites touchant les clés réelles. Testez zéro, les coordonnées maximales prises en charge et les valeurs juste hors de la plage acceptée. Comparez des coordonnées connues aux clés attendues et inspectez tout changement d’interprétation des données persistantes. Un encodeur mathématiquement plausible doit encore être compatible avec le reste de l’application.
TerraInterlace prend en charge les connexions à des points de terminaison compatibles OpenAI et Anthropic. Sélectionnez un modèle d’IA sans censure lorsque le service en propose un ; sa capacité de contexte, ses outils et ses restrictions restent propres à cette configuration. Gardez l’examen centré sur la représentation du projet et les modifications inspectables.
Questions à régler avant de modifier un indice
Pourquoi inclure les consommateurs dans l’examen d’une fonction d’entrelacement de bits ?
Un consommateur peut supposer un ordre d’axes, une largeur ou un format de clé persistante non documenté par la fonction. Examiner les deux côtés révèle cette dépendance avant qu’une modification apparemment propre change l’interprétation des données existantes.
Un type entier plus large rend-il une extension de plage sûre ?
Pas automatiquement. Vérifiez la validation, la largeur de stockage et chaque consommateur de la clé. Demandez à l’assistant d’identifier ces dépendances et examinez l’extension de plage comme un changement volontaire de compatibilité, avec ses propres tests.
Quels exemples révèlent une erreur d’ordre des axes ?
Utilisez des coordonnées avec un seul axe non nul, plus un cas mixte dont la clé attendue est définie indépendamment. Des coordonnées symétriques peuvent masquer une inversion d’axes. Notez la convention attendue à côté des jeux de test du projet.
Faut-il régénérer les clés stockées avec le correctif ?
Seulement après avoir déterminé si la représentation change réellement et comment garder les enregistrements existants lisibles. Demandez d’abord cette analyse d’impact. Une modification proposée de fonction n’autorise ni n’implémente à elle seule une migration de données.
TerraInterlace · Mis à jour 2026-10-25