import json def transformeOBJ(nom, pas=1): """ Transforme un fichier RCL (matrice d'altitudes) en fichier OBJ. Args: nom : nom du fichier sans extension pas : distance entre deux points en mètres Créé : nom.obj """ # Lecture du RCL with open(nom + ".rcl", "r") as f: terrain = json.load(f) hauteur = len(terrain) largeur = len(terrain[0]) fichier_obj = nom + ".obj" with open(fichier_obj, "w") as obj: # Création des sommets for y in range(hauteur): for x in range(largeur): obj.write( f"v {x * pas} {y * pas} {terrain[y][x]}\n" ) # Création des faces for y in range(hauteur - 1): for x in range(largeur - 1): # index OBJ commence à 1 p1 = y * largeur + x + 1 p2 = p1 + 1 p3 = p1 + largeur p4 = p3 + 1 # Premier triangle obj.write( f"f {p1} {p2} {p3}\n" ) # Deuxième triangle obj.write( f"f {p2} {p4} {p3}\n" ) print(f"Fichier créé : {fichier_obj}")