Blender
V3.3
|
Functions | |
static void | node_declare (NodeDeclarationBuilder &b) |
static int | sphere_vert_total (const int segments, const int rings) |
static int | sphere_edge_total (const int segments, const int rings) |
static int | sphere_corner_total (const int segments, const int rings) |
static int | sphere_face_total (const int segments, const int rings) |
static BLI_NOINLINE void | calculate_sphere_vertex_data (MutableSpan< MVert > verts, MutableSpan< float3 > vert_normals, const float radius, const int segments, const int rings) |
static BLI_NOINLINE void | calculate_sphere_edge_indices (MutableSpan< MEdge > edges, const int segments, const int rings) |
static BLI_NOINLINE void | calculate_sphere_faces (MutableSpan< MPoly > polys, const int segments) |
static BLI_NOINLINE void | calculate_sphere_corners (MutableSpan< MLoop > loops, const int segments, const int rings) |
static BLI_NOINLINE void | calculate_sphere_uvs (Mesh *mesh, const float segments, const float rings) |
static Mesh * | create_uv_sphere_mesh (const float radius, const int segments, const int rings) |
static void | node_geo_exec (GeoNodeExecParams params) |
|
static |
Definition at line 183 of file node_geo_mesh_primitive_uv_sphere.cc.
References MLoop::e, sphere_vert_total(), and MLoop::v.
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 107 of file node_geo_mesh_primitive_uv_sphere.cc.
References ME_EDGEDRAW, ME_EDGERENDER, and sphere_vert_total().
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 157 of file node_geo_mesh_primitive_uv_sphere.cc.
References blender::MutableSpan< T >::drop_back(), blender::MutableSpan< T >::drop_front(), blender::MutableSpan< T >::take_back(), and blender::MutableSpan< T >::take_front().
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 255 of file node_geo_mesh_primitive_uv_sphere.cc.
References ATTR_DOMAIN_CORNER, blender::bke::SpanAttributeWriter< T >::finish(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), mesh, blender::bke::mesh_attributes_for_write(), and blender::bke::SpanAttributeWriter< T >::span.
Referenced by create_uv_sphere_mesh().
|
static |
Also calculate vertex normals here, since the calculation is trivial, and it allows avoiding the calculation later, if it's necessary. The vertex normals are just the normalized positions.
Definition at line 66 of file node_geo_mesh_primitive_uv_sphere.cc.
References copy_v3_v3(), KDL::cos(), delta_phi(), blender::MutableSpan< T >::first(), blender::MutableSpan< T >::last(), M_PI, KDL::sin(), verts, x, y, and z.
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 296 of file node_geo_mesh_primitive_uv_sphere.cc.
References BKE_id_material_eval_ensure_default_slot(), BKE_mesh_new_nomain(), BKE_mesh_vertex_normals_clear_dirty(), BKE_mesh_vertex_normals_for_write(), calculate_sphere_corners(), calculate_sphere_edge_indices(), calculate_sphere_faces(), calculate_sphere_uvs(), calculate_sphere_vertex_data(), Mesh::id, Mesh::medge, mesh, Mesh::mloop, Mesh::mpoly, Mesh::mvert, blender::threading::parallel_invoke(), sphere_corner_total(), sphere_edge_total(), sphere_face_total(), sphere_vert_total(), Mesh::totedge, Mesh::totloop, Mesh::totpoly, Mesh::totvert, and verts.
Referenced by node_geo_exec().
|
static |
Definition at line 18 of file node_geo_mesh_primitive_uv_sphere.cc.
References usdtokens::b(), blender::nodes::SocketDeclaration::description(), N_, and PROP_DISTANCE.
Referenced by register_node_type_geo_mesh_primitive_uv_sphere().
|
static |
Definition at line 324 of file node_geo_mesh_primitive_uv_sphere.cc.
References create_uv_sphere_mesh(), GeometrySet::create_with_mesh(), Info, mesh, params, blender::bke::curves::segments_num(), and TIP_.
Referenced by register_node_type_geo_mesh_primitive_uv_sphere().
|
static |
Definition at line 48 of file node_geo_mesh_primitive_uv_sphere.cc.
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 43 of file node_geo_mesh_primitive_uv_sphere.cc.
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 55 of file node_geo_mesh_primitive_uv_sphere.cc.
Referenced by create_uv_sphere_mesh().
|
static |
Definition at line 38 of file node_geo_mesh_primitive_uv_sphere.cc.
Referenced by calculate_sphere_corners(), calculate_sphere_edge_indices(), and create_uv_sphere_mesh().