MeshLib C++ Docs
Loading...
Searching...
No Matches
MRSubfeatures.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMesh/MRFeatures.h"
4
5#include <functional>
6
7namespace MR::Features
8{
9
12{
14 std::string_view name;
15
17 bool isInfinite = false;
18
22};
23
25using SubfeatureFunc = std::function<void( const SubfeatureInfo& info )>;
26
30MRMESH_API void forEachSubfeature( const Features::Primitives::Variant& feature, const SubfeatureFunc& func );
31
32}
std::variant< Sphere, ConeSegment, Plane > Variant
Definition MRFeatures.h:114
Definition MRFeatures.h:23
std::function< void(const SubfeatureInfo &info)> SubfeatureFunc
A user callback for forEachSubfeature().
Definition MRSubfeatures.h:25
MRMESH_API void forEachSubfeature(const Features::Primitives::Variant &feature, const SubfeatureFunc &func)
Describes a single feature produced by forEachSubfeature().
Definition MRSubfeatures.h:12
std::function< Primitives::Variant(const Features::Primitives::Variant &feature)> create
Definition MRSubfeatures.h:21
std::string_view name
A user-friendly name.
Definition MRSubfeatures.h:14
bool isInfinite
Whether the feature has infinite length.
Definition MRSubfeatures.h:17