Blender V5.0
BKE_mball.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2001-2002 NaN Holding BV. All rights reserved.
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
8#include "BLI_span.hh"
9
13
14struct Base;
15struct Depsgraph;
16struct Main;
17struct MetaBall;
18struct MetaElem;
19struct Object;
20struct Scene;
21
22MetaBall *BKE_mball_add(Main *bmain, const char *name);
23
27
33bool BKE_mball_is_same_group(const Object *ob1, const Object *ob2);
38bool BKE_mball_is_basis_for(const Object *ob1, const Object *ob2);
45bool BKE_mball_is_basis(const Object *ob);
56
66void BKE_mball_properties_copy(Main *bmain, MetaBall *metaball_src);
67
69 const MetaBall *mb, float min[3], float max[3], const float obmat[4][4], short flag);
70
71/* Basic vertex data functions. */
72
73bool BKE_mball_minmax(const MetaBall *mb, float min[3], float max[3]);
74bool BKE_mball_center_median(const MetaBall *mb, float r_cent[3]);
75bool BKE_mball_center_bounds(const MetaBall *mb, float r_cent[3]);
76void BKE_mball_transform(MetaBall *mb, const float mat[4][4], bool do_props);
77void BKE_mball_translate(MetaBall *mb, const float offset[3]);
78
85
94
95/* *** Select functions *** */
96
97int BKE_mball_select_count(const MetaBall *mb);
105
106/* **** Depsgraph evaluation **** */
107
108void BKE_mball_data_update(Depsgraph *depsgraph, Scene *scene, Object *ob);
void BKE_mball_data_update(Depsgraph *depsgraph, Scene *scene, Object *ob)
Definition mball.cc:650
bool BKE_mball_is_same_group(const Object *ob1, const Object *ob2)
Definition mball.cc:278
int BKE_mball_select_count(const MetaBall *mb)
Definition mball.cc:558
void BKE_mball_properties_copy(Main *bmain, MetaBall *metaball_src)
Definition mball.cc:340
bool BKE_mball_minmax_ex(const MetaBall *mb, float min[3], float max[3], const float obmat[4][4], short flag)
Definition mball.cc:451
bool BKE_mball_select_swap_multi_ex(blender::Span< Base * > bases)
bool BKE_mball_deselect_all(MetaBall *mb)
Definition mball.cc:603
MetaElem * BKE_mball_element_add(MetaBall *mb, int type)
Definition mball.cc:179
bool BKE_mball_is_any_selected_multi(blender::Span< Base * > bases)
int BKE_mball_select_count_multi(blender::Span< Base * > bases)
bool BKE_mball_center_bounds(const MetaBall *mb, float r_cent[3])
Definition mball.cc:513
bool BKE_mball_is_any_unselected(const MetaBall *mb)
Definition mball.cc:321
MetaBall * BKE_mball_add(Main *bmain, const char *name)
Definition mball.cc:173
void BKE_mball_translate(MetaBall *mb, const float offset[3])
Definition mball.cc:551
bool BKE_mball_minmax(const MetaBall *mb, float min[3], float max[3])
Definition mball.cc:484
void BKE_mball_transform(MetaBall *mb, const float mat[4][4], bool do_props)
Definition mball.cc:525
bool BKE_mball_center_median(const MetaBall *mb, float r_cent[3])
Definition mball.cc:495
blender::float2 BKE_mball_element_display_radius_calc_with_stiffness(const MetaElem *ml)
Definition mball.cc:226
float BKE_mball_element_display_radius_calc(const MetaElem *ml)
Definition mball.cc:245
bool BKE_mball_select_all_multi_ex(blender::Span< Base * > bases)
bool BKE_mball_is_basis(const Object *ob)
Definition mball.cc:255
Object * BKE_mball_basis_find(Scene *scene, Object *ob)
Definition mball.cc:419
bool BKE_mball_select_swap(MetaBall *mb)
Definition mball.cc:627
bool BKE_mball_is_any_selected(const MetaBall *mb)
Definition mball.cc:299
bool BKE_mball_select_all(MetaBall *mb)
Definition mball.cc:580
bool BKE_mball_deselect_all_multi_ex(blender::Span< Base * > bases)
bool BKE_mball_is_basis_for(const Object *ob1, const Object *ob2)
Definition mball.cc:294
BPy_StructRNA * depsgraph
VecBase< float, 2 > float2
const char * name
#define min(a, b)
Definition sort.cc:36
max
Definition text_draw.cc:251
uint8_t flag
Definition wm_window.cc:145