user: Show practical ways to work with Uv Operators in a Blender add-on or script – include code.

assistant: ect_aspect** (*boolean**,* *(**optional**)*) – Correct Aspect, Map UVs taking aspect ratio of the image associated with the material into account
        - **clip_to_bounds** (*boolean**,* *(**optional**)*) – Clip to Bounds, Clip UV coordinates to bounds after unwrapping
        - **scale_to_bounds** (*boolean**,* *(**optional**)*) – Scale to Bounds, Scale UV coordinates to bounds after unwrapping

bpy.ops.uv.stitch(*\**, *use_limit=False*, *snap_islands=True*, *limit=0.01*, *static_island=0*, *active_object_index=0*, *midpoint_snap=False*, *clear_seams=True*, *mode='VERTEX'*, *stored_mode='VERTEX'*, *selection=None*, *objects_selection_count=(0, 0, 0, 0, 0, 0)*)
:   Stitch selected UV vertices by proximity

    Parameters:
    :   - **use_limit** (*boolean**,* *(**optional**)*) – Use Limit, Stitch UVs within a specified limit distance
        - **snap_islands** (*boolean**,* *(**optional**)*) – Snap Islands, Snap islands together (on edge stitch mode, rotates the islands too)
        - **limit** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Limit, Limit distance in normalized coordinates
        - **static_island** (*int in* *[**0**,* *inf**]**,* *(**optional**)*) – Static Island, Island that stays in place when stitching islands
        - **active_object_index** (*int in* *[**0**,* *inf**]**,* *(**optional**)*) – Active Object, Index of the active object
        - **midpoint_snap** (*boolean**,* *(**optional**)*) – Snap at Midpoint, UVs are stitched at midpoint instead of at static island
        - **clear_seams** (*boolean**,* *(**optional**)*) – Clear Seams, Clear seams of stitched edges
        - **mode** (enum in [`'VERTEX'`, `'EDGE'`], (optional)) – Operation Mode, Use vertex or edge stitching
        - **stored_mode** (enum in [`'VERTEX'`, `'EDGE'`], (optional)) – Stored Operation Mode, Use vertex or edge stitching
        - **selection** (`bpy_prop_collection` of `SelectedUvElement`, (optional)) – Selection
        - **objects_selection_count** (*int array* *of* *6 items in* *[**0**,* *inf**]**,* *(**optional**)*) – Objects Selection Count

bpy.ops.uv.unwrap(*\**, *method='CONFORMAL'*, *fill_holes=False*, *correct_aspect=True*, *use_subsurf_data=False*, *margin_method='SCALED'*, *margin=0.001*, *no_flip=False*, *iterations=10*, *use_weights=False*, *weight_group='uv_importance'*, *weight_factor=1.0*)
:   Unwrap the mesh of the object being edited

    Parameters:
    :   - **method** (enum in [`'ANGLE_BASED'`, `'CONFORMAL'`, `'MINIMUM_STRETCH'`], (optional)) – Method, Unwrapping method (Angle Based usually gives better results than Conformal, while being somewhat slower)
        - **fill_holes** (*boolean**,* *(**optional**)*) – Fill Holes, Virtually fill holes in mesh before unwrapping, to better avoid overlaps and preserve symmetry
        - **correct_aspect** (*boolean**,* *(**optional**)*) – Correct Aspect, Map UVs taking aspect ratio of the image associated with the material into account
        - **use_subsurf_data** (*boolean**,* *(**optional**)*) – Use Subdivision Surface, Map UVs taking vertex position after Subdivision Surface modifier has been applied
        - **margin_method** (enum in [`'SCALED'`, `'ADD'`, `'FRACTION'`], (optional)) –

          Margin Method

          - `SCALED`
            Scaled – Use scale of existing UVs to multiply margin.
          - `ADD`
            Add – Just add the margin, ignoring any UV scale.
          - `FRACTION`
            Fraction – Specify a precise fraction of final UV output.
        - **margin** (*float in* *[**0**,* *1**]**,* *(**optional**)*) – Margin, Space between islands
        - **no_flip** (*boolean**,* *(**optional**)*) – No Flip, Prevent flipping UV’s, flipping may lower distortion depending on the position of pins
        - **iterations** (*int in* *[**0**,* *10000**]**,* *(**optional**)*) – Iterations, Number of iterations when “Minimum Stretch” method is used
        - **use_weights** (*boolean**,* *(**optional**)*) – Importance Weights, Whether to take into account per-vertex importance weights
        - **weight_group** (*string**,* *(**optional**,* *never None**)*) – Weight Group, Vertex group name for importance weights (modulating the deform)
        - **weight_factor** (*float in* *[**-10000**,* *10000**]**,* *(**optional**)*) – Weight Factor, How much influence the weightmap has for weighted parameterization, 0 being no influence

bpy.ops.uv.weld()
:   Weld selected UV vertices together