feat: Add SKIP_MODULE_NAMES to exclude specific modules during import and refactor io_worker import logic

This commit is contained in:
2026-07-07 13:29:31 +08:00
parent 35faebb911
commit efb28ee3b3
2 changed files with 17 additions and 8 deletions

View File

@@ -15,6 +15,9 @@ blender_version = bpy.app.version
modules = None
ordered_classes = None
SKIP_MODULE_NAMES = {
"operators.io_worker",
}
def init():
@@ -57,6 +60,8 @@ def get_all_submodules(directory):
def iter_submodules(path, package_name):
for name in sorted(iter_submodule_names(path)):
if name in SKIP_MODULE_NAMES:
continue
yield importlib.import_module("." + name, package_name)

View File

@@ -3,17 +3,21 @@ import sys
import traceback
from pathlib import Path
PACKAGE_PARENT = Path(__file__).resolve().parents[2]
if str(PACKAGE_PARENT) not in sys.path:
sys.path.insert(0, str(PACKAGE_PARENT))
import numpy as np
import transforms3d
from bioxelnodes.bioxel.layer import Layer
from bioxelnodes.bioxel.parse import parse_volumetric_data
from bioxelnodes.layer import save_layers_to_cache
if __package__:
from ..bioxel.layer import Layer
from ..bioxel.parse import parse_volumetric_data
from ..layer import save_layers_to_cache
else:
PACKAGE_PARENT = Path(__file__).resolve().parents[2]
if str(PACKAGE_PARENT) not in sys.path:
sys.path.insert(0, str(PACKAGE_PARENT))
from bioxelnodes.bioxel.layer import Layer
from bioxelnodes.bioxel.parse import parse_volumetric_data
from bioxelnodes.layer import save_layers_to_cache
def get_layer_shape(bioxel_size: float, orig_shape: tuple, orig_spacing: tuple):