You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Blender-TexTools/op_texture_select.py

84 lines
2.1 KiB
Python

import bpy
import bmesh
import operator
import math
from . import settings
from . import utilities_bake
from . import op_bake
class op(bpy.types.Operator):
bl_idname = "uv.textools_texture_select"
bl_label = "Select Texture"
bl_description = "Select the texture and bake mode"
bl_options = {'REGISTER', 'UNDO'}
name : bpy.props.StringProperty(
name="image name",
default = ""
)
@classmethod
def poll(cls, context):
return True
def execute(self, context):
select_texture(self, context)
return {'FINISHED'}
def select_texture(self, context):
print("Select "+self.name)
# Set bake mode
for mode in op_bake.modes:
if mode in self.name:
print("Found mode: "+mode)
prop = bpy.context.scene.bl_rna.properties["TT_bake_mode"]
enum_values = [e.identifier for e in prop.enum_items]
# find matching enum
for key in enum_values:
print("TT_bake "+key)
if mode in key:
print("set m: "+key)
bpy.context.scene.TT_bake_mode = key
break;
break
# Set background image
if self.name in bpy.data.images:
image = bpy.data.images[self.name]
for area in bpy.context.screen.areas:
if area.type == 'IMAGE_EDITOR':
area.spaces[0].image = image
'''
class op_ui_image_select(bpy.types.Operator):
bl_idname = "uv.textools_ui_image_select"
bl_label = "Select image"
bl_description = "Select this image"
image_name = bpy.props.StringProperty(
name="image name",
default = ""
)
@classmethod
def poll(cls, context):
return True
def execute(self, context):
# bpy.context.scene.tool_settings.use_uv_select_sync = False
# bpy.ops.mesh.select_all(action='SELECT')
print("Select image {}".format(self.image_name))
# bpy.ops.image.save_as()
return {'FINISHED'}
'''
bpy.utils.register_class(op)