tornavis/source/blender/geometry/GEO_mesh_primitive_cylinder...

36 lines
961 B
C++

/* SPDX-FileCopyrightText: 2023 Blender Authors
*
* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#include "BKE_anonymous_attribute_id.hh"
struct Mesh;
namespace blender::geometry {
struct ConeAttributeOutputs {
bke::AnonymousAttributeIDPtr top_id;
bke::AnonymousAttributeIDPtr bottom_id;
bke::AnonymousAttributeIDPtr side_id;
bke::AnonymousAttributeIDPtr uv_map_id;
};
enum class ConeFillType {
None = 0,
NGon = 1,
Triangles = 2,
};
Mesh *create_cylinder_or_cone_mesh(float radius_top,
float radius_bottom,
float depth,
int circle_segments,
int side_segments,
int fill_segments,
ConeFillType fill_type,
ConeAttributeOutputs &attribute_outputs);
} // namespace blender::geometry