Changeset View
Changeset View
Standalone View
Standalone View
io_scene_fbx/fbx_utils.py
| Context not available. | |||||
| DO_PERFMON = True | DO_PERFMON = True | ||||
| if DO_PERFMON: | if DO_PERFMON: | ||||
| class PerfMon(): | class PerfMon: | ||||
| def __init__(self): | def __init__(self): | ||||
| self.level = -1 | self.level = -1 | ||||
| self.ref_time = [] | self.ref_time = [] | ||||
| Context not available. | |||||
| self.ref_time[self.level] = curr_time | self.ref_time[self.level] = curr_time | ||||
| print("\t" * self.level, message, sep="") | print("\t" * self.level, message, sep="") | ||||
| else: | else: | ||||
| class PerfMon(): | class PerfMon: | ||||
| def __init__(self): | def __init__(self): | ||||
| pass | pass | ||||
| Context not available. | |||||
| """Return True if v1 and v2 are nearly the same.""" | """Return True if v1 and v2 are nearly the same.""" | ||||
| if v1 == v2: | if v1 == v2: | ||||
| return True | return True | ||||
| return ((abs(v1 - v2) / max(abs(v1), abs(v2))) <= e) | return (abs(v1 - v2) / max(abs(v1), abs(v2))) <= e | ||||
| def similar_values_iter(v1, v2, e=1e-6): | def similar_values_iter(v1, v2, e=1e-6): | ||||
| Context not available. | |||||
| assert(len(default_values) == len(self.fbx_props[0])) | assert(len(default_values) == len(self.fbx_props[0])) | ||||
| self.default_values = default_values | self.default_values = default_values | ||||
| else: | else: | ||||
| self.default_values = (0.0) * len(self.fbx_props[0]) | self.default_values = 0.0 * len(self.fbx_props[0]) | ||||
| def __bool__(self): | def __bool__(self): | ||||
| # We are 'True' if we do have some validated keyframes... | # We are 'True' if we do have some validated keyframes... | ||||
| Context not available. | |||||
| self.bdata.parent_type == 'BONE' and self.bdata.parent_bone): | self.bdata.parent_type == 'BONE' and self.bdata.parent_bone): | ||||
| # Try to parent to a bone. | # Try to parent to a bone. | ||||
| bo_par = self.bdata.parent.pose.bones.get(self.bdata.parent_bone, None) | bo_par = self.bdata.parent.pose.bones.get(self.bdata.parent_bone, None) | ||||
| if (bo_par): | if bo_par: | ||||
| return ObjectWrapper(bo_par, self.bdata.parent) | return ObjectWrapper(bo_par, self.bdata.parent) | ||||
| else: # Fallback to mere object parenting. | else: # Fallback to mere object parenting. | ||||
| return ObjectWrapper(self.bdata.parent) | return ObjectWrapper(self.bdata.parent) | ||||
| Context not available. | |||||