user: What is Bpy.Ops.Grease Pencil and how is it used in Blender Python scripting?

assistant: T_duplicate = None , TRANSFORM_OT_translate = None ) ¶ Make copies of the selected Grease Pencil strokes and move them Parameters : GREASE_PENCIL_OT_duplicate ( GREASE_PENCIL_OT_duplicate , (optional)) – Duplicate, Duplicate the selected points TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.grease_pencil. erase_box ( * , xmin = 0 , xmax = 0 , ymin = 0 , ymax = 0 , wait_for_input = True ) ¶ Erase points in the box region Parameters : xmin ( int in [ -inf , inf ] , ( optional ) ) – X Min xmax ( int in [ -inf , inf ] , ( optional ) ) – X Max ymin ( int in [ -inf , inf ] , ( optional ) ) – Y Min ymax ( int in [ -inf , inf ] , ( optional ) ) – Y Max wait_for_input ( boolean , ( optional ) ) – Wait for Input bpy.ops.grease_pencil. erase_lasso ( * , path = None , use_smooth_stroke = False , smooth_stroke_factor = 0.75 , smooth_stroke_radius = 35 ) ¶ Erase points in the lasso region Parameters : path ( bpy_prop_collection of OperatorMousePath , (optional)) – Path use_smooth_stroke ( boolean , ( optional ) ) – Stabilize Stroke, Selection lags behind mouse and follows a smoother path smooth_stroke_factor ( float in [ 0.5 , 0.99 ] , ( optional ) ) – Smooth Stroke Factor, Higher values gives a smoother stroke smooth_stroke_radius ( int in [ 10 , 200 ] , ( optional ) ) – Smooth Stroke Radius, Minimum distance from last point before selection continues bpy.ops.grease_pencil. extrude ( ) ¶ Extrude the selected points bpy.ops.grease_pencil. extrude_move ( * , GREASE_PENCIL_OT_extrude = None , TRANSFORM_OT_translate = None ) ¶ Extrude selected points and move them Parameters : GREASE_PENCIL_OT_extrude ( GREASE_PENCIL_OT_extrude , (optional)) – Extrude Stroke Points, Extrude the selected points TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.grease_pencil. fill ( * , invert = False , precision = False ) ¶ Fill with color the shape formed by strokes Parameters : invert ( boolean , ( optional ) ) – Invert, Find boundary of unfilled instead of filled regions precision ( boolean , ( optional ) ) – Precision, Use precision movement for extension lines bpy.ops.grease_pencil. frame_clean_duplicate ( * , selected = False ) ¶ Remove any keyframe that is a duplicate of the previous one Parameters : selected ( boolean , ( optional ) ) – Selected, Only delete selected keyframes bpy.ops.grease_pencil. frame_duplicate ( * , all = False ) ¶ Make a copy of the active Grease Pencil frame(s) Parameters : all ( boolean , ( optional ) ) – Duplicate all, Duplicate active keyframes of all layer bpy.ops.grease_pencil. insert_blank_frame ( * , all_layers = False , duration = 0 ) ¶ Insert a blank frame on the current scene frame Parameters : all_layers ( boolean , ( optional ) ) – All Layers, Insert a blank frame in all editable layers duration ( int in [ 0 , 1048574 ] , ( optional ) ) – Duration bpy.ops.grease_pencil. interpolate ( * , shift = 0.0 , layers = 'ACTIVE' , exclude_breakdowns = False , use_selection = False , flip = 'AUTO' , smooth_steps = 1 , smooth_factor = 0.0 ) ¶ Interpolate Grease Pencil strokes between frames Parameters : shift ( float in [ -1 , 1 ] , ( optional ) ) – Shift, Bias factor for which frame has more influence on the interpolated strokes layers (enum in [ 'ACTIVE' , 'ALL' ], (optional)) – Layer, Layers included in the interpolation exclude_breakdowns ( boolean , ( optional ) ) – Exclude Breakdowns, Exclude existing Breakdowns keyframes as interpolation extremes use_selection ( boolean , ( optional ) ) – Use Selection, Use only selected strokes for interpolating flip (enum in [ 'NONE' , 'FLIP' , 'AUTO' ], (optional)) – Flip Mode, Invert destination stroke to match start and end with source stroke smooth_steps ( int in [ 1 , 3 ] , ( optional ) ) – Iterations, Number of times to smooth newly created strokes smooth_factor ( float in [ 0 , 2 ] , ( optional ) ) – Smooth, Amount of smoothing to apply to interpolated strokes, to reduce jitter/noise bpy.ops.grease_pencil. interpolate_sequence ( * , step = 1 , layers = 'ACTIVE' , exclude_breakdowns = False , use_selection = False , flip = 'AUTO' , smooth_steps = 1 , smooth_factor = 0.0 , type = 'LINEAR' , easing = 'EASE_IN' , back = 1.702 , amplitude = 0.15 , period = 0.15 ) ¶ Generate ‘in-betweens’ to smoothly interpolate between Grease Pencil frames Parameters : step ( int in [ 1 , 1048574 ] , ( optional ) ) – Step, Number of frames between generated interpolated frames layers (enum in [ 'ACTIVE' , 'ALL' ], (optional)) – Layer, Layers included in the interpolation exclude_breakdowns ( boolean , ( optional ) ) – Exclude Breakdowns, Exclude existing Breakdowns keyframes as interpolation extremes use_selection ( boolean , ( optional ) ) – Use Selection, Use only selected strokes for interpolating flip (enum in [ 'NONE' , 'FLIP' , 'AUTO' ], (optional)) – Flip Mode, Invert destination stroke to match start and end with source stroke smooth_steps ( int in [ 1 , 3 ] , ( optional ) ) – Iterations, Number of times to smooth newly created strokes smooth_factor ( float in [ 0 , 2 ] , ( optional ) ) – Smooth, Amount of smoothing to apply to interpolated strokes, to reduce jitter/noise type (enum in [ 'LINEAR' , 'CUSTOM' , 'SINE' , 'QUAD' , 'CUBIC' , 'QUART' , 'QUINT' , 'EXPO' , 'CIRC' , 'BACK' , 'BOUNCE' , 'ELASTIC' ], (optional)) – Type, Interpolation method to use the next time ‘Interpolate Sequence’ is run LINEAR Linear – Straight-line interpolation between A and B (i.e. no ease in/out). CUSTOM Custom – Custom interpolation defined using a curve map. SINE Sinusoidal – Sinusoidal easing (weakest, almost linear but with a slight curvature). QUAD Quadratic – Quadratic easing. CUBIC Cubic – Cubic easing. QUART Quartic – Quartic easing. QUINT Quintic – Quintic easing. EXPO Exponential – Exponential easing (dramatic). CIRC Circular – Circular easing (strongest and most dynamic). BACK Back – Cubic easing with overshoot and settle. BOUNCE Bounce – Exponentially decaying parabolic bounce, like when objects collide. ELASTIC Elastic – Exponentially decaying sine wave, like an elastic band. easing (enum in Beztriple Interpolation Easing Items , (optional)) – Easing, Which ends of the segment between the preceding and following Grease Pencil frames easing interpolation is applied to back ( float in [ 0 , inf ] , ( optional ) ) – Back, Amount of overshoot for ‘back’ easing amplitude ( float in [ 0 , inf ] , ( optional ) ) – Amplitude, Amount to boost elastic bounces for ‘elastic’ easing period ( float in [ -inf , inf ] , ( optional ) ) – Period, Time between bounces for elastic easing bpy.ops.grease_pencil. join_selection ( * , type = 'JOINSTROKES' ) ¶ New stroke from selected points/strokes Parameters : type (enum in [ 'JOINSTROKES' , 'SPLITCOPY' , 'SPLIT' ], (optional)) – Type, Defines how the operator will behave on the selection in the active layer JOINSTROKES Join Strokes – Join the selected strokes into one stroke. SPLITCOPY Split and Copy – Copy the selected points to a new stroke. SPLIT Split – Split the selected point to a new stroke. bpy.ops.grease_pencil. layer_active ( * , layer = 0 ) ¶ Set the active Grease Pencil layer Parameters : layer ( int in [ 0 , inf ] , ( optional ) ) – Grease Pencil Layer bpy.ops.grease_pencil. layer_add ( * , new_layer_name = 'Layer' ) ¶ Add a new Grease Pencil layer in the active object Parameters : new_layer_name ( string , ( optional , never None ) ) – Name, Name of the new layer bpy.ops.grease_pencil. layer_duplicate ( * , empty_keyframes = False ) ¶ Make a copy of the active Grease Pencil layer Parameters : empty_keyframes ( boolean , ( optional ) ) – Empty Keyframes, Add Empty Keyframes bpy.ops.grease_pencil. layer_duplicate_object ( * , only_active = True , mode = 'ALL' ) ¶ Make a copy of the active Grease Pencil layer to selected object Parameters : only_active ( boolean , ( optional ) ) – Only Active, Copy only active Layer, uncheck to append all layers mode (enum in [ 'ALL' , 'ACTIVE' ], (optional)) – Mode bpy.ops.grease_pencil. layer_group_add ( * , new_layer_group_name = '' ) ¶ Add a new Grease Pencil layer group in the active object Parameters : new_layer_group_name ( string , ( optional , never None ) ) – Name, Name of the new layer group bpy.ops.grease_pencil. layer_group_color_tag ( * , color_tag = 'COLOR1' ) ¶ Change layer group icon Parameters : color_tag (enum in [ 'NONE' , 'COLOR1' , 'COLOR2' , 'COLOR3' , 'COLOR4' , 'COLOR5' , 'COLOR6' , 'COLOR7' , 'COLOR8' ], (optional)) – Color Tag bpy.ops.grease_pencil. layer_group_remove ( * , keep_children = False ) ¶ Remove Grease Pencil layer group in the active object Parameters : keep_children ( boolean , ( optional ) ) – Keep children nodes, Keep the children nodes of the group and only delete the group itself bpy.ops.grease_pencil. layer_hide ( * , unselected = False ) ¶ Hide selected/unselected Grease Pencil layers Parameters : unselected ( boolean , ( optional ) ) – Unselected, Hide unselected rather than selected layers bpy.ops.grease_pencil. layer_isolate ( * , affect_visibility = False ) ¶ Make only active layer visible/editable Parameters : affect_visibility ( boolean , ( optional ) ) – Affect Visibility, Also affect the visibility bpy.ops.grease_pencil. layer_lock_all ( * , lock = True ) ¶ Lock all Grease Pencil layers to prevent them from being accidentally modified Parameters : lock ( boolean , ( optional ) ) – Lock Value, Lock/Unlock all layers bpy.ops.grease_pencil. layer_mask_add ( * , name = '' ) ¶ Add new layer as masking Parameters : name ( string , ( optional , never None ) ) – Layer, Name of the layer bpy.ops.grease_pencil. layer_mask_remove ( ) ¶ Remove Layer Mask bpy.ops.grease_pencil. layer_mask_reorder ( * , direction = 'UP' ) ¶ Reorder the active Grease Pencil mask layer up/down in the list Parameters : direction (enum in [ 'UP' , 'DOWN' ], (optional)) – Direction bpy.ops.grease_pencil. layer_merge ( * , mode = 'ACTIVE' ) ¶ Combine layers based on the mode into one layer Parameters : mode (enum in [ 'ACTIVE' , 'GROUP' , 'ALL' ], (optional)) – Mode ACTIVE Active – Combine the active layer with the layer just below (if it exists). GROUP Group – Combine layers in the active group into a single layer. ALL All – Combine all layers into a single layer. bpy.ops.grease_pencil. layer_move ( * , direction = 'UP' ) ¶ Move the active Grease Pencil layer or Group Parameters : direction (enum in [ 'UP' , 'DOWN' ], (optional)) – Direction bpy.ops.grease_pencil. layer_remove ( ) ¶ Remove the active Grease Pencil layer bpy.ops.grease_pencil. layer_reveal ( ) ¶ Show all Grease Pencil layers bpy.ops.grease_pencil. material_copy_to_object ( * , only_active = True ) ¶ Append Materials of the active Grease Pencil to other object Parameters : only_active ( boolean , ( optional ) ) – Only Active, Append only active material, uncheck to append all materials bpy.ops.grease_pencil. material_hide ( * , invert = False ) ¶ Hide active/inactive Grease Pencil material(s) Parameters : invert ( boolean , ( optional ) ) – Invert, Hide inactive materials instead of the active one bpy.ops.grease_pencil. material_isolate ( * , affect_visibility = False ) ¶ Toggle whether the active material is the only one that is editable and/or visible Parameters : affect_visibility ( boolean , ( optional ) ) – Affect Visibility, In addition to toggling the editability, also affect the visibility bpy.ops.grease_pencil. material_lock_all ( ) ¶ Lock all Grease Pencil materials to prevent them from being accidentally modified bpy.ops.grease_pencil. material_lock_unselected ( ) ¶ Lock any material not used in any selected stroke bpy.ops.grease_pencil. material_lock_unused ( ) ¶ Lock and hide any material not used bpy.ops.grease_pencil. material_reveal ( ) ¶ Unhide all hidden Grease Pencil materials bpy.ops.grease_pencil. material_select ( * , deselect = False ) ¶ Select/Deselect all Grease Pencil strokes using current material Parameters : deselect ( boolean , ( optional ) ) – Deselect, Unselect strokes bpy.ops.grease_pencil. material_unlock_all ( ) ¶ Unlock all Grease Pencil materials so that they can be edited bpy.ops.grease_pencil. move_to_layer ( * , target_layer_name = '' , add_new_layer = False ) ¶ Move selected strokes to another layer Parameters : target_layer_name ( string , ( optional , never None ) ) – Name, Target Grease Pencil Layer add_new_layer ( boolean , ( optional ) ) – New Layer, Move selection to a new layer bpy.ops.grease_pencil. outline ( * , type = 'VIEW' , radius = 0.01 , offset_factor = -1.0 , corner_subdivisions = 2 ) ¶ Convert selected strokes to perimeter Parameters : type (enum in [ 'VIEW' , 'FRONT' , 'SIDE' , 'TOP' , 'CURSOR' , 'CAMERA' ], (optional)) – Projection Mode radius ( float in [ 0 , 10 ] , ( optional ) ) – Radius offset_factor ( float in [ -1 , 1 ] , ( optional ) ) – Offset Factor corner_subdivisions ( int in [ 0 , 10 ] , ( optional ) ) – Corner Subdivisions bpy.ops.grease_pencil. paintmode_toggle ( * , back = False ) ¶ Enter/Exit paint mode for Grease Pencil strokes Parameters : back ( boolean , ( optional ) ) – Return to Previous Mode, Return to previous mode bpy.ops.grease_pencil. paste ( * , type = 'ACTIVE' , paste_back = False , keep_world_transform = False ) ¶ Paste Grease Pencil points or strokes from the internal clipboard to the active layer Parameters : type (enum in [ 'ACTIVE' , 'LAYER' ], (optional)) – Type paste_back ( boolean , ( optional ) ) – Paste on Back, Add pasted strokes behind all strokes keep_world_transform ( boolean , ( optional ) ) – Keep World Transform, Keep the world transform of strokes from the clipboard unchanged bpy.ops.grease_pencil. pen ( * , extend = False , deselect = False , toggle = False , deselect_all = False , select_passthrough = False , extrude_point = False , extrude_handle = 'VECTOR' , delete_point = False , insert_point = False , move_segment = False , select_point = False , move_point = False , cycle_handle_type = False , size = 0.01 ) ¶ Construct and edit splines Parameters : extend ( boolean , ( optional ) ) – Extend, Extend selection instead of deselecting everything first deselect ( boolean , ( optional ) ) – Deselect, Remove from selection toggle ( boolean , ( optional ) ) – Toggle Selection, Toggle the selection deselect_all ( boolean , ( optional ) ) – Deselect On Nothing, Deselect all when nothing under the cursor select_passthrough ( boolean , ( optional ) ) – Only Select Unselected, Ignore the select action when the element is already selected extrude_point ( boolean , ( optional ) ) – Extrude Point, Add a point connected to the last selected point extrude_handle (enum in [ 'AUTO' , 'VECTOR' ], (optional)) – Extrude Handle Type, Type of the extruded handle delete_point ( boolean , ( optional ) ) – Delete Point, Delete an existing point insert_point ( boolean , ( optional ) ) – Insert Point, Insert Point into a curve segment move_segment ( boolean , ( optional ) ) – Move Segment, Delete an existing point select_point ( boolean , ( optional ) ) – Select Point, Select a point or its handles move_point ( boolean , ( optional ) ) – Move Point, Move a point or its handles cycle_handle_type ( boolean , ( optional ) ) – Cycle Handle Type, Cycle between all four handle types size ( float in [ 0 , inf ] , ( optional ) ) – Size, Diameter of new points bpy.ops.grease_pencil. primitive_arc ( * , subdivision = 62 , type = 'ARC' ) ¶ Create predefined Grease Pencil stroke arcs Parameters : subdivision ( int in [ 0 , inf ] , ( optional ) ) – Subdivisions, Number of subdivisions per segment type (enum in [ 'BOX' , 'LINE' , 'POLYLINE' , 'CIRCLE' , 'ARC' , 'CURVE' ], (optional)) – Type, Type of shape bpy.ops.grease_pencil. primitive_box ( * , subdivision = 3 , type = 'BOX' ) ¶ Create predefined Grease Pencil stroke boxes Parameters : subdivision ( int in [ 0 , inf ] , ( optional ) ) – Subdivisions, Number of subdivisions per segment type (enum in [ 'BOX' , 'LINE' , 'POLYLINE' , 'CIRCLE' , 'ARC' , 'CURVE' ], (optional)) – Type, Type of shape bpy.ops.grease_pencil. primitive_circle ( * , subdivision = 94 , type = 'CIRCLE' ) ¶ Create predefined Grease Pencil stroke circles Parameters : subdivision ( int in [ 0 , inf ] , ( optional ) ) – Subdivisions, Number of subdivisions per segment type (enum in [ 'BOX' , 'LINE' , 'POLYLINE' , 'CIRCLE' , 'ARC' , 'CURVE' ], (optional)) – Type, Type of shape bpy.ops.grease_pencil. primitive_curve ( * , subdivision = 62 , type = 'CURVE' ) ¶ Create predefined Grease Pencil stroke curve shapes Parameters : subdivision ( int in [ 0 , inf ] , ( optional ) ) – Subdivisions, Number of subdivisions per segment type (enum in [ 'BOX' , 'LINE' , 'POLYLINE' , 'CIRCLE' , 'ARC' , 'CURVE' ], (optional)) – Type, Type of shape bpy.ops.grease_pencil. primitive_line ( * , subdivision = 6 , type = 'LINE' ) ¶ Create predefined Grease Pencil stroke lines Parameters : subdivision ( int in [ 0 , inf ] , ( optional ) ) – Subdivisions, Number of subdivisions per segment type (enum in [ 'BOX' , 'LINE' , 'POLYLINE' , 'CIRCLE' , 'ARC' , 'CURVE' ], (optional)) – Type, Type of shape bpy.ops.grease_pencil. primitive_polyline ( * , subdivision = 6 , type = 'POLYLINE' ) ¶ Create predefined Grease Pencil stroke polylines Parameters : subdivision ( int in [ 0 , inf ] , ( optional ) ) – Subdivisions, Number of subdivisions per segment type (enum in [ 'BOX' , 'LINE' , 'POLYLINE' , 'CIRCLE' , 'ARC' , 'CURVE' ], (optional)) – Type, Type of shape bpy.ops.grease_pencil. relative_layer_mask_add ( * , mode = 'ABOVE' ) ¶ Mask active layer with layer above or below Parameters : mode (enum in [ 'ABOVE' , 'BELOW' ], (optional)) – Mode, Which relative layer (above or below) to use as a mask File : startup/bl_operators/grease_pencil.py:39 bpy.ops.grease_pencil. remove_fill_guides ( * , mode = 'ALL_FRAMES' ) ¶ Remove all the strokes that were created from the fill tool as guides Parameters : mode (enum in [ 'ACTIVE_FRAME' , 'ALL_FRAMES' ], (optional)) – Mode bpy.ops.grease_pencil. reorder ( * , direction = 'TOP' ) ¶ Cha