26 const int *subdiv_polygon_offset);
33 int coarse_vertex_index,
34 int coarse_poly_index,
36 int subdiv_vertex_index);
43 int coarse_edge_index,
44 int coarse_poly_index,
46 int subdiv_vertex_index);
53 int coarse_poly_index,
55 int subdiv_vertex_index);
59 int coarse_edge_index,
60 int subdiv_edge_index,
70 int coarse_loop_index,
71 int coarse_poly_index,
73 int subdiv_loop_index,
74 int subdiv_vertex_index,
75 int subdiv_edge_index);
79 int coarse_poly_index,
80 int subdiv_poly_index,
86 int coarse_vertex_index,
87 int subdiv_vertex_index);
91 int coarse_edge_index,
93 int subdiv_vertex_index);
161 const struct Mesh *coarse_mesh);
void(* SubdivForeachPolygonCb)(const struct SubdivForeachContext *context, void *tls, int coarse_poly_index, int subdiv_poly_index, int start_loop_index, int num_loops)
bool(* SubdivForeachTopologyInformationCb)(const struct SubdivForeachContext *context, int num_vertices, int num_edges, int num_loops, int num_polygons, const int *subdiv_polygon_offset)
void(* SubdivForeachVertexFromCornerCb)(const struct SubdivForeachContext *context, void *tls, int ptex_face_index, float u, float v, int coarse_vertex_index, int coarse_poly_index, int coarse_corner, int subdiv_vertex_index)
void(* SubdivForeachEdgeCb)(const struct SubdivForeachContext *context, void *tls, int coarse_edge_index, int subdiv_edge_index, bool is_loose, int subdiv_v1, int subdiv_v2)
void(* SubdivForeachLooseCb)(const struct SubdivForeachContext *context, void *tls, int coarse_vertex_index, int subdiv_vertex_index)
void(* SubdivForeachVertexOfLooseEdgeCb)(const struct SubdivForeachContext *context, void *tls, int coarse_edge_index, float u, int subdiv_vertex_index)
void(* SubdivForeachLoopCb)(const struct SubdivForeachContext *context, void *tls, int ptex_face_index, float u, float v, int coarse_loop_index, int coarse_poly_index, int coarse_corner, int subdiv_loop_index, int subdiv_vertex_index, int subdiv_edge_index)
bool BKE_subdiv_foreach_subdiv_geometry(struct Subdiv *subdiv, const struct SubdivForeachContext *context, const struct SubdivToMeshSettings *mesh_settings, const struct Mesh *coarse_mesh)
void(* SubdivForeachVertexFromEdgeCb)(const struct SubdivForeachContext *context, void *tls, int ptex_face_index, float u, float v, int coarse_edge_index, int coarse_poly_index, int coarse_corner, int subdiv_vertex_index)
void(* SubdivForeachVertexInnerCb)(const struct SubdivForeachContext *context, void *tls, int ptex_face_index, float u, float v, int coarse_poly_index, int coarse_corner, int subdiv_vertex_index)
struct SubdivForeachContext SubdivForeachContext
ATTR_WARN_UNUSED_RESULT const BMVert * v
SyclQueue void void size_t num_bytes void
SubdivForeachVertexFromEdgeCb vertex_every_edge
SubdivForeachPolygonCb poly
SubdivForeachTopologyInformationCb topology_info
size_t user_data_tls_size
SubdivForeachLooseCb vertex_loose
SubdivForeachVertexInnerCb vertex_inner
SubdivForeachVertexOfLooseEdgeCb vertex_of_loose_edge
void(* user_data_tls_free)(void *tls)
SubdivForeachVertexFromEdgeCb vertex_edge
SubdivForeachVertexFromCornerCb vertex_corner
SubdivForeachVertexFromCornerCb vertex_every_corner