Graphite  Version 3 An experimental 3D geometry processing program
mesh_reorder.h File Reference

Reorders the elements in a mesh to improve data locality. More...

`#include <geogram/basic/common.h>`
`#include <geogram/basic/numeric.h>`
`#include <geogram/basic/memory.h>`

Go to the source code of this file.

## Namespaces

GEO
Global Vorpaline namespace.

## Enumerations

enum  GEO::MeshOrder { GEO::MESH_ORDER_HILBERT, GEO::MESH_ORDER_MORTON }
Strategy for spatial sorting. More...

## Functions

void GEO::mesh_reorder (Mesh &M, MeshOrder order=MESH_ORDER_HILBERT)
Reorders all the elements of a mesh. More...

void GEO::compute_Hilbert_order (index_t nb_vertices, const double *vertices, vector< index_t > &sorted_indices, index_t stride=3)
Computes the Hilbert order for a set of 3D points. More...

void GEO::compute_Hilbert_order (index_t total_nb_vertices, const double *vertices, vector< index_t > &sorted_indices, index_t first, index_t last, index_t dimension, index_t stride=3)
Computes the Hilbert order for a set of 3D points. More...

void GEO::compute_BRIO_order (index_t nb_vertices, const double *vertices, vector< index_t > &sorted_indices, index_t dimension, index_t stride=3, index_t threshold=64, double ratio=0.125, vector< index_t > *levels=nullptr)
Computes the BRIO order for a set of 3D points. More...

void GEO::Hilbert_sort_periodic (index_t nb_vertices, const double *vertices, vector< index_t > &sorted_indices, index_t dimension, index_t stride, vector< index_t >::iterator first, vector< index_t >::iterator last, double period=1.0)
Spatially sort a set of vertices in periodic space. More...

## Detailed Description

Reorders the elements in a mesh to improve data locality.

Definition in file mesh_reorder.h.