Newer
Older
from main import get_raw_data, get_discrete_data
from utils.files.file_data import Object
from utils.files.output import save_output_file, format_data
from utils.files.parsers import parse_obj_file, parse_xyz_file
from integration_tests import data_test
import time
import os
def test_get_raw_data(obj:Object, expected_file:str, ndigits:int = 6, eps:float = 0.0001):
"""
Test the get_raw_data function
"""
# Calculate raw data and save it in a file
now = time.time()
data = get_raw_data(obj, ndigits)
print()
print("Time to calculate raw data: ", time.time() - now)
save_output_file('tmp_analyse_brute.txt', format_data(data, '\t', ["X (en mm)", "Y (en mm)", "Z (en mm)", "teta (en rad)", "rayon (en mm)","Xi-Xmoy","Yi-Ymoy"] ))
data_test.check_raw_data(expected_file, 'tmp_analyse_brute.txt', ndigits, eps)
os.remove('tmp_analyse_brute.txt')
def test_get_discrete_data(obj: Object,expected_file:str, ndigits:int = 6, eps:float = 0.0001):
"""
Test the get_discrete_data function
"""
# Calculate discrete data and save it in a file
now = time.time()
data = get_discrete_data(obj, ndigits)
print()
print("Time to calculate discrete data: ", time.time() - now)
save_output_file('tmp_analyse_discrete.txt', format_data(data, '\t', ["X moy (en mm)", "Y moy (en mm)", "Z moy (en mm)","Rayon moyen (en mm)","Rayon ecart type (en mm)"] ))
data_test.check_discrete_data(expected_file, 'tmp_analyse_discrete.txt', ndigits, eps)
os.remove('tmp_analyse_discrete.txt')
#obj = parse_obj_file("datasets/Barette/3 - BARETTE v1.obj",normalised='z')
#obj = parse_xyz_file("datasets/Barette/4 - BARETTE v1.xyz",normalised='z')
obj = parse_xyz_file("datasets/Barette/4 - BARETTE v1.xyz","datasets/Barette/BARETTE_Delta 1,0_analyse rayon.txt",normalised='z')
test_get_raw_data(obj,
"datasets/Barette/BARETTE_Delta 1,0_analyse brute.txt",
eps=eps)
test_get_discrete_data(obj,
"datasets/Barette/BARETTE_Delta 1,0_analyse rayon.txt",
eps=eps)
def show_diff_between_obj_and_xyz():
obj1 = parse_obj_file("datasets/Barette/3 - BARETTE v1.obj",normalised='z')
obj2 = parse_xyz_file("datasets/Barette/4 - BARETTE v1.xyz",normalised='z')
obj2verts = obj2.get_vertices(sort=True)
for count, values in enumerate(obj1.get_vertices(sort=True)):
L = [abs(values[i] - obj2verts[count][i]) for i in range(len(values))]
print(*L,sep="\t")
def count_elements_in_discrete_array():
obj = parse_xyz_file("datasets/Barette/4 - BARETTE v1.xyz","datasets/Barette/BARETTE_Delta 1,0_analyse rayon.txt",normalised='z')
cpt = 0
for i in obj.bruteforce_discretization():
print(f"nb of element in z{cpt} to z{cpt+1}:",len(i))
cpt += 1
if __name__ == "__main__":
test()