material support
This commit is contained in:
24
addons/io_scene_swbf_msh/msh_material_utilities.py
Normal file
24
addons/io_scene_swbf_msh/msh_material_utilities.py
Normal file
@@ -0,0 +1,24 @@
|
||||
""" Utilities for operating on Material objects. """
|
||||
|
||||
from typing import Dict, List
|
||||
from .msh_material import *
|
||||
from .msh_model import *
|
||||
|
||||
def remove_unused_materials(materials: Dict[str, Material],
|
||||
models: List[Model]) -> Dict[str, Material]:
|
||||
""" Given a dictionary of materials and a list of models
|
||||
returns a dictionary containing only the materials that are used. """
|
||||
|
||||
filtered_materials: Dict[str, Material] = {}
|
||||
|
||||
for model in models:
|
||||
if model.geometry is None:
|
||||
continue
|
||||
|
||||
for segment in model.geometry:
|
||||
if not segment.material_name:
|
||||
continue
|
||||
|
||||
filtered_materials[segment.material_name] = materials[segment.material_name]
|
||||
|
||||
return filtered_materials
|
||||
Reference in New Issue
Block a user