blr/types/modifiers/
volume_to_mesh.rs

1use super::{ModifierImpl, ModifierType};
2use crate::types::BpyStruct;
3use derive_more::{Deref, DerefMut, Display};
4use pyo3::PyObject;
5use pyo3_macros_more::bind_python;
6
7/// Wrapper around <https://docs.blender.org/api/latest/bpy.types.VolumeToMeshModifier.html>
8#[repr(transparent)]
9#[derive(Clone, Debug, Deref, DerefMut, Display)]
10pub struct VolumeToMeshModifier(PyObject);
11
12impl BpyStruct for VolumeToMeshModifier {}
13impl ModifierImpl for VolumeToMeshModifier {
14    const MODIFIER_TYPE: ModifierType = ModifierType::VolumeToMesh;
15}
16
17impl VolumeToMeshModifier {
18    bind_python! {}
19}
20
21impl From<pyo3::PyObject> for VolumeToMeshModifier {
22    fn from(value: pyo3::PyObject) -> Self {
23        Self(value)
24    }
25}
26
27impl From<&pyo3::PyAny> for VolumeToMeshModifier {
28    fn from(value: &pyo3::PyAny) -> Self {
29        Self(value.into())
30    }
31}
32
33impl pyo3::FromPyObject<'_> for VolumeToMeshModifier {
34    fn extract(value: &pyo3::PyAny) -> pyo3::PyResult<Self> {
35        Ok(Self(value.into()))
36    }
37}
38
39impl pyo3::ToPyObject for VolumeToMeshModifier {
40    fn to_object(&self, py: pyo3::Python<'_>) -> pyo3::PyObject {
41        self.as_ref(py).to_object(py)
42    }
43}