Ejemplo n.º 1
0
/**
 * \brief Reset Walker
 *
 * Frees all states from the worklist, resetting the walker
 * for reuse in a new walk.
 */
void BMW_reset(BMWalker *walker)
{
	while (BMW_current_state(walker)) {
		BMW_state_remove(walker);
	}
	walker->depth = 0;
	BLI_gset_clear(walker->visit_set, NULL);
	BLI_gset_clear(walker->visit_set_alt, NULL);
}
Ejemplo n.º 2
0
/**
 * \brief Reset Walker
 *
 * Frees all states from the worklist, resetting the walker
 * for reuse in a new walk.
 */
void BMW_reset(BMWalker *walker)
{
	while (BMW_current_state(walker)) {
		BMW_state_remove(walker);
	}
	walker->depth = 0;
	BLI_ghash_free(walker->visithash, NULL, NULL);
	BLI_ghash_free(walker->secvisithash, NULL, NULL);
	walker->visithash = BLI_ghash_ptr_new("bmesh walkers 1");
	walker->secvisithash = BLI_ghash_ptr_new("bmesh walkers sec 1");
}