Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormeta-androcto <meta.androcto1@gmail.com>2019-05-22 02:22:10 +0300
committermeta-androcto <meta.androcto1@gmail.com>2019-05-22 02:22:10 +0300
commita953af8c9e3ab7ee3fa2fec171a525f5f9b6cedd (patch)
tree5fcefca96909b7d4636842348b4d3e32b8d7b021 /btrace/bTrace_props.py
parent07ec645862275ffe2d60e2d6481080aa0ae8b1f0 (diff)
btrace: initial update for 2.8
Diffstat (limited to 'btrace/bTrace_props.py')
-rw-r--r--btrace/bTrace_props.py391
1 files changed, 4 insertions, 387 deletions
diff --git a/btrace/bTrace_props.py b/btrace/bTrace_props.py
index 3f0fed74..4476e0f6 100644
--- a/btrace/bTrace_props.py
+++ b/btrace/bTrace_props.py
@@ -537,7 +537,7 @@ class TracerProperties(PropertyGroup):
# Toolbar show/hide booleans for tool options
btrace_menu_items = [
- ('tool_help', "Help",
+ ('tool_help', "Choose Tool",
"Pick one of the options below", "INFO", 0),
('tool_objectTrace', "Object Trace",
"Trace selected mesh object with a curve", "FORCE_MAGNETIC", 1),
@@ -545,8 +545,8 @@ class TracerProperties(PropertyGroup):
"Connect objects with a curve controlled by hooks", "OUTLINER_OB_EMPTY", 2),
('tool_meshFollow', "Mesh Follow",
"Follow selection items on animated mesh object", "DRIVER", 3),
- ('tool_handwrite', "Handwriting",
- "Create and Animate curve using the grease pencil", "BRUSH_DATA", 4),
+ # ('tool_handwrite', "Handwriting",
+ # "Create and Animate curve using the grease pencil", "BRUSH_DATA", 4),
('tool_particleTrace', "Particle Trace",
"Trace particle path with a curve", "PARTICLES", 5),
('tool_particleConnect', "Particle Connect",
@@ -558,6 +558,7 @@ class TracerProperties(PropertyGroup):
('tool_colorblender', "Color Blender",
"Pick the color of the created curves", "COLOR", 9),
]
+
btrace_toolmenu: EnumProperty(
name="Tools",
items=btrace_menu_items,
@@ -566,387 +567,3 @@ class TracerProperties(PropertyGroup):
)
-# Draw Brush panel in Toolbar
-class addTracerObjectPanel(Panel):
- bl_idname = "BTRACE_PT_object_brush"
- bl_label = "Btrace"
- bl_space_type = "VIEW_3D"
- bl_region_type = "TOOLS"
- bl_context = "objectmode"
- bl_category = "Create"
- bl_options = {'DEFAULT_CLOSED'}
-
- def draw(self, context):
- layout = self.layout
- Btrace = context.window_manager.curve_tracer
- addon_prefs = context.preferences.addons["btrace"].preferences
- switch_expand = addon_prefs.expand_enum
- obj = context.object
-
- # Color Blender Panel options
- def color_blender():
- # Buttons for Color Blender
- row = box.row()
- row.label(text="Color palette")
- row.prop(Btrace, "mmColors", text="")
-
- # Show Custom Colors if selected
- if Btrace.mmColors == 'CUSTOM':
- row = box.row(align=True)
- for i in range(1, 9):
- row.prop(Btrace, "mmColor" + str(i), text="")
- # Show Earth Colors
- elif Btrace.mmColors == 'BW':
- row = box.row(align=True)
- row.prop(Btrace, "bwColor1", text="")
- row.prop(Btrace, "bwColor2", text="")
- # Show Earth Colors
- elif Btrace.mmColors == 'BRIGHT':
- row = box.row(align=True)
- for i in range(1, 5):
- row.prop(Btrace, "brightColor" + str(i), text="")
- # Show Earth Colors
- elif Btrace.mmColors == 'EARTH':
- row = box.row(align=True)
- for i in range(1, 6):
- row.prop(Btrace, "earthColor" + str(i), text="")
- # Show Earth Colors
- elif Btrace.mmColors == 'GREENBLUE':
- row = box.row(align=True)
- for i in range(1, 4):
- row.prop(Btrace, "greenblueColor" + str(i), text="")
- elif Btrace.mmColors == 'RANDOM':
- row = box.row()
-
- # Curve noise settings
- def curve_noise():
- row = box.row()
- row.label(text="F-Curve Noise", icon='RNDCURVE')
- row = box.row(align=True)
- row.prop(Btrace, "fcnoise_rot", toggle=True)
- row.prop(Btrace, "fcnoise_loc", toggle=True)
- row.prop(Btrace, "fcnoise_scale", toggle=True)
-
- col = box.column(align=True)
- col.prop(Btrace, "fcnoise_amp")
- col.prop(Btrace, "fcnoise_timescale")
- box.prop(Btrace, "fcnoise_key")
-
- # Curve Panel options
- def curve_settings():
- # Button for curve options
- row = self.layout.row()
- row = box.row(align=True)
-
- row.prop(Btrace, "show_curve_settings",
- icon='CURVE_BEZCURVE', text="Curve Settings")
- row.prop(Btrace, "material_settings",
- icon='MATERIAL_DATA', text="Material Settings")
-
- if Btrace.material_settings:
- row = box.row()
- row.label(text="Material Settings", icon='COLOR')
- row = box.row()
- row.prop(Btrace, "trace_mat_random")
- if not Btrace.trace_mat_random:
- row = box.row()
- row.prop(Btrace, "trace_mat_color", text="")
- else:
- row.prop(Btrace, "mat_run_color_blender")
- if Btrace.mat_run_color_blender:
- row = box.row()
- row.operator("object.colorblenderclear",
- text="Reset Material Keyframes",
- icon="KEY_DEHLT")
- row.prop(Btrace, "mmSkip", text="Keyframe every")
- color_blender()
- row = box.row()
-
- if Btrace.show_curve_settings:
- # selected curve options
- if len(context.selected_objects) > 0 and obj.type == 'CURVE':
- col = box.column(align=True)
- col.label(text="Edit Curves for:", icon='IPO_BEZIER')
- col.separator()
- col.label(text="Selected Curve Bevel Options")
- row = col.row(align=True)
- row.prop(obj.data, "bevel_depth", text="Depth")
- row.prop(obj.data, "bevel_resolution", text="Resolution")
- row = col.row(align=True)
- row.prop(obj.data, "resolution_u")
- else: # For new curve
- box.label(text="New Curve Settings", icon='CURVE_BEZCURVE')
- box.prop(Btrace, "curve_spline")
- box.prop(Btrace, "curve_handle")
- box.label(text="Bevel Options")
- col = box.column(align=True)
- row = col.row(align=True)
- row.prop(Btrace, "curve_depth", text="Depth")
- row.prop(Btrace, "curve_resolution", text="Resolution")
- row = col.row(align=True)
- row.prop(Btrace, "curve_u")
-
- # Grow Animation Panel options
- def add_grow():
- # Button for grow animation option
- row = box.row()
- row.label(text="Animate Final Curve", icon="SPACE2")
- row = box.row()
- row.prop(Btrace, "animate", text="Add Grow Curve Animation", icon="META_BALL")
- box.separator()
- if Btrace.animate:
- box.label(text="Frame Animation Settings:", icon="META_BALL")
- col = box.column(align=True)
- col.prop(Btrace, "anim_auto")
- if not Btrace.anim_auto:
- row = col.row(align=True)
- row.prop(Btrace, "anim_f_start")
- row.prop(Btrace, "anim_length")
- row = col.row(align=True)
- row.prop(Btrace, "anim_delay")
- row.prop(Btrace, "anim_f_fade")
-
- box.label(text="Additional Settings")
- row = box.row()
- row.prop(Btrace, "anim_tails")
- row.prop(Btrace, "anim_keepr")
-
- # Start Btrace Panel
- if switch_expand == 'list':
- layout.label(text="Available Tools:", icon="COLLAPSEMENU")
- col = layout.column(align=True)
- col.prop(Btrace, "btrace_toolmenu", text="")
- elif switch_expand == 'col':
- col = layout.column(align=True)
- col.prop(Btrace, "btrace_toolmenu", expand=True)
- elif switch_expand == 'row':
- row = layout.row(align=True)
- row.alignment = 'CENTER'
- row.prop(Btrace, "btrace_toolmenu", text="", expand=True)
-
- # Start Object Tools
- sel = context.selected_objects
-
- # Default option (can be expanded into help)
- if Btrace.btrace_toolmenu == 'tool_help':
- row = layout.row()
- row.label(text="Pick an option", icon="HELP")
-
- # Object Trace
- elif Btrace.btrace_toolmenu == 'tool_objectTrace':
- row = layout.row()
- row.label(text=" Trace Tool:", icon="FORCE_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="Object Trace", icon="FORCE_MAGNETIC")
- row.operator("object.btobjecttrace", text="Run!", icon="PLAY")
- row = box.row()
- row.prop(Btrace, "settings_toggle", icon="MODIFIER", text="Settings")
- myselected = "Selected %d" % len(context.selected_objects)
- row.label(text=myselected)
- if Btrace.settings_toggle:
- box.label(text="Edge Type for Curves:", icon="IPO_CONSTANT")
- row = box.row(align=True)
- row.prop(Btrace, "convert_edgetype", text="")
- box.prop(Btrace, "object_duplicate")
- if len(sel) > 1:
- box.prop(Btrace, "convert_joinbefore")
- else:
- Btrace.convert_joinbefore = False
- row = box.row()
- row.prop(Btrace, "distort_curve")
- if Btrace.distort_curve:
- col = box.column(align=True)
- col.prop(Btrace, "distort_modscale")
- col.prop(Btrace, "distort_noise")
- row = box.row()
- curve_settings() # Show Curve/material settings
- add_grow() # Grow settings here
-
- # Objects Connect
- elif Btrace.btrace_toolmenu == 'tool_objectsConnect':
- row = layout.row()
- row.label(text=" Trace Tool:", icon="FORCE_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="Objects Connect", icon="OUTLINER_OB_EMPTY")
- row.operator("object.btobjectsconnect", text="Run!", icon="PLAY")
- row = box.row()
- row.prop(Btrace, "settings_toggle", icon='MODIFIER', text='Settings')
- row.label(text="")
- if Btrace.settings_toggle:
- row = box.row()
- row.prop(Btrace, "respect_order", text="Selection Options")
- if Btrace.respect_order:
- box.operator("object.select_order",
- text="Click to start order selection",
- icon='UV_SYNC_SELECT')
- row = box.row()
- row.prop(Btrace, "connect_noise", text="Add F-Curve Noise")
- if Btrace.connect_noise:
- curve_noise() # Show Curve Noise settings
-
- curve_settings() # Show Curve/material settings
- add_grow() # Grow settings here
-
- # Mesh Follow
- elif Btrace.btrace_toolmenu == 'tool_meshFollow':
- row = layout.row()
- row.label(text=" Trace Tool:", icon="FORCE_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="Mesh Follow", icon="DRIVER")
- row.operator("object.btmeshfollow", text="Run!", icon="PLAY")
- row = box.row()
- if Btrace.fol_mesh_type == 'OBJECT':
- a, b = "Trace Object", "SNAP_VOLUME"
- if Btrace.fol_mesh_type == 'VERTS':
- a, b = "Trace Verts", "SNAP_VERTEX"
- if Btrace.fol_mesh_type == 'EDGES':
- a, b = "Trace Edges", "SNAP_EDGE"
- if Btrace.fol_mesh_type == 'FACES':
- a, b = "Trace Faces", "SNAP_FACE"
- row.prop(Btrace, "settings_toggle", icon='MODIFIER', text='Settings')
- row.label(text=a, icon=b)
- if Btrace.settings_toggle:
- col = box.column(align=True)
- row = col.row(align=True)
- row.prop(Btrace, "fol_mesh_type", expand=True)
- row = col.row(align=True)
- if Btrace.fol_mesh_type != 'OBJECT':
- row.prop(Btrace, "fol_sel_option", expand=True)
- row = box.row()
- if Btrace.fol_sel_option == 'RANDOM':
- row.label(text="Random Select of Total")
- row.prop(Btrace, "fol_perc_verts", text="%")
- if Btrace.fol_sel_option == 'CUSTOM':
- row.label(text="Choose selection in Edit Mode")
- if Btrace.fol_sel_option == 'ALL':
- row.label(text="Select All items")
- col = box.column(align=True)
- col.label(text="Time Options", icon="TIME")
- col.prop(Btrace, "particle_step")
- row = col.row(align=True)
- row.prop(Btrace, "fol_start_frame")
- row.prop(Btrace, "fol_end_frame")
- curve_settings() # Show Curve/material settings
- add_grow() # Grow settings here
-
- # Handwriting Tools
- elif Btrace.btrace_toolmenu == 'tool_handwrite':
- row = layout.row()
- row.label(text=" Trace Tool:", icon="FORCE_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text='Handwriting', icon='BRUSH_DATA')
- row.operator("curve.btwriting", text="Run!", icon='PLAY')
- row = box.row()
- row = box.row()
- row.label(text='Grease Pencil Writing Tools')
- col = box.column(align=True)
- row = col.row(align=True)
- row.operator("gpencil.draw", text="Draw", icon='BRUSH_DATA').mode = 'DRAW'
- row.operator("gpencil.draw", text="Poly", icon='VPAINT_HLT').mode = 'DRAW_POLY'
- row = col.row(align=True)
- row.operator("gpencil.draw", text="Line", icon='ZOOMOUT').mode = 'DRAW_STRAIGHT'
- row.operator("gpencil.draw", text="Erase", icon='TPAINT_HLT').mode = 'ERASER'
- row = box.row()
- row.operator("gpencil.data_unlink", text="Delete Grease Pencil Layer", icon="CANCEL")
- row = box.row()
- curve_settings() # Show Curve/material settings
- add_grow() # Grow settings here
-
- # Particle Trace
- elif Btrace.btrace_toolmenu == 'tool_particleTrace':
- row = layout.row()
- row.label(text=" Trace Tool:", icon="FORCE_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="Particle Trace", icon="PARTICLES")
- row.operator("particles.particletrace", text="Run!", icon="PLAY")
- row = box.row()
- row.prop(Btrace, "settings_toggle", icon='MODIFIER', text='Settings')
- row.label(text="")
- if Btrace.settings_toggle:
- box.prop(Btrace, "particle_step")
- row = box.row()
- row.prop(Btrace, "curve_join")
- curve_settings() # Show Curve/material settings
- add_grow() # Grow settings here
-
- # Connect Particles
- elif Btrace.btrace_toolmenu == 'tool_particleConnect':
- row = layout.row()
- row.label(text=" Trace Tool:", icon="FORCE_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text='Particle Connect', icon='MOD_PARTICLES')
- row.operator("particles.connect", icon="PLAY", text='Run!')
- row = box.row()
- row.prop(Btrace, "settings_toggle", icon='MODIFIER', text='Settings')
- row.label(text="")
- if Btrace.settings_toggle:
- box.prop(Btrace, "particle_step")
- row = box.row()
- row.prop(Btrace, 'particle_auto')
- if not Btrace.particle_auto:
- row = box.row(align=True)
- row.prop(Btrace, 'particle_f_start')
- row.prop(Btrace, 'particle_f_end')
- curve_settings() # Show Curve/material settings
- add_grow() # Grow settings here
-
- # Grow Animation
- elif Btrace.btrace_toolmenu == 'tool_growCurve':
- row = layout.row()
- row.label(text=" Curve Tool:", icon="OUTLINER_OB_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="Grow Curve", icon="META_BALL")
- row.operator("curve.btgrow", text="Run!", icon="PLAY")
- row = box.row()
- row.prop(Btrace, "settings_toggle", icon="MODIFIER", text="Settings")
- row.operator("object.btreset", icon="KEY_DEHLT")
- if Btrace.settings_toggle:
- box.label(text="Frame Animation Settings:")
- col = box.column(align=True)
- col.prop(Btrace, "anim_auto")
- if not Btrace.anim_auto:
- row = col.row(align=True)
- row.prop(Btrace, "anim_f_start")
- row.prop(Btrace, "anim_length")
- row = col.row(align=True)
- row.prop(Btrace, "anim_delay")
- row.prop(Btrace, "anim_f_fade")
-
- box.label(text="Additional Settings")
- row = box.row()
- row.prop(Btrace, "anim_tails")
- row.prop(Btrace, "anim_keepr")
-
- # F-Curve Noise Curve
- elif Btrace.btrace_toolmenu == 'tool_fcurve':
- row = layout.row()
- row.label(text=" Curve Tool:", icon="OUTLINER_OB_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="F-Curve Noise", icon='RNDCURVE')
- row.operator("object.btfcnoise", icon='PLAY', text="Run!")
- row = box.row()
- row.prop(Btrace, "settings_toggle", icon='MODIFIER', text='Settings')
- row.operator("object.btreset", icon='KEY_DEHLT')
- if Btrace.settings_toggle:
- curve_noise()
-
- # Color Blender
- elif Btrace.btrace_toolmenu == 'tool_colorblender':
- row = layout.row()
- row.label(text=" Curve/Object Tool:", icon="OUTLINER_OB_CURVE")
- box = self.layout.box()
- row = box.row()
- row.label(text="Color Blender", icon="COLOR")
- row.operator("object.colorblender", icon='PLAY', text="Run!")
- row = box.row()
- row.operator("object.colorblenderclear", text="Reset Keyframes", icon="KEY_DEHLT")
- row.prop(Btrace, "mmSkip", text="Keyframe every")
- color_blender()