1 # SPDX-License-Identifier: GPL-2.0-or-later
3 # --------------------------------- TISSUE ----------------------------------- #
4 # ------------------------------- version 0.3 -------------------------------- #
6 # Creates duplicates of selected mesh to active morphing the shape according #
9 # Alessandro Zomparelli #
12 # http://www.co-de-it.com/ #
13 # http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Mesh/Tissue #
15 # ############################################################################ #
19 "author": "Alessandro Zomparelli (Co-de-iT)",
20 "version": (0, 3, 54),
21 "blender": (2, 93, 0),
23 "description": "Tools for Computational Design",
25 "doc_url": "{BLENDER_MANUAL_URL}/addons/mesh/tissue.html",
26 "tracker_url": "https://github.com/alessandro-zomparelli/tissue/issues",
33 importlib
.reload(tessellate_numpy
)
34 importlib
.reload(tissue_properties
)
35 importlib
.reload(weight_tools
)
36 importlib
.reload(dual_mesh
)
37 importlib
.reload(lattice
)
38 importlib
.reload(uv_to_mesh
)
39 importlib
.reload(utils
)
40 importlib
.reload(config
)
41 importlib
.reload(material_tools
)
42 importlib
.reload(curves_tools
)
43 importlib
.reload(polyhedra
)
46 from . import tessellate_numpy
47 from . import tissue_properties
48 from . import weight_tools
49 from . import dual_mesh
51 from . import uv_to_mesh
54 from . import material_tools
55 from . import curves_tools
56 from . import polyhedra
59 from bpy
.props
import PointerProperty
, CollectionProperty
, BoolProperty
63 config
.tissuePreferences
,
64 config
.tissue_install_numba
,
66 tissue_properties
.tissue_prop
,
67 tissue_properties
.tissue_tessellate_prop
,
68 tessellate_numpy
.tissue_tessellate
,
69 tessellate_numpy
.tissue_update_tessellate
,
70 tessellate_numpy
.tissue_update_tessellate_deps
,
71 tessellate_numpy
.TISSUE_PT_tessellate
,
72 tessellate_numpy
.tissue_rotate_face_left
,
73 tessellate_numpy
.tissue_rotate_face_right
,
74 tessellate_numpy
.tissue_rotate_face_flip
,
75 tessellate_numpy
.TISSUE_PT_tessellate_object
,
76 tessellate_numpy
.TISSUE_PT_tessellate_frame
,
77 tessellate_numpy
.TISSUE_PT_tessellate_component
,
78 tessellate_numpy
.TISSUE_PT_tessellate_thickness
,
79 tessellate_numpy
.TISSUE_PT_tessellate_direction
,
80 tessellate_numpy
.TISSUE_PT_tessellate_options
,
81 tessellate_numpy
.TISSUE_PT_tessellate_coordinates
,
82 tessellate_numpy
.TISSUE_PT_tessellate_rotation
,
83 tessellate_numpy
.TISSUE_PT_tessellate_selective
,
84 tessellate_numpy
.TISSUE_PT_tessellate_morphing
,
85 tessellate_numpy
.TISSUE_PT_tessellate_iterations
,
86 tessellate_numpy
.tissue_render_animation
,
88 weight_tools
.face_area_to_vertex_groups
,
89 weight_tools
.vertex_colors_to_vertex_groups
,
90 weight_tools
.vertex_group_to_vertex_colors
,
91 weight_tools
.vertex_group_to_uv
,
92 weight_tools
.TISSUE_PT_weight
,
93 weight_tools
.TISSUE_PT_color
,
94 weight_tools
.weight_contour_curves
,
95 weight_tools
.tissue_weight_contour_curves_pattern
,
96 weight_tools
.weight_contour_mask
,
97 weight_tools
.weight_contour_displace
,
98 weight_tools
.harmonic_weight
,
99 weight_tools
.edges_deformation
,
100 weight_tools
.edges_bending
,
101 weight_tools
.weight_laplacian
,
102 weight_tools
.reaction_diffusion
,
103 weight_tools
.start_reaction_diffusion
,
104 weight_tools
.TISSUE_PT_reaction_diffusion
,
105 weight_tools
.TISSUE_PT_reaction_diffusion_weight
,
106 weight_tools
.reset_reaction_diffusion_weight
,
107 weight_tools
.formula_prop
,
108 weight_tools
.reaction_diffusion_prop
,
109 weight_tools
.weight_formula
,
110 weight_tools
.update_weight_formula
,
111 weight_tools
.curvature_to_vertex_groups
,
112 weight_tools
.weight_formula_wiki
,
113 weight_tools
.tissue_weight_distance
,
114 weight_tools
.random_weight
,
115 weight_tools
.bake_reaction_diffusion
,
116 weight_tools
.reaction_diffusion_free_data
,
117 weight_tools
.tissue_weight_streamlines
,
120 dual_mesh
.dual_mesh_tessellated
,
122 lattice
.lattice_along_surface
,
124 material_tools
.random_materials
,
125 material_tools
.weight_to_materials
,
127 curves_tools
.tissue_to_curve_prop
,
128 curves_tools
.tissue_convert_to_curve
,
129 curves_tools
.tissue_convert_to_curve_update
,
130 curves_tools
.TISSUE_PT_convert_to_curve
,
132 uv_to_mesh
.uv_to_mesh
,
134 polyhedra
.polyhedra_wireframe
138 from bpy
.utils
import register_class
140 bpy
.utils
.register_class(cls
)
141 #bpy.utils.register_module(__name__)
142 bpy
.types
.Object
.tissue
= PointerProperty(
143 type=tissue_properties
.tissue_prop
145 bpy
.types
.Object
.tissue_tessellate
= PointerProperty(
146 type=tissue_properties
.tissue_tessellate_prop
148 bpy
.types
.Object
.tissue_to_curve
= PointerProperty(
149 type=curves_tools
.tissue_to_curve_prop
151 bpy
.types
.Object
.formula_settings
= CollectionProperty(
152 type=weight_tools
.formula_prop
154 bpy
.types
.Object
.reaction_diffusion_settings
= PointerProperty(
155 type=weight_tools
.reaction_diffusion_prop
158 bpy
.app
.handlers
.frame_change_post
.append(weight_tools
.reaction_diffusion_def
)
159 #bpy.app.handlers.frame_change_post.append(tessellate_numpy.anim_tessellate)
162 from bpy
.utils
import unregister_class
164 bpy
.utils
.unregister_class(cls
)
166 del bpy
.types
.Object
.tissue_tessellate
169 if __name__
== "__main__":