user: How do I use Bpy.Ops.Mesh in Blender? Include parameters, examples, warnings and best practices.

assistant: miter_outer (enum in [ 'SHARP' , 'PATCH' , 'ARC' ], (optional)) – Outer Miter, Pattern to use for outside of miters SHARP Sharp – Outside of miter is sharp. PATCH Patch – Outside of miter is squared-off patch. ARC Arc – Outside of miter is arc. miter_inner (enum in [ 'SHARP' , 'ARC' ], (optional)) – Inner Miter, Pattern to use for inside of miters SHARP Sharp – Inside of miter is sharp. ARC Arc – Inside of miter is arc. spread ( float in [ 0 , 1e+06 ] , ( optional ) ) – Spread, Amount to spread arcs for arc inner miters vmesh_method (enum in [ 'ADJ' , 'CUTOFF' ], (optional)) – Vertex Mesh Method, The method to use to create meshes at intersections ADJ Grid Fill – Default patterned fill. CUTOFF Cutoff – A cutoff at each profile’s end before the intersection. release_confirm ( boolean , ( optional ) ) – Confirm on Release bpy.ops.mesh. bisect ( * , plane_co = (0.0, 0.0, 0.0) , plane_no = (0.0, 0.0, 0.0) , use_fill = False , clear_inner = False , clear_outer = False , threshold = 0.0001 , xstart = 0 , xend = 0 , ystart = 0 , yend = 0 , flip = False , cursor = 5 ) ¶ Cut geometry along a plane (click-drag to define plane) Parameters : plane_co ( mathutils.Vector of 3 items in [-inf, inf], (optional)) – Plane Point, A point on the plane plane_no ( mathutils.Vector of 3 items in [-1, 1], (optional)) – Plane Normal, The direction the plane points use_fill ( boolean , ( optional ) ) – Fill, Fill in the cut clear_inner ( boolean , ( optional ) ) – Clear Inner, Remove geometry behind the plane clear_outer ( boolean , ( optional ) ) – Clear Outer, Remove geometry in front of the plane threshold ( float in [ 0 , 10 ] , ( optional ) ) – Axis Threshold, Preserves the existing geometry along the cut plane xstart ( int in [ -inf , inf ] , ( optional ) ) – X Start xend ( int in [ -inf , inf ] , ( optional ) ) – X End ystart ( int in [ -inf , inf ] , ( optional ) ) – Y Start yend ( int in [ -inf , inf ] , ( optional ) ) – Y End flip ( boolean , ( optional ) ) – Flip cursor ( int in [ 0 , inf ] , ( optional ) ) – Cursor, Mouse cursor style to use during the modal operator bpy.ops.mesh. blend_from_shape ( * , shape = '' , blend = 1.0 , add = True ) ¶ Blend in shape from a shape key Parameters : shape ( enum in [ ] , ( optional ) ) – Shape, Shape key to use for blending blend ( float in [ -1000 , 1000 ] , ( optional ) ) – Blend, Blending factor add ( boolean , ( optional ) ) – Add, Add rather than blend between shapes bpy.ops.mesh. bridge_edge_loops ( * , type = 'SINGLE' , use_merge = False , merge_factor = 0.5 , twist_offset = 0 , number_cuts = 0 , interpolation = 'PATH' , smoothness = 1.0 , profile_shape_factor = 0.0 , profile_shape = 'SMOOTH' ) ¶ Create a bridge of faces between two or more selected edge loops Parameters : type (enum in [ 'SINGLE' , 'CLOSED' , 'PAIRS' ], (optional)) – Connect Loops, Method of bridging multiple loops use_merge ( boolean , ( optional ) ) – Merge, Merge rather than creating faces merge_factor ( float in [ 0 , 1 ] , ( optional ) ) – Merge Factor twist_offset ( int in [ -1000 , 1000 ] , ( optional ) ) – Twist, Twist offset for closed loops number_cuts ( int in [ 0 , 1000 ] , ( optional ) ) – Number of Cuts interpolation (enum in [ 'LINEAR' , 'PATH' , 'SURFACE' ], (optional)) – Interpolation, Interpolation method smoothness ( float in [ 0 , 1000 ] , ( optional ) ) – Smoothness, Smoothness factor profile_shape_factor ( float in [ -1000 , 1000 ] , ( optional ) ) – Profile Factor, How much intermediary new edges are shrunk/expanded profile_shape (enum in Proportional Falloff Curve Only Items , (optional)) – Profile Shape, Shape of the profile bpy.ops.mesh. colors_reverse ( ) ¶ Flip direction of face corner color attribute inside faces bpy.ops.mesh. colors_rotate ( * , use_ccw = False ) ¶ Rotate face corner color attribute inside faces Parameters : use_ccw ( boolean , ( optional ) ) – Counter Clockwise bpy.ops.mesh. convex_hull ( * , delete_unused = True , use_existing_faces = True , make_holes = False , join_triangles = True , face_threshold = 0.698132 , shape_threshold = 0.698132 , topology_influence = 0.0 , uvs = False , vcols = False , seam = False , sharp = False , materials = False , deselect_joined = False ) ¶ Enclose selected vertices in a convex polyhedron Parameters : delete_unused ( boolean , ( optional ) ) – Delete Unused, Delete selected elements that are not used by the hull use_existing_faces ( boolean , ( optional ) ) – Use Existing Faces, Skip hull triangles that are covered by a pre-existing face make_holes ( boolean , ( optional ) ) – Make Holes, Delete selected faces that are used by the hull join_triangles ( boolean , ( optional ) ) – Join Triangles, Merge adjacent triangles into quads face_threshold ( float in [ 0 , 3.14159 ] , ( optional ) ) – Max Face Angle, Face angle limit shape_threshold ( float in [ 0 , 3.14159 ] , ( optional ) ) – Max Shape Angle, Shape angle limit topology_influence ( float in [ 0 , 2 ] , ( optional ) ) – Topology Influence, How much to prioritize regular grids of quads as well as quads that touch existing quads uvs ( boolean , ( optional ) ) – Compare UVs vcols ( boolean , ( optional ) ) – Compare Color Attributes seam ( boolean , ( optional ) ) – Compare Seam sharp ( boolean , ( optional ) ) – Compare Sharp materials ( boolean , ( optional ) ) – Compare Materials deselect_joined ( boolean , ( optional ) ) – Deselect Joined, Only select remaining triangles that were not merged bpy.ops.mesh. customdata_custom_splitnormals_add ( ) ¶ Add a custom normals layer, if none exists yet bpy.ops.mesh. customdata_custom_splitnormals_clear ( ) ¶ Remove the custom normals layer, if it exists bpy.ops.mesh. customdata_mask_clear ( ) ¶ Clear vertex sculpt masking data from the mesh bpy.ops.mesh. customdata_skin_add ( ) ¶ Add a vertex skin layer bpy.ops.mesh. customdata_skin_clear ( ) ¶ Clear vertex skin layer bpy.ops.mesh. decimate ( * , ratio = 1.0 , use_vertex_group = False , vertex_group_factor = 1.0 , invert_vertex_group = False , use_symmetry = False , symmetry_axis = 'Y' ) ¶ Simplify geometry by collapsing edges Parameters : ratio ( float in [ 0 , 1 ] , ( optional ) ) – Ratio use_vertex_group ( boolean , ( optional ) ) – Vertex Group, Use active vertex group as an influence vertex_group_factor ( float in [ 0 , 1000 ] , ( optional ) ) – Weight, Vertex group strength invert_vertex_group ( boolean , ( optional ) ) – Invert, Invert vertex group influence use_symmetry ( boolean , ( optional ) ) – Symmetry, Maintain symmetry on an axis symmetry_axis (enum in Axis Xyz Items , (optional)) – Axis, Axis of symmetry bpy.ops.mesh. delete ( * , type = 'VERT' ) ¶ Delete selected vertices, edges or faces Parameters : type (enum in [ 'VERT' , 'EDGE' , 'FACE' , 'EDGE_FACE' , 'ONLY_FACE' ], (optional)) – Type, Method used for deleting mesh data bpy.ops.mesh. delete_edgeloop ( * , use_face_split = True ) ¶ Delete an edge loop by merging the faces on each side Parameters : use_face_split ( boolean , ( optional ) ) – Face Split, Split off face corners to maintain surrounding geometry bpy.ops.mesh. delete_loose ( * , use_verts = True , use_edges = True , use_faces = False ) ¶ Delete loose vertices, edges or faces Parameters : use_verts ( boolean , ( optional ) ) – Vertices, Remove loose vertices use_edges ( boolean , ( optional ) ) – Edges, Remove loose edges use_faces ( boolean , ( optional ) ) – Faces, Remove loose faces bpy.ops.mesh. dissolve_degenerate ( * , threshold = 0.0001 ) ¶ Dissolve zero area faces and zero length edges Parameters : threshold ( float in [ 1e-06 , 50 ] , ( optional ) ) – Merge Distance, Maximum distance between elements to merge bpy.ops.mesh. dissolve_edges ( * , use_verts = True , angle_threshold = 3.14159 , use_face_split = False ) ¶ Dissolve edges, merging faces Parameters : use_verts ( boolean , ( optional ) ) – Dissolve Vertices, Dissolve remaining vertices which connect to only two edges angle_threshold ( float in [ 0 , 3.14159 ] , ( optional ) ) – Angle Threshold, Remaining vertices which separate edge pairs are preserved if their edge angle exceeds this threshold. use_face_split ( boolean , ( optional ) ) – Face Split, Split off face corners to maintain surrounding geometry bpy.ops.mesh. dissolve_faces ( * , use_verts = False ) ¶ Dissolve faces Parameters : use_verts ( boolean , ( optional ) ) – Dissolve Vertices, Dissolve remaining vertices which connect to only two edges bpy.ops.mesh. dissolve_limited ( * , angle_limit = 0.0872665 , use_dissolve_boundaries = False , delimit = {'NORMAL'} ) ¶ Dissolve selected edges and vertices, limited by the angle of surrounding geometry Parameters : angle_limit ( float in [ 0 , 3.14159 ] , ( optional ) ) – Max Angle, Angle limit use_dissolve_boundaries ( boolean , ( optional ) ) – All Boundaries, Dissolve all vertices in between face boundaries delimit (enum set in Mesh Delimit Mode Items , (optional)) – Delimit, Delimit dissolve operation bpy.ops.mesh. dissolve_mode ( * , use_verts = False , angle_threshold = 3.14159 , use_face_split = False , use_boundary_tear = False ) ¶ Dissolve geometry based on the selection mode Parameters : use_verts ( boolean , ( optional ) ) – Dissolve Vertices, Dissolve remaining vertices which connect to only two edges angle_threshold ( float in [ 0 , 3.14159 ] , ( optional ) ) – Angle Threshold, Remaining vertices which separate edge pairs are preserved if their edge angle exceeds this threshold. use_face_split ( boolean , ( optional ) ) – Face Split, Split off face corners to maintain surrounding geometry use_boundary_tear ( boolean , ( optional ) ) – Tear Boundary, Split off face corners instead of merging faces bpy.ops.mesh. dissolve_verts ( * , use_face_split = False , use_boundary_tear = False ) ¶ Dissolve vertices, merge edges and faces Parameters : use_face_split ( boolean , ( optional ) ) – Face Split, Split off face corners to maintain surrounding geometry use_boundary_tear ( boolean , ( optional ) ) – Tear Boundary, Split off face corners instead of merging faces bpy.ops.mesh. dupli_extrude_cursor ( * , rotate_source = True ) ¶ Duplicate and extrude selected vertices, edges or faces towards the mouse cursor Parameters : rotate_source ( boolean , ( optional ) ) – Rotate Source, Rotate initial selection giving better shape bpy.ops.mesh. duplicate ( * , mode = 1 ) ¶ Duplicate selected vertices, edges or faces Parameters : mode ( int in [ 0 , inf ] , ( optional ) ) – Mode bpy.ops.mesh. duplicate_move ( * , MESH_OT_duplicate = None , TRANSFORM_OT_translate = None ) ¶ Duplicate mesh and move Parameters : MESH_OT_duplicate ( MESH_OT_duplicate , (optional)) – Duplicate, Duplicate selected vertices, edges or faces TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.mesh. edge_collapse ( ) ¶ Collapse isolated edge and face regions, merging data such as UVs and color attributes. This can collapse edge-rings as well as regions of connected faces into vertices bpy.ops.mesh. edge_face_add ( ) ¶ Add an edge or face to selected bpy.ops.mesh. edge_rotate ( * , use_ccw = False ) ¶ Rotate selected edge or adjoining faces Parameters : use_ccw ( boolean , ( optional ) ) – Counter Clockwise bpy.ops.mesh. edge_split ( * , type = 'EDGE' ) ¶ Split selected edges so that each neighbor face gets its own copy Parameters : type (enum in [ 'EDGE' , 'VERT' ], (optional)) – Type, Method to use for splitting EDGE Faces by Edges – Split faces along selected edges. VERT Faces & Edges by Vertices – Split faces and edges connected to selected vertices. bpy.ops.mesh. edgering_select ( * , extend = False , deselect = False , toggle = False , ring = True ) ¶ Select an edge ring Parameters : extend ( boolean , ( optional ) ) – Extend, Extend the selection deselect ( boolean , ( optional ) ) – Deselect, Remove from the selection toggle ( boolean , ( optional ) ) – Toggle Select, Toggle the selection ring ( boolean , ( optional ) ) – Select Ring, Select ring bpy.ops.mesh. edges_select_sharp ( * , sharpness = 0.523599 ) ¶ Select all sharp enough edges Parameters : sharpness ( float in [ 0.000174533 , 3.14159 ] , ( optional ) ) – Sharpness bpy.ops.mesh. extrude_context ( * , use_normal_flip = False , use_dissolve_ortho_edges = False , mirror = False ) ¶ Extrude selection Parameters : use_normal_flip ( boolean , ( optional ) ) – Flip Normals use_dissolve_ortho_edges ( boolean , ( optional ) ) – Dissolve Orthogonal Edges mirror ( boolean , ( optional ) ) – Mirror Editing bpy.ops.mesh. extrude_context_move ( * , MESH_OT_extrude_context = None , TRANSFORM_OT_translate = None ) ¶ Extrude region together along the average normal Parameters : MESH_OT_extrude_context ( MESH_OT_extrude_context , (optional)) – Extrude Context, Extrude selection TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.mesh. extrude_edges_indiv ( * , use_normal_flip = False , mirror = False ) ¶ Extrude individual edges only Parameters : use_normal_flip ( boolean , ( optional ) ) – Flip Normals mirror ( boolean , ( optional ) ) – Mirror Editing bpy.ops.mesh. extrude_edges_move ( * , MESH_OT_extrude_edges_indiv = None , TRANSFORM_OT_translate = None ) ¶ Extrude edges and move result Parameters : MESH_OT_extrude_edges_indiv ( MESH_OT_extrude_edges_indiv , (optional)) – Extrude Only Edges, Extrude individual edges only TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.mesh. extrude_faces_indiv ( * , mirror = False ) ¶ Extrude individual faces only Parameters : mirror ( boolean , ( optional ) ) – Mirror Editing bpy.ops.mesh. extrude_faces_move ( * , MESH_OT_extrude_faces_indiv = None , TRANSFORM_OT_shrink_fatten = None ) ¶ Extrude each individual face separately along local normals Parameters : MESH_OT_extrude_faces_indiv ( MESH_OT_extrude_faces_indiv , (optional)) – Extrude Individual Faces, Extrude individual faces only TRANSFORM_OT_shrink_fatten ( TRANSFORM_OT_shrink_fatten , (optional)) – Shrink/Fatten, Shrink/fatten selected vertices along normals bpy.ops.mesh. extrude_manifold ( * , MESH_OT_extrude_region = None , TRANSFORM_OT_translate = None ) ¶ Extrude, dissolves edges whose faces form a flat surface and intersect new edges Parameters : MESH_OT_extrude_region ( MESH_OT_extrude_region , (optional)) – Extrude Region, Extrude region of faces TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.mesh. extrude_region ( * , use_normal_flip = False , use_dissolve_ortho_edges = False , mirror = False ) ¶ Extrude region of faces Parameters : use_normal_flip ( boolean , ( optional ) ) – Flip Normals use_dissolve_ortho_edges ( boolean , ( optional ) ) – Dissolve Orthogonal Edges mirror ( boolean , ( optional ) ) – Mirror Editing bpy.ops.mesh. extrude_region_move ( * , MESH_OT_extrude_region = None , TRANSFORM_OT_translate = None ) ¶ Extrude region and move result Parameters : MESH_OT_extrude_region ( MESH_OT_extrude_region , (optional)) – Extrude Region, Extrude region of faces TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.mesh. extrude_region_shrink_fatten ( * , MESH_OT_extrude_region = None , TRANSFORM_OT_shrink_fatten = None ) ¶ Extrude region together along local normals Parameters : MESH_OT_extrude_region ( MESH_OT_extrude_region , (optional)) – Extrude Region, Extrude region of faces TRANSFORM_OT_shrink_fatten ( TRANSFORM_OT_shrink_fatten , (optional)) – Shrink/Fatten, Shrink/fatten selected vertices along normals bpy.ops.mesh. extrude_repeat ( * , steps = 10 , offset = (0.0, 0.0, 0.0) , scale_offset = 1.0 ) ¶ Extrude selected vertices, edges or faces repeatedly Parameters : steps ( int in [ 0 , 1000000 ] , ( optional ) ) – Steps offset ( mathutils.Vector of 3 items in [-100000, 100000], (optional)) – Offset, Offset vector scale_offset ( float in [ 0 , inf ] , ( optional ) ) – Scale Offset bpy.ops.mesh. extrude_vertices_move ( * , MESH_OT_extrude_verts_indiv = None , TRANSFORM_OT_translate = None ) ¶ Extrude vertices and move result Parameters : MESH_OT_extrude_verts_indiv ( MESH_OT_extrude_verts_indiv , (optional)) – Extrude Only Vertices, Extrude individual vertices only TRANSFORM_OT_translate ( TRANSFORM_OT_translate , (optional)) – Move, Move selected items bpy.ops.mesh. extrude_verts_indiv ( * , mirror = False ) ¶ Extrude individual vertices only Parameters : mirror ( boolean , ( optional ) ) – Mirror Editing bpy.ops.mesh. face_make_planar ( * , factor = 1.0 , repeat = 1 ) ¶ Flatten selected faces Parameters : factor ( float in [ -10 , 10 ] , ( optional ) ) – Factor repeat ( int in [ 1 , 10000 ] , ( optional ) ) – Iterations bpy.ops.mesh. face_split_by_edges ( ) ¶ Weld loose edges into faces (splitting them into new faces) bpy.ops.mesh. faces_select_linked_flat ( * , sharpness = 0.0174533 ) ¶ Select linked faces by angle Parameters : sharpness ( float in [ 0.000174533 , 3.14159 ] , ( optional ) ) – Sharpness bpy.ops.mesh. faces_shade_flat ( ) ¶ Display faces flat bpy.ops.mesh. faces_shade_smooth ( ) ¶ Display faces smooth (using vertex normals) bpy.ops.mesh. fill ( * , use_beauty = True ) ¶ Fill a selected edge loop with faces Parameters : use_beauty ( boolean , ( optional ) ) – Beauty, Use best triangulation division bpy.ops.mesh. fill_grid ( * , span = 1 , offset = 0 , use_interp_simple = False ) ¶ Fill grid from two loops Parameters : span ( int in [ 1 , 1000 ] , ( optional ) ) – Span, Number of grid columns offset ( int in [ -1000 , 1000 ] , ( optional ) ) – Offset, Vertex that is the corner of the grid use_interp_simple ( boolean , ( optional ) ) – Simple Blending, Use simple interpolation of grid vertices bpy.ops.mesh. fill_holes ( * , sides = 4 ) ¶ Fill in holes (boundary edge loops) Parameters : sides ( int in [ 0 , 1000 ] , ( optional ) ) – Sides, Number of sides in hole required to fill (zero fills all holes) bpy.ops.mesh. flip_normals ( * , only_clnors = False ) ¶ Flip the direction of selected faces’ normals (and of their vertices) Parameters : only_cl