2009-06-09 16:52:02 +00:00
2009-05-22 12:07:03 +00:00
import bpy
class TextureButtonsPanel ( bpy . types . Panel ) :
__space_type__ = " BUTTONS_WINDOW "
__region_type__ = " WINDOW "
__context__ = " texture "
def poll ( self , context ) :
2009-08-08 17:21:34 +00:00
return ( context . texture and context . texture . type != ' NONE ' )
2009-06-13 21:22:21 +00:00
2009-05-28 23:45:50 +00:00
class TEXTURE_PT_preview ( TextureButtonsPanel ) :
__label__ = " Preview "
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-07-21 12:57:55 +00:00
ma = context . material
la = context . lamp
wo = context . world
2009-07-25 22:31:02 +00:00
br = context . brush
2009-06-13 21:22:21 +00:00
2009-07-21 12:57:55 +00:00
if ma :
layout . template_preview ( tex , parent = ma )
elif la :
layout . template_preview ( tex , parent = la )
elif wo :
layout . template_preview ( tex , parent = wo )
2009-07-25 22:31:02 +00:00
elif br :
layout . template_preview ( tex , parent = br )
2009-07-21 01:57:46 +00:00
else :
layout . template_preview ( tex )
2009-05-28 23:45:50 +00:00
2009-07-09 09:42:34 +00:00
class TEXTURE_PT_context_texture ( TextureButtonsPanel ) :
2009-07-26 03:54:17 +00:00
__show_header__ = False
2009-05-22 12:07:03 +00:00
2009-06-07 13:36:12 +00:00
def poll ( self , context ) :
2009-07-25 22:31:02 +00:00
return ( context . material or context . world or context . lamp or context . brush or context . texture )
2009-06-07 13:36:12 +00:00
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-07-09 09:07:25 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-08-06 13:15:23 +00:00
2009-08-08 17:21:34 +00:00
id = context . material
2009-08-06 13:15:23 +00:00
if not id : id = context . lamp
if not id : id = context . world
if not id : id = context . brush
2009-06-07 13:36:12 +00:00
space = context . space_data
2009-07-28 18:54:02 +00:00
if id :
2009-07-09 19:45:27 +00:00
row = layout . row ( )
2009-07-31 16:19:26 +00:00
row . template_list ( id , " textures " , id , " active_texture_index " , rows = 2 )
2009-06-07 13:36:12 +00:00
split = layout . split ( percentage = 0.65 )
2009-07-28 18:54:02 +00:00
if id :
split . template_ID ( id , " active_texture " , new = " texture.new " )
2009-06-07 13:36:12 +00:00
elif tex :
2009-06-23 00:19:10 +00:00
split . template_ID ( space , " pin_id " )
2009-07-25 22:31:02 +00:00
2009-08-06 13:15:23 +00:00
if ( not space . pin_id ) and ( context . sculpt_object or \
2009-08-08 17:21:34 +00:00
context . vertex_paint_object or \
context . weight_paint_object or \
context . texture_paint_object \
2009-08-06 13:15:23 +00:00
) :
2009-07-25 22:31:02 +00:00
split . itemR ( space , " brush_texture " , text = " Brush " , toggle = True )
2009-05-22 12:07:03 +00:00
2009-07-25 22:31:02 +00:00
layout . itemS ( )
2009-06-07 13:36:12 +00:00
if tex :
2009-06-08 12:01:17 +00:00
split = layout . split ( percentage = 0.2 )
2009-08-08 17:21:34 +00:00
split . itemL ( text = " Type: " )
split . itemR ( tex , " type " , text = " " )
2009-05-22 12:07:03 +00:00
2009-06-09 16:52:02 +00:00
class TEXTURE_PT_mapping ( TextureButtonsPanel ) :
__label__ = " Mapping "
2009-06-16 01:25:49 +00:00
def poll ( self , context ) :
return ( context . texture_slot and context . texture and context . texture . type != ' NONE ' )
2009-06-08 19:44:07 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-07-15 19:20:59 +00:00
ma = context . material
la = context . lamp
wo = context . world
2009-07-25 22:31:02 +00:00
br = context . brush
2009-06-08 19:44:07 +00:00
tex = context . texture_slot
2009-06-10 20:50:23 +00:00
textype = context . texture
2009-06-08 19:44:07 +00:00
2009-07-25 22:31:02 +00:00
if not br :
2009-07-21 12:57:55 +00:00
split = layout . split ( percentage = 0.3 )
2009-07-25 22:31:02 +00:00
col = split . column ( )
col . itemL ( text = " Coordinates: " )
col = split . column ( )
col . itemR ( tex , " texture_coordinates " , text = " " )
if tex . texture_coordinates == ' ORCO ' :
"""
ob = context . object
if ob and ob . type == ' MESH ' :
split = layout . split ( percentage = 0.3 )
split . itemL ( text = " Mesh: " )
split . itemR ( ob . data , " texco_mesh " , text = " " )
"""
elif tex . texture_coordinates == ' UV ' :
split = layout . split ( percentage = 0.3 )
split . itemL ( text = " Layer: " )
split . itemR ( tex , " uv_layer " , text = " " )
elif tex . texture_coordinates == ' OBJECT ' :
split = layout . split ( percentage = 0.3 )
split . itemL ( text = " Object: " )
split . itemR ( tex , " object " , text = " " )
2009-07-21 12:57:55 +00:00
if ma :
2009-06-10 20:50:23 +00:00
split = layout . split ( percentage = 0.3 )
2009-08-08 17:21:34 +00:00
split . itemL ( text = " Projection: " )
split . itemR ( tex , " mapping " , text = " " )
2009-06-10 20:50:23 +00:00
2009-07-15 19:20:59 +00:00
split = layout . split ( )
col = split . column ( )
if tex . texture_coordinates in ( ' ORCO ' , ' UV ' ) :
col . itemR ( tex , " from_dupli " )
elif tex . texture_coordinates == ' OBJECT ' :
col . itemR ( tex , " from_original " )
else :
col . itemL ( )
col = split . column ( )
row = col . row ( )
row . itemR ( tex , " x_mapping " , text = " " )
row . itemR ( tex , " y_mapping " , text = " " )
row . itemR ( tex , " z_mapping " , text = " " )
2009-06-09 16:04:07 +00:00
row = layout . row ( )
row . column ( ) . itemR ( tex , " offset " )
row . column ( ) . itemR ( tex , " size " )
2009-06-09 16:52:02 +00:00
class TEXTURE_PT_influence ( TextureButtonsPanel ) :
__label__ = " Influence "
2009-06-16 01:25:49 +00:00
def poll ( self , context ) :
2009-07-25 22:31:02 +00:00
return ( context . texture_slot and context . texture and context . texture . type != ' NONE ' and ( not context . brush ) )
2009-06-09 16:52:02 +00:00
def draw ( self , context ) :
layout = self . layout
2009-06-13 21:22:21 +00:00
2009-07-15 19:20:59 +00:00
ma = context . material
la = context . lamp
wo = context . world
2009-07-25 22:31:02 +00:00
br = context . brush
2009-06-09 16:52:02 +00:00
textype = context . texture
tex = context . texture_slot
2009-07-21 12:57:55 +00:00
def factor_but ( layout , active , toggle , factor , name ) :
row = layout . row ( align = True )
row . itemR ( tex , toggle , text = " " )
sub = row . row ( )
sub . active = active
sub . itemR ( tex , factor , text = name , slider = True )
2009-06-08 19:44:07 +00:00
2009-07-15 19:20:59 +00:00
if ma :
split = layout . split ( )
col = split . column ( )
2009-07-21 12:57:55 +00:00
col . itemL ( text = " Diffuse: " )
factor_but ( col , tex . map_diffuse , " map_diffuse " , " diffuse_factor " , " Intensity " )
factor_but ( col , tex . map_colordiff , " map_colordiff " , " colordiff_factor " , " Color " )
factor_but ( col , tex . map_alpha , " map_alpha " , " alpha_factor " , " Alpha " )
factor_but ( col , tex . map_translucency , " map_translucency " , " translucency_factor " , " Translucency " )
col . itemL ( text = " Specular: " )
factor_but ( col , tex . map_specular , " map_specular " , " specular_factor " , " Intensity " )
factor_but ( col , tex . map_colorspec , " map_colorspec " , " colorspec_factor " , " Color " )
factor_but ( col , tex . map_hardness , " map_hardness " , " hardness_factor " , " Hardness " )
2009-07-15 19:20:59 +00:00
col = split . column ( )
2009-07-21 12:57:55 +00:00
col . itemL ( text = " Shading: " )
factor_but ( col , tex . map_ambient , " map_ambient " , " ambient_factor " , " Ambient " )
factor_but ( col , tex . map_emit , " map_emit " , " emit_factor " , " Emit " )
factor_but ( col , tex . map_mirror , " map_mirror " , " mirror_factor " , " Mirror " )
factor_but ( col , tex . map_raymir , " map_raymir " , " raymir_factor " , " Ray Mirror " )
col . itemL ( text = " Geometry: " )
factor_but ( col , tex . map_normal , " map_normal " , " normal_factor " , " Normal " )
factor_but ( col , tex . map_warp , " map_warp " , " warp_factor " , " Warp " )
factor_but ( col , tex . map_displacement , " map_displacement " , " displacement_factor " , " Displace " )
2009-08-08 17:21:34 +00:00
#sub = col.column()
#sub.active = tex.map_translucency or tex.map_emit or tex.map_alpha or tex.map_raymir or tex.map_hardness or tex.map_ambient or tex.map_specularity or tex.map_reflection or tex.map_mirror
#sub.itemR(tex, "default_value", text="Amount", slider=True)
2009-07-15 19:20:59 +00:00
elif la :
row = layout . row ( )
2009-07-21 12:57:55 +00:00
factor_but ( row , tex . map_color , " map_color " , " color_factor " , " Color " )
factor_but ( row , tex . map_shadow , " map_shadow " , " shadow_factor " , " Shadow " )
elif wo :
2009-07-15 19:20:59 +00:00
split = layout . split ( )
2009-08-08 17:21:34 +00:00
2009-07-15 19:20:59 +00:00
col = split . column ( )
2009-07-21 12:57:55 +00:00
factor_but ( col , tex . map_blend , " map_blend " , " blend_factor " , " Blend " )
factor_but ( col , tex . map_horizon , " map_horizon " , " horizon_factor " , " Horizon " )
2009-07-15 19:20:59 +00:00
col = split . column ( )
2009-07-21 12:57:55 +00:00
factor_but ( col , tex . map_zenith_up , " map_zenith_up " , " zenith_up_factor " , " Zenith Up " )
factor_but ( col , tex . map_zenith_down , " map_zenith_down " , " zenith_down_factor " , " Zenith Down " )
2009-07-15 19:20:59 +00:00
2009-07-21 12:57:55 +00:00
layout . itemS ( )
2009-08-08 17:21:34 +00:00
2009-07-21 12:57:55 +00:00
split = layout . split ( )
2009-07-15 19:20:59 +00:00
2009-07-21 12:57:55 +00:00
col = split . column ( )
col . itemR ( tex , " blend_type " , text = " Blend " )
col . itemR ( tex , " rgb_to_intensity " )
2009-08-08 17:21:34 +00:00
sub = col . column ( )
sub . active = tex . rgb_to_intensity
sub . itemR ( tex , " color " , text = " " )
2009-07-15 19:20:59 +00:00
2009-07-21 12:57:55 +00:00
col = split . column ( )
col . itemR ( tex , " negate " , text = " Negative " )
col . itemR ( tex , " stencil " )
if ma or wo :
col . itemR ( tex , " default_value " , text = " DVar " , slider = True )
2009-06-08 19:44:07 +00:00
2009-06-03 00:17:35 +00:00
class TEXTURE_PT_colors ( TextureButtonsPanel ) :
__label__ = " Colors "
2009-06-16 01:25:49 +00:00
__default_closed__ = True
2009-06-03 00:17:35 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-07-21 12:57:55 +00:00
layout . itemR ( tex , " use_color_ramp " , text = " Ramp " )
if tex . use_color_ramp :
2009-06-03 00:17:35 +00:00
layout . template_color_ramp ( tex . color_ramp , expand = True )
2009-07-21 12:57:55 +00:00
split = layout . split ( )
2009-08-08 17:21:34 +00:00
split . itemR ( tex , " rgb_factor " , text = " Multiply RGB " )
2009-06-03 00:17:35 +00:00
2009-06-08 12:01:17 +00:00
col = split . column ( )
col . itemL ( text = " Adjust: " )
col . itemR ( tex , " brightness " )
col . itemR ( tex , " contrast " )
2009-08-08 17:21:34 +00:00
# Texture Type Panels #
2009-06-03 00:17:35 +00:00
2009-05-22 12:07:03 +00:00
class TEXTURE_PT_clouds ( TextureButtonsPanel ) :
__label__ = " Clouds "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' CLOUDS ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " stype " , expand = True )
layout . itemL ( text = " Noise: " )
layout . itemR ( tex , " noise_type " , text = " Type " , expand = True )
2009-05-26 02:49:46 +00:00
layout . itemR ( tex , " noise_basis " , text = " Basis " )
2009-05-22 12:07:03 +00:00
2009-08-08 17:21:34 +00:00
flow = layout . column_flow ( )
flow . itemR ( tex , " noise_size " , text = " Size " )
flow . itemR ( tex , " noise_depth " , text = " Depth " )
flow . itemR ( tex , " nabla " , text = " Nabla " )
2009-05-22 12:07:03 +00:00
class TEXTURE_PT_wood ( TextureButtonsPanel ) :
__label__ = " Wood "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' WOOD ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
2009-05-26 02:49:46 +00:00
layout . itemR ( tex , " noisebasis2 " , expand = True )
2009-06-08 12:01:17 +00:00
layout . itemR ( tex , " stype " , expand = True )
col = layout . column ( )
col . active = tex . stype in ( ' RINGNOISE ' , ' BANDNOISE ' )
col . itemL ( text = " Noise: " )
col . row ( ) . itemR ( tex , " noise_type " , text = " Type " , expand = True )
col . itemR ( tex , " noise_basis " , text = " Basis " )
2009-05-22 12:07:03 +00:00
2009-08-08 17:21:34 +00:00
flow = layout . column_flow ( )
flow . active = tex . stype in ( ' RINGNOISE ' , ' BANDNOISE ' )
flow . itemR ( tex , " noise_size " , text = " Size " )
flow . itemR ( tex , " turbulence " )
flow . itemR ( tex , " nabla " )
2009-05-22 12:07:03 +00:00
class TEXTURE_PT_marble ( TextureButtonsPanel ) :
__label__ = " Marble "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' MARBLE ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " stype " , expand = True )
layout . itemR ( tex , " noisebasis2 " , expand = True )
layout . itemL ( text = " Noise: " )
layout . itemR ( tex , " noise_type " , text = " Type " , expand = True )
2009-05-26 02:49:46 +00:00
layout . itemR ( tex , " noise_basis " , text = " Basis " )
2009-05-22 12:07:03 +00:00
2009-08-08 17:21:34 +00:00
flow = layout . column_flow ( )
flow . itemR ( tex , " noise_size " , text = " Size " )
flow . itemR ( tex , " noise_depth " , text = " Depth " )
flow . itemR ( tex , " turbulence " )
flow . itemR ( tex , " nabla " )
2009-05-22 12:07:03 +00:00
class TEXTURE_PT_magic ( TextureButtonsPanel ) :
__label__ = " Magic "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' MAGIC ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
row = layout . row ( )
row . itemR ( tex , " noise_depth " , text = " Depth " )
row . itemR ( tex , " turbulence " )
class TEXTURE_PT_blend ( TextureButtonsPanel ) :
__label__ = " Blend "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' BLEND ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " progression " )
layout . itemR ( tex , " flip_axis " )
class TEXTURE_PT_stucci ( TextureButtonsPanel ) :
__label__ = " Stucci "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' STUCCI ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " stype " , expand = True )
layout . itemL ( text = " Noise: " )
layout . itemR ( tex , " noise_type " , text = " Type " , expand = True )
2009-05-26 02:49:46 +00:00
layout . itemR ( tex , " noise_basis " , text = " Basis " )
2009-05-22 12:07:03 +00:00
row = layout . row ( )
row . itemR ( tex , " noise_size " , text = " Size " )
row . itemR ( tex , " turbulence " )
class TEXTURE_PT_image ( TextureButtonsPanel ) :
2009-07-21 12:57:55 +00:00
__label__ = " Image "
def poll ( self , context ) :
tex = context . texture
return ( tex and tex . type == ' IMAGE ' )
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-07-21 12:57:55 +00:00
tex = context . texture
layout . template_texture_image ( tex )
class TEXTURE_PT_image_sampling ( TextureButtonsPanel ) :
__label__ = " Image Sampling "
__default_closed__ = True
2009-05-22 12:07:03 +00:00
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' IMAGE ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-07-21 12:57:55 +00:00
slot = context . texture_slot
2009-05-22 12:07:03 +00:00
split = layout . split ( )
2009-07-21 12:57:55 +00:00
"""
2009-08-08 17:21:34 +00:00
col = split . column ( )
col . itemR ( tex , " flip_axis " )
col . itemR ( tex , " normal_map " )
2009-07-21 12:57:55 +00:00
if slot :
2009-08-08 17:21:34 +00:00
row = col . row ( )
2009-07-21 12:57:55 +00:00
row . active = tex . normal_map
row . itemR ( slot , " normal_map_space " , text = " " )
"""
2009-08-08 17:21:34 +00:00
col = split . column ( )
col . itemL ( text = " Alpha: " )
col . itemR ( tex , " use_alpha " , text = " Use " )
col . itemR ( tex , " calculate_alpha " , text = " Calculate " )
col . itemR ( tex , " invert_alpha " , text = " Invert " )
2009-07-21 12:57:55 +00:00
2009-08-08 17:21:34 +00:00
col . itemL ( text = " Flip: " )
col . itemR ( tex , " flip_axis " , text = " X/Y Axis " )
2009-07-21 12:57:55 +00:00
2009-08-08 17:21:34 +00:00
col = split . column ( )
col . itemL ( text = " Filter: " )
col . itemR ( tex , " filter " , text = " " )
col . itemR ( tex , " mipmap " )
row = col . row ( )
2009-07-21 12:57:55 +00:00
row . active = tex . mipmap
2009-08-08 17:21:34 +00:00
row . itemR ( tex , " mipmap_gauss " , text = " Gauss " )
col . itemR ( tex , " interpolation " )
2009-07-21 12:57:55 +00:00
if tex . mipmap and tex . filter != ' DEFAULT ' :
if tex . filter == ' FELINE ' :
2009-08-08 17:21:34 +00:00
col . itemR ( tex , " filter_probes " , text = " Probes " )
2009-07-21 12:57:55 +00:00
else :
2009-08-08 17:21:34 +00:00
col . itemR ( tex , " filter_eccentricity " , text = " Eccentricity " )
2009-05-22 12:07:03 +00:00
2009-07-21 12:57:55 +00:00
class TEXTURE_PT_image_mapping ( TextureButtonsPanel ) :
__label__ = " Image Mapping "
__default_closed__ = True
2009-05-22 12:07:03 +00:00
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' IMAGE ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " extension " )
split = layout . split ( )
if tex . extension == ' REPEAT ' :
2009-08-08 17:21:34 +00:00
col = split . column ( align = True )
col . itemL ( text = " Repeat: " )
col . itemR ( tex , " repeat_x " , text = " X " )
col . itemR ( tex , " repeat_y " , text = " Y " )
col = split . column ( align = True )
col . itemL ( text = " Mirror: " )
col . itemR ( tex , " mirror_x " , text = " X " )
col . itemR ( tex , " mirror_y " , text = " Y " )
2009-05-22 12:07:03 +00:00
elif tex . extension == ' CHECKER ' :
2009-08-08 17:21:34 +00:00
col = split . column ( align = True )
row = col . row ( )
2009-07-21 12:57:55 +00:00
row . itemR ( tex , " checker_even " , text = " Even " )
row . itemR ( tex , " checker_odd " , text = " Odd " )
2009-08-08 17:21:34 +00:00
split . itemR ( tex , " checker_distance " , text = " Distance " )
2009-07-21 12:57:55 +00:00
layout . itemS ( )
split = layout . split ( )
2009-08-08 17:21:34 +00:00
col = split . column ( align = True )
#col.itemR(tex, "crop_rectangle")
col . itemL ( text = " Crop Minimum: " )
col . itemR ( tex , " crop_min_x " , text = " X " )
col . itemR ( tex , " crop_min_y " , text = " Y " )
col = split . column ( align = True )
col . itemL ( text = " Crop Maximum: " )
col . itemR ( tex , " crop_max_x " , text = " X " )
col . itemR ( tex , " crop_max_y " , text = " Y " )
2009-05-22 12:07:03 +00:00
class TEXTURE_PT_plugin ( TextureButtonsPanel ) :
__label__ = " Plugin "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' PLUGIN ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemL ( text = " Nothing yet " )
class TEXTURE_PT_envmap ( TextureButtonsPanel ) :
__label__ = " Environment Map "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' ENVIRONMENT_MAP ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
layout . itemL ( text = " Nothing yet " )
class TEXTURE_PT_musgrave ( TextureButtonsPanel ) :
__label__ = " Musgrave "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' MUSGRAVE ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
2009-05-26 02:49:46 +00:00
layout . itemR ( tex , " musgrave_type " )
2009-05-22 12:07:03 +00:00
split = layout . split ( )
2009-08-08 17:21:34 +00:00
col = split . column ( )
col . itemR ( tex , " highest_dimension " , text = " Dimension " )
col . itemR ( tex , " lacunarity " )
col . itemR ( tex , " octaves " )
col = split . column ( )
2009-05-22 12:07:03 +00:00
if ( tex . musgrave_type in ( ' HETERO_TERRAIN ' , ' RIDGED_MULTIFRACTAL ' , ' HYBRID_MULTIFRACTAL ' ) ) :
2009-08-08 17:21:34 +00:00
col . itemR ( tex , " offset " )
2009-05-22 12:07:03 +00:00
if ( tex . musgrave_type in ( ' RIDGED_MULTIFRACTAL ' , ' HYBRID_MULTIFRACTAL ' ) ) :
2009-08-08 17:21:34 +00:00
col . itemR ( tex , " gain " )
col . itemR ( tex , " noise_intensity " , text = " Intensity " )
2009-05-22 12:07:03 +00:00
layout . itemL ( text = " Noise: " )
2009-05-26 02:49:46 +00:00
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " noise_basis " , text = " Basis " )
row = layout . row ( )
row . itemR ( tex , " noise_size " , text = " Size " )
row . itemR ( tex , " nabla " )
class TEXTURE_PT_voronoi ( TextureButtonsPanel ) :
__label__ = " Voronoi "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' VORONOI ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-22 12:07:03 +00:00
split = layout . split ( )
2009-08-08 17:21:34 +00:00
col = split . column ( )
col . itemL ( text = " Distance Metric: " )
col . itemR ( tex , " distance_metric " , text = " " )
sub = col . column ( )
sub . active = tex . distance_metric == ' MINKOVSKY '
sub . itemR ( tex , " minkovsky_exponent " , text = " Exponent " )
col . itemL ( text = " Coloring: " )
col . itemR ( tex , " coloring " , text = " " )
col . itemR ( tex , " noise_intensity " , text = " Intensity " )
col = split . column ( align = True )
col . itemL ( text = " Feature Weights: " )
col . itemR ( tex , " weight_1 " , text = " 1 " , slider = True )
col . itemR ( tex , " weight_2 " , text = " 2 " , slider = True )
col . itemR ( tex , " weight_3 " , text = " 3 " , slider = True )
col . itemR ( tex , " weight_4 " , text = " 4 " , slider = True )
2009-05-22 12:07:03 +00:00
layout . itemL ( text = " Noise: " )
row = layout . row ( )
row . itemR ( tex , " noise_size " , text = " Size " )
row . itemR ( tex , " nabla " )
class TEXTURE_PT_distortednoise ( TextureButtonsPanel ) :
__label__ = " Distorted Noise "
def poll ( self , context ) :
2009-06-03 00:17:35 +00:00
tex = context . texture
return ( tex and tex . type == ' DISTORTED_NOISE ' )
2009-05-22 12:07:03 +00:00
def draw ( self , context ) :
layout = self . layout
2009-08-08 17:21:34 +00:00
2009-06-03 00:17:35 +00:00
tex = context . texture
2009-05-25 14:58:10 +00:00
2009-05-22 12:07:03 +00:00
layout . itemR ( tex , " noise_distortion " )
layout . itemR ( tex , " noise_basis " , text = " Basis " )
2009-08-08 17:21:34 +00:00
flow = layout . column_flow ( )
flow . itemR ( tex , " distortion_amount " , text = " Distortion " )
flow . itemR ( tex , " noise_size " , text = " Size " )
flow . itemR ( tex , " nabla " )
2009-05-22 12:07:03 +00:00
2009-07-09 09:42:34 +00:00
bpy . types . register ( TEXTURE_PT_context_texture )
2009-05-28 23:45:50 +00:00
bpy . types . register ( TEXTURE_PT_preview )
2009-05-22 12:07:03 +00:00
bpy . types . register ( TEXTURE_PT_clouds )
bpy . types . register ( TEXTURE_PT_wood )
bpy . types . register ( TEXTURE_PT_marble )
bpy . types . register ( TEXTURE_PT_magic )
bpy . types . register ( TEXTURE_PT_blend )
bpy . types . register ( TEXTURE_PT_stucci )
bpy . types . register ( TEXTURE_PT_image )
2009-07-21 12:57:55 +00:00
bpy . types . register ( TEXTURE_PT_image_sampling )
bpy . types . register ( TEXTURE_PT_image_mapping )
2009-05-22 12:07:03 +00:00
bpy . types . register ( TEXTURE_PT_plugin )
bpy . types . register ( TEXTURE_PT_envmap )
bpy . types . register ( TEXTURE_PT_musgrave )
bpy . types . register ( TEXTURE_PT_voronoi )
2009-05-25 14:58:10 +00:00
bpy . types . register ( TEXTURE_PT_distortednoise )
2009-06-08 19:44:07 +00:00
bpy . types . register ( TEXTURE_PT_colors )
2009-06-09 16:52:02 +00:00
bpy . types . register ( TEXTURE_PT_mapping )
2009-06-16 01:25:49 +00:00
bpy . types . register ( TEXTURE_PT_influence )