mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-24 23:19:57 +00:00
Blender 4.5 - prevent infinite loading of previews
Related - https://projects.blender.org/blender/blender/issues/140903
This commit is contained in:
@@ -1063,12 +1063,15 @@ class Model(bonsai.core.tool.Model):
|
|||||||
return # Already processed
|
return # Already processed
|
||||||
|
|
||||||
assert isinstance(obj, bpy.types.Object)
|
assert isinstance(obj, bpy.types.Object)
|
||||||
obj.asset_generate_preview()
|
# Since Blender 4.5 have to use `preview_ensure` instead of `asset_generate_preview`, see #6839.
|
||||||
while not obj.preview:
|
obj.preview_ensure()
|
||||||
pass
|
|
||||||
|
|
||||||
# if object has .data we can use default blender .asset_generate_preview()
|
if obj.data:
|
||||||
if not obj.data:
|
# If object has .data we can use default Blender preview.
|
||||||
|
# No need to preview to update, Blender will do it in background,
|
||||||
|
# `preview.icon_id` doesn't change after `asset_generate_preview()`.
|
||||||
|
obj.asset_generate_preview()
|
||||||
|
else:
|
||||||
unit_scale = ifcopenshell.util.unit.calculate_unit_scale(tool.Ifc.get())
|
unit_scale = ifcopenshell.util.unit.calculate_unit_scale(tool.Ifc.get())
|
||||||
size = 128
|
size = 128
|
||||||
img = Image.new("RGBA", (size, size))
|
img = Image.new("RGBA", (size, size))
|
||||||
|
|||||||
Reference in New Issue
Block a user