Skip to content
Snippets Groups Projects
Commit 8276289a authored by poulpe's avatar poulpe
Browse files

[Update] Add symmetry function with quadtree (horiz,vertical,central)

parent 9b664000
No related branches found
No related tags found
No related merge requests found
......@@ -30,6 +30,7 @@ int main()
// matrix_alloc(&mat,p->pixels.lin,p->pixels.col);
// matrix_init(&mat);
quadtree_central_symetry(tree);
quadtree_tree2matrix(tree,&pp->pixels);
// // matrix_print(mat);
......@@ -42,7 +43,7 @@ int main()
matrix_destroy(&p->pixels);
matrix_destroy(&pp->pixels);
quadtree_tree_destroy_clean(&tree);
quadtree_tree_destroy(&tree);
free(p);
free(pp);
return 0;
......
......@@ -154,36 +154,41 @@ void quadtree_tree2matrix(node *tree, matrix *mat)
}
}
void quadtree_vertical_symetry(node *tree)
{
// Inversé les colones
}
// OK
void quadtree_horizontal_symetry(node *tree)
{
}
void quadtree_central_symetry(node *tree)
if (NULL != tree)
{
for (uint32_t i = 0; i < CHILDREN; i += 1)
{
quadtree_horizontal_symetry(tree->child[i]);
}
quadtree_swap((void**)&tree->child[0], (void**)&tree->child[1]);
quadtree_swap((void**)&tree->child[2], (void**)&tree->child[3]);
}
}
void quadtree_tree_destroy(node **tree)
{
node *a = *tree;
if (a->child[0] == NULL)
// OK
void quadtree_vertical_symetry(node *tree)
{
free(a);
}
else
if (NULL != tree)
{
for (uint32_t i = 0; i < CHILDREN; i += 1)
{
quadtree_tree_destroy(&a->child[i]);
quadtree_vertical_symetry(tree->child[i]);
}
quadtree_swap((void**)&tree->child[0], (void**)&tree->child[2]);
quadtree_swap((void**)&tree->child[1], (void**)&tree->child[3]);
}
}
void quadtree_tree_destroy_clean(node **tree)
void quadtree_central_symetry(node *tree)
{
quadtree_vertical_symetry(tree);
quadtree_horizontal_symetry(tree);
}
void quadtree_tree_destroy(node **tree)
{
if (NULL != *tree)
{
......@@ -191,7 +196,7 @@ void quadtree_tree_destroy_clean(node **tree)
{
for (uint32_t i = 0; i < CHILDREN; i += 1)
{
quadtree_tree_destroy_clean(&(*tree)->child[i]);
quadtree_tree_destroy(&(*tree)->child[i]);
}
}
else
......
......@@ -42,3 +42,11 @@ void quadtree_tree_destroy(node **tree);
void quadtree_tree2matrix(node *tree,matrix* mat);
void quadtree_tree_destroy_clean(node **tree);
double quadtree_position_value(int32_t li, int32_t col, node *a, int32_t d);
void quadtree_horizontal_symetry(node *tree);
void quadtree_vertical_symetry(node *tree);
void quadtree_central_symetry(node *tree);
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment