Blender V4.3
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
7#include "BLI_span.hh"
8
13struct Base;
14struct Depsgraph;
15struct Main;
16struct MetaBall;
17struct MetaElem;
18struct Object;
19struct Scene;
20
21MetaBall *BKE_mball_add(Main *bmain, const char *name);
22
26
32bool BKE_mball_is_same_group(const Object *ob1, const Object *ob2);
37bool BKE_mball_is_basis_for(const Object *ob1, const Object *ob2);
44bool BKE_mball_is_basis(const Object *ob);
55
65void BKE_mball_properties_copy(Main *bmain, MetaBall *metaball_src);
66
68 const MetaBall *mb, float min[3], float max[3], const float obmat[4][4], short flag);
69
70/* Basic vertex data functions. */
71
72bool BKE_mball_minmax(const MetaBall *mb, float min[3], float max[3]);
73bool BKE_mball_center_median(const MetaBall *mb, float r_cent[3]);
74bool BKE_mball_center_bounds(const MetaBall *mb, float r_cent[3]);
75void BKE_mball_transform(MetaBall *mb, const float mat[4][4], bool do_props);
76void BKE_mball_translate(MetaBall *mb, const float offset[3]);
77
84
85/* *** Select functions *** */
86
87int BKE_mball_select_count(const MetaBall *mb);
95
96/* **** Depsgraph evaluation **** */
97
98void BKE_mball_data_update(Depsgraph *depsgraph, Scene *scene, Object *ob);
void BKE_mball_data_update(Depsgraph *depsgraph, Scene *scene, Object *ob)
Definition mball.cc:625
bool BKE_mball_is_same_group(const Object *ob1, const Object *ob2)
Definition mball.cc:253
int BKE_mball_select_count(const MetaBall *mb)
Definition mball.cc:533
void BKE_mball_properties_copy(Main *bmain, MetaBall *metaball_src)
Definition mball.cc:315
bool BKE_mball_minmax_ex(const MetaBall *mb, float min[3], float max[3], const float obmat[4][4], short flag)
Definition mball.cc:426
bool BKE_mball_select_swap_multi_ex(blender::Span< Base * > bases)
bool BKE_mball_deselect_all(MetaBall *mb)
Definition mball.cc:578
MetaElem * BKE_mball_element_add(MetaBall *mb, int type)
Definition mball.cc:183
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:488
bool BKE_mball_is_any_unselected(const MetaBall *mb)
Definition mball.cc:296
MetaBall * BKE_mball_add(Main *bmain, const char *name)
Definition mball.cc:177
void BKE_mball_translate(MetaBall *mb, const float offset[3])
Definition mball.cc:526
bool BKE_mball_minmax(const MetaBall *mb, float min[3], float max[3])
Definition mball.cc:459
void BKE_mball_transform(MetaBall *mb, const float mat[4][4], bool do_props)
Definition mball.cc:500
bool BKE_mball_center_median(const MetaBall *mb, float r_cent[3])
Definition mball.cc:470
bool BKE_mball_select_all_multi_ex(blender::Span< Base * > bases)
bool BKE_mball_is_basis(const Object *ob)
Definition mball.cc:230
Object * BKE_mball_basis_find(Scene *scene, Object *ob)
Definition mball.cc:394
bool BKE_mball_select_swap(MetaBall *mb)
Definition mball.cc:602
bool BKE_mball_is_any_selected(const MetaBall *mb)
Definition mball.cc:274
bool BKE_mball_select_all(MetaBall *mb)
Definition mball.cc:555
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:269
const Depsgraph * depsgraph
#define min(a, b)
Definition sort.c:32
uint8_t flag
Definition wm_window.cc:138