1 # SPDX-FileCopyrightText: 2017-2023 Blender Foundation
3 # SPDX-License-Identifier: GPL-2.0-or-later
5 # --------------------------------- TISSUE ----------------------------------- #
6 # ------------------------------- version 0.3 -------------------------------- #
8 # Creates duplicates of selected mesh to active morphing the shape according #
11 # Alessandro Zomparelli #
14 # http://www.co-de-it.com/ #
15 # http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Mesh/Tissue #
17 # ############################################################################ #
21 "author": "Alessandro Zomparelli (Co-de-iT)",
22 "version": (0, 3, 54),
23 "blender": (2, 93, 0),
25 "description": "Tools for Computational Design",
27 "doc_url": "{BLENDER_MANUAL_URL}/addons/mesh/tissue.html",
28 "tracker_url": "https://github.com/alessandro-zomparelli/tissue/issues",
35 importlib
.reload(tessellate_numpy
)
36 importlib
.reload(tissue_properties
)
37 importlib
.reload(weight_tools
)
38 importlib
.reload(dual_mesh
)
39 importlib
.reload(lattice
)
40 importlib
.reload(uv_to_mesh
)
41 importlib
.reload(utils
)
42 importlib
.reload(config
)
43 importlib
.reload(material_tools
)
44 importlib
.reload(curves_tools
)
45 importlib
.reload(polyhedra
)
48 from . import tessellate_numpy
49 from . import tissue_properties
50 from . import weight_tools
51 from . import dual_mesh
53 from . import uv_to_mesh
56 from . import material_tools
57 from . import curves_tools
58 from . import polyhedra
61 from bpy
.props
import PointerProperty
, CollectionProperty
, BoolProperty
65 config
.tissuePreferences
,
66 config
.tissue_install_numba
,
68 tissue_properties
.tissue_prop
,
69 tissue_properties
.tissue_tessellate_prop
,
70 tessellate_numpy
.tissue_tessellate
,
71 tessellate_numpy
.tissue_update_tessellate
,
72 tessellate_numpy
.tissue_update_tessellate_deps
,
73 tessellate_numpy
.TISSUE_PT_tessellate
,
74 tessellate_numpy
.tissue_rotate_face_left
,
75 tessellate_numpy
.tissue_rotate_face_right
,
76 tessellate_numpy
.tissue_rotate_face_flip
,
77 tessellate_numpy
.TISSUE_PT_tessellate_object
,
78 tessellate_numpy
.TISSUE_PT_tessellate_frame
,
79 tessellate_numpy
.TISSUE_PT_tessellate_component
,
80 tessellate_numpy
.TISSUE_PT_tessellate_thickness
,
81 tessellate_numpy
.TISSUE_PT_tessellate_direction
,
82 tessellate_numpy
.TISSUE_PT_tessellate_options
,
83 tessellate_numpy
.TISSUE_PT_tessellate_coordinates
,
84 tessellate_numpy
.TISSUE_PT_tessellate_rotation
,
85 tessellate_numpy
.TISSUE_PT_tessellate_selective
,
86 tessellate_numpy
.TISSUE_PT_tessellate_morphing
,
87 tessellate_numpy
.TISSUE_PT_tessellate_iterations
,
88 tessellate_numpy
.tissue_render_animation
,
90 weight_tools
.face_area_to_vertex_groups
,
91 weight_tools
.vertex_colors_to_vertex_groups
,
92 weight_tools
.vertex_group_to_vertex_colors
,
93 weight_tools
.vertex_group_to_uv
,
94 weight_tools
.TISSUE_PT_weight
,
95 weight_tools
.TISSUE_PT_color
,
96 weight_tools
.weight_contour_curves
,
97 weight_tools
.tissue_weight_contour_curves_pattern
,
98 weight_tools
.weight_contour_mask
,
99 weight_tools
.weight_contour_displace
,
100 weight_tools
.harmonic_weight
,
101 weight_tools
.edges_deformation
,
102 weight_tools
.edges_bending
,
103 weight_tools
.weight_laplacian
,
104 weight_tools
.reaction_diffusion
,
105 weight_tools
.start_reaction_diffusion
,
106 weight_tools
.TISSUE_PT_reaction_diffusion
,
107 weight_tools
.TISSUE_PT_reaction_diffusion_weight
,
108 weight_tools
.reset_reaction_diffusion_weight
,
109 weight_tools
.formula_prop
,
110 weight_tools
.reaction_diffusion_prop
,
111 weight_tools
.weight_formula
,
112 weight_tools
.update_weight_formula
,
113 weight_tools
.curvature_to_vertex_groups
,
114 weight_tools
.weight_formula_wiki
,
115 weight_tools
.tissue_weight_distance
,
116 weight_tools
.random_weight
,
117 weight_tools
.bake_reaction_diffusion
,
118 weight_tools
.reaction_diffusion_free_data
,
119 weight_tools
.tissue_weight_streamlines
,
122 dual_mesh
.dual_mesh_tessellated
,
124 lattice
.lattice_along_surface
,
126 material_tools
.random_materials
,
127 material_tools
.weight_to_materials
,
129 curves_tools
.tissue_to_curve_prop
,
130 curves_tools
.tissue_convert_to_curve
,
131 curves_tools
.tissue_convert_to_curve_update
,
132 curves_tools
.TISSUE_PT_convert_to_curve
,
134 uv_to_mesh
.uv_to_mesh
,
136 polyhedra
.polyhedra_wireframe
140 from bpy
.utils
import register_class
142 bpy
.utils
.register_class(cls
)
143 #bpy.utils.register_module(__name__)
144 bpy
.types
.Object
.tissue
= PointerProperty(
145 type=tissue_properties
.tissue_prop
147 bpy
.types
.Object
.tissue_tessellate
= PointerProperty(
148 type=tissue_properties
.tissue_tessellate_prop
150 bpy
.types
.Object
.tissue_to_curve
= PointerProperty(
151 type=curves_tools
.tissue_to_curve_prop
153 bpy
.types
.Object
.formula_settings
= CollectionProperty(
154 type=weight_tools
.formula_prop
156 bpy
.types
.Object
.reaction_diffusion_settings
= PointerProperty(
157 type=weight_tools
.reaction_diffusion_prop
160 bpy
.app
.handlers
.frame_change_post
.append(weight_tools
.reaction_diffusion_def
)
161 #bpy.app.handlers.frame_change_post.append(tessellate_numpy.anim_tessellate)
164 from bpy
.utils
import unregister_class
166 bpy
.utils
.unregister_class(cls
)
168 del bpy
.types
.Object
.tissue_tessellate
171 if __name__
== "__main__":