user: What is Wm Operators and how is it used in Blender Python scripting?

assistant: (**optional**)*) – Filter Python files
        - **filter_font** (*boolean**,* *(**optional**)*) – Filter font files
        - **filter_sound** (*boolean**,* *(**optional**)*) – Filter sound files
        - **filter_text** (*boolean**,* *(**optional**)*) – Filter text files
        - **filter_archive** (*boolean**,* *(**optional**)*) – Filter archive files
        - **filter_btx** (*boolean**,* *(**optional**)*) – Filter btx files
        - **filter_alembic** (*boolean**,* *(**optional**)*) – Filter Alembic files
        - **filter_usd** (*boolean**,* *(**optional**)*) – Filter USD files
        - **filter_obj** (*boolean**,* *(**optional**)*) – Filter OBJ files
        - **filter_volume** (*boolean**,* *(**optional**)*) – Filter OpenVDB volume files
        - **filter_folder** (*boolean**,* *(**optional**)*) – Filter folders
        - **filter_blenlib** (*boolean**,* *(**optional**)*) – Filter Blender IDs
        - **filemode** (*int in* *[**1**,* *9**]**,* *(**optional**)*) – File Browser Mode, The setting for the file browser mode to load a .blend file, a library or a special file
        - **relative_path** (*boolean**,* *(**optional**)*) – Relative Path, Select the file relative to the blend file
        - **display_type** (enum in [`'DEFAULT'`, `'LIST_VERTICAL'`, `'LIST_HORIZONTAL'`, `'THUMBNAIL'`], (optional)) –

          Display Type

          - `DEFAULT`
            Default – Automatically determine display type for files.
          - `LIST_VERTICAL`
            Short List – Display files as short list.
          - `LIST_HORIZONTAL`
            Long List – Display files as a detailed list.
          - `THUMBNAIL`
            Thumbnails – Display files as thumbnails.
        - **sort_method** (*enum in* *[**]**,* *(**optional**)*) – File sorting mode
        - **scale** (*float in* *[**0.0001**,* *1000**]**,* *(**optional**)*) – Scale, Value by which to enlarge or shrink the objects with respect to the world’s origin
        - **set_frame_range** (*boolean**,* *(**optional**)*) – Set Frame Range, Update the scene’s start and end frame to match those of the USD archive
        - **import_cameras** (*boolean**,* *(**optional**)*) – Cameras
        - **import_curves** (*boolean**,* *(**optional**)*) – Curves
        - **import_lights** (*boolean**,* *(**optional**)*) – Lights
        - **import_materials** (*boolean**,* *(**optional**)*) – Materials
        - **import_meshes** (*boolean**,* *(**optional**)*) – Meshes
        - **import_volumes** (*boolean**,* *(**optional**)*) – Volumes
        - **import_shapes** (*boolean**,* *(**optional**)*) – USD Shapes
        - **import_skeletons** (*boolean**,* *(**optional**)*) – Armatures
        - **import_blendshapes** (*boolean**,* *(**optional**)*) – Shape Keys
        - **import_points** (*boolean**,* *(**optional**)*) – Point Clouds
        - **import_subdivision** (*boolean**,* *(**optional**)*) – Import Subdivision Scheme, Create subdivision surface modifiers based on the USD SubdivisionScheme attribute
        - **support_scene_instancing** (*boolean**,* *(**optional**)*) – Scene Instancing, Import USD scene graph instances as collection instances
        - **import_visible_only** (*boolean**,* *(**optional**)*) – Visible Primitives Only, Do not import invisible USD primitives. Only applies to primitives with a non-animated visibility attribute. Primitives with animated visibility will always be imported
        - **create_collection** (*boolean**,* *(**optional**)*) – Create Collection, Add all imported objects to a new collection
        - **read_mesh_uvs** (*boolean**,* *(**optional**)*) – UV Coordinates, Read mesh UV coordinates
        - **read_mesh_colors** (*boolean**,* *(**optional**)*) – Color Attributes, Read mesh color attributes
        - **read_mesh_attributes** (*boolean**,* *(**optional**)*) – Mesh Attributes, Read USD Primvars as mesh attributes
        - **prim_path_mask** (*string**,* *(**optional**,* *never None**)*) – Path Mask, Import only the primitive at the given path and its descendants. Multiple paths may be specified in a list delimited by commas or semicolons
        - **import_guide** (*boolean**,* *(**optional**)*) – Guide, Import guide geometry
        - **import_proxy** (*boolean**,* *(**optional**)*) – Proxy, Import proxy geometry
        - **import_render** (*boolean**,* *(**optional**)*) – Render, Import final render geometry
        - **import_all_materials** (*boolean**,* *(**optional**)*) – Import All Materials, Also import materials that are not used by any geometry. Note that when this option is false, materials referenced by geometry will still be imported
        - **import_usd_preview** (*boolean**,* *(**optional**)*) – Import USD Preview, Convert UsdPreviewSurface shaders to Principled BSDF shader networks
        - **set_material_blend** (*boolean**,* *(**optional**)*) – Set Material Blend, If the Import USD Preview option is enabled, the material blend method will automatically be set based on the shader’s opacity and opacityThreshold inputs
        - **light_intensity_scale** (*float in* *[**0.0001**,* *10000**]**,* *(**optional**)*) – Light Intensity Scale, Scale for the intensity of imported lights
        - **mtl_purpose** (enum in [`'MTL_ALL_PURPOSE'`, `'MTL_PREVIEW'`, `'MTL_FULL'`], (optional)) –

          Material Purpose, Attempt to import materials with the given purpose. If no material with this purpose is bound to the primitive, fall back on loading any other bound material

          - `MTL_ALL_PURPOSE`
            All Purpose – Attempt to import ‘allPurpose’ materials..
          - `MTL_PREVIEW`
            Preview – Attempt to import ‘preview’ materials. Load ‘allPurpose’ materials as a fallback.
          - `MTL_FULL`
            Full – Attempt to import ‘full’ materials. Load ‘allPurpose’ or ‘preview’ materials, in that order, as a fallback.
        - **mtl_name_collision_mode** (enum in [`'MAKE_UNIQUE'`, `'REFERENCE_EXISTING'`], (optional)) –

          Material Name Collision, Behavior when the name of an imported material conflicts with an existing material

          - `MAKE_UNIQUE`
            Make Unique – Import each USD material as a unique Blender material.
          - `REFERENCE_EXISTING`
            Reference Existing – If a material with the same name already exists, reference that instead of importing.
        - **import_textures_mode** (enum in [`'IMPORT_NONE'`, `'IMPORT_PACK'`, `'IMPORT_COPY'`], (optional)) –

          Import Textures, Behavior when importing textures from a USDZ archive

          - `IMPORT_NONE`
            None – Don’t import textures.
          - `IMPORT_PACK`
            Packed – Import textures as packed data.
          - `IMPORT_COPY`
            Copy – Copy files to textures directory.
        - **import_textures_dir** (*string**,* *(**optional**,* *never None**)*) – Textures Directory, Path to the directory where imported textures will be copied
        - **tex_name_collision_mode** (enum in [`'USE_EXISTING'`, `'OVERWRITE'`], (optional)) –

          File Name Collision, Behavior when the name of an imported texture file conflicts with an existing file

          - `USE_EXISTING`
            Use Existing – If a file with the same name already exists, use that instead of copying.
          - `OVERWRITE`
            Overwrite – Overwrite existing files.
        - **property_import_mode** (enum in [`'NONE'`, `'USER'`, `'ALL'`], (optional)) –

          Custom Properties, Behavior when importing USD attributes as Blender custom properties

          - `NONE`
            None – Do not import USD custom attributes.
          - `USER`
            User – Import USD attributes in the ‘userProperties’ namespace as Blender custom properties. The namespace will be stripped from the property names.
          - `ALL`
            All Custom – Import all USD custom attributes as Blender custom properties. Namespaces will be retained in the property names.
        - **validate_meshes** (*boolean**,* *(**optional**)*) – Validate Meshes, Ensure the data is valid (when disabled, data may be imported which causes crashes displaying or editing)
        - **create_world_material** (*boolean**,* *(**optional**)*) – World Dome Light, Convert the first discovered USD dome light to a world background shader
        - **import_defined_only** (*boolean**,* *(**optional**)*) – Defined Primitives Only, Import only defined USD primitives. When disabled this allows importing USD primitives which are not defined, such as those with an override specifier
        - **merge_parent_xform** (*boolean**,* *(**optional**)*) – Merge parent Xform, Allow USD primitives to merge with their Xform parent if they are the only child in the hierarchy
        - **apply_unit_conversion_scale** (*boolean**,* *(**optional**)*) – Apply Unit Conversion Scale, Scale the scene objects by the USD stage’s meters per unit value. This scaling is applied in addition to the value specified in the Scale option

bpy.ops.wm.window_close()
:   Close the current window

bpy.ops.wm.window_fullscreen_toggle()
:   Toggle the current window full-screen

bpy.ops.wm.window_new()
:   Create a new window

bpy.ops.wm.window_new_main()
:   Create a new main window with its own workspace and scene selection

bpy.ops.wm.xr_navigation_fly(*\**, *mode='VIEWER_FORWARD'*, *snap_turn_threshold=0.95*, *lock_location_z=False*, *lock_direction=False*, *speed_frame_based=False*, *turn_speed_factor=0.333333*, *fly_speed_factor=0.333333*, *speed_interpolation0=(0.0, 0.0)*, *speed_interpolation1=(1.0, 1.0)*, *alt_mode='VIEWER_FORWARD'*, *alt_lock_location_z=False*, *alt_lock_direction=False*)
:   Move/turn relative to the VR viewer or controller

    Parameters:
    :   - **mode** (enum in [`'FORWARD'`, `'BACK'`, `'LEFT'`, `'RIGHT'`, `'UP'`, `'DOWN'`, `'TURNLEFT'`, `'TURNRIGHT'`, `'VIEWER_FORWARD'`, `'VIEWER_BACK'`, `'VIEWER_LEFT'`, `'VIEWER_RIGHT'`, `'CONTROLLER_FORWARD'`], (optional)) –

          Mode, Fly mode

          - `FORWARD`
            Forward – Move along navigation forward axis.
          - `BACK`
            Back – Move along navigation back axis.
          - `LEFT`
            Left – Move along navigation left axis.
          - `RIGHT`
            Right – Move along navigation right axis.
          - `UP`
            Up – Move along navigation up axis.
          - `DOWN`
            Down – Move along navigation down axis.
          - `TURNLEFT`
            Turn Left – Turn counter-clockwise around navigation up axis.
          - `TURNRIGHT`
            Turn Right – Turn clockwise around navigation up axis.
          - `VIEWER_FORWARD`
            Viewer Forward – Move along viewer’s forward axis.
          - `VIEWER_BACK`
            Viewer Back – Move along viewer’s back axis.
          - `VIEWER_LEFT`
            Viewer Left – Move along viewer’s left axis.
          - `VIEWER_RIGHT`
            Viewer Right – Move along viewer’s right axis.
          - `CONTROLLER_FORWARD`
            Controller Forward – Move along controller’s forward axis.
        - **snap_turn_threshold** (*float in* *[**0**,* *1**]**,* *(**optional**)*) – Snap Turn Threshold, Input state threshold when using snap turn
        - **lock_location_z** (*boolean**,* *(**optional**)*) – Lock Elevation, Prevent changes to viewer elevation
        - **lock_direction** (*boolean**,* *(**optional**)*) – Lock Direction, Limit movement to viewer’s initial direction
        - **speed_frame_based** (*boolean**,* *(**optional**)*) – Frame Based Speed, Apply fixed movement deltas every update
        - **turn_speed_factor** (*float in* *[**0**,* *1**]**,* *(**optional**)*) – Turn Speed Factor, Ratio between the min and max turn speed
        - **fly_speed_factor** (*float in* *[**0**,* *1**]**,* *(**optional**)*) – Fly Speed Factor, Ratio between the min and max fly speed
        - **speed_interpolation0** ([`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 2 items in [0, 1], (optional)) – Speed Interpolation 0, First cubic spline control point between min/max speeds
        - **speed_interpolation1** ([`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 2 items in [0, 1], (optional)) – Speed Interpolation 1, Second cubic spline control point between min/max speeds
        - **alt_mode** (enum in [`'FORWARD'`, `'BACK'`, `'LEFT'`, `'RIGHT'`, `'UP'`, `'DOWN'`, `'TURNLEFT'`, `'TURNRIGHT'`, `'VIEWER_FORWARD'`, `'VIEWER_BACK'`, `'VIEWER_LEFT'`, `'VIEWER_RIGHT'`, `'CONTROLLER_FORWARD'`], (optional)) –

          Mode (Alt), Fly mode when hands are swapped

          - `FORWARD`
            Forward – Move along navigation forward axis.
          - `BACK`
            Back – Move along navigation back axis.
          - `LEFT`
            Left – Move along navigation left axis.
          - `RIGHT`
            Right – Move along navigation right axis.
          - `UP`
            Up – Move along navigation up axis.
          - `DOWN`
            Down – Move along navigation down axis.
          - `TURNLEFT`
            Turn Left – Turn counter-clockwise around navigation up axis.
          - `TURNRIGHT`
            Turn Right – Turn clockwise around navigation up axis.
          - `VIEWER_FORWARD`
            Viewer Forward – Move along viewer’s forward axis.
          - `VIEWER_BACK`
            Viewer Back – Move along viewer’s back axis.
          - `VIEWER_LEFT`
            Viewer Left – Move along viewer’s left axis.
          - `VIEWER_RIGHT`
            Viewer Right – Move along viewer’s right axis.
          - `CONTROLLER_FORWARD`
            Controller Forward – Move along controller’s forward axis.
        - **alt_lock_location_z** (*boolean**,* *(**optional**)*) – Lock Elevation (Alt), When hands are swapped, prevent changes to viewer elevation
        - **alt_lock_direction** (*boolean**,* *(**optional**)*) – Lock Direction (Alt), When hands are swapped, limit movement to viewer’s initial direction

bpy.ops.wm.xr_navigation_grab(*\**, *lock_location=False*, *lock_location_z=False*, *lock_rotation=False*, *lock_rotation_z=False*, *lock_scale=False*)
:   Navigate the VR scene by grabbing with controllers

    Parameters:
    :   - **lock_location** (*boolean**,* *(**optional**)*) – Lock Location, Prevent changes to viewer location
        - **lock_location_z** (*boolean**,* *(**optional**)*) – Lock Elevation, Prevent changes to viewer elevation
        - **lock_rotation** (*boolean**,* *(**optional**)*) – Lock Rotation, Prevent changes to viewer rotation
        - **lock_rotation_z** (*boolean**,* *(**optional**)*) – Lock Up Orientation, Prevent changes to viewer up orientation
        - **lock_scale** (*boolean**,* *(**optional**)*) – Lock Scale, Prevent changes to viewer scale

bpy.ops.wm.xr_navigation_reset(*\**, *location=True*, *rotation=True*, *scale=True*)
:   Reset VR navigation deltas relative to session base pose

    Parameters:
    :   - **location** (*boolean**,* *(**optional**)*) – Location, Reset location deltas
        - **rotation** (*boolean**,* *(**optional**)*) – Rotation, Reset rotation deltas
        - **scale** (*boolean**,* *(**optional**)*) – Scale, Reset scale deltas

bpy.ops.wm.xr_navigation_swap_hands()
:   Swap VR navigation controls between left / right controllers

bpy.ops.wm.xr_navigation_teleport(*\**, *teleport_axes=(True, True, True)*, *interpolation=1.0*, *offset=0.25*, *selectable_only=True*, *distance=80.0*, *gravity=0.1*, *raycast_scale=0.02*, *destination_scale=0.05*, *sample_count=48*, *from_viewer=False*, *axis=(0.0, 0.0, -1.0)*, *hit_color=(0.35, 0.35, 1.0, 1.0)*, *miss_color=(1.0, 0.35, 0.35, 1.0)*, *fallback_color=(0.35, 0.35, 1.0, 1.0)*)
:   Set VR viewer location to controller raycast hit location

    Parameters:
    :   - **teleport_axes** (*boolean array* *of* *3 items**,* *(**optional**)*) – Teleport Axes, Enabled teleport axes in navigation space
        - **interpolation** (*float in* *[**0**,* *1**]**,* *(**optional**)*) – Interpolation, Interpolation factor between viewer and hit locations
        - **offset** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Offset, Offset along hit normal to subtract from final location
        - **selectable_only** (*boolean**,* *(**optional**)*) – Selectable Only, Only allow selectable objects to influence raycast result
        - **distance** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Maximum raycast distance
        - **gravity** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Gravity, Downward curvature applied to raycast
        - **raycast_scale** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Raycast Scale, Width of the raycast visualization
        - **destination_scale** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Destination Scale, Width of the destination visualization
        - **sample_count** (*int in* *[**2**,* *inf**]**,* *(**optional**)*) – Sample Count, Number of interpolation samples for the raycast visualization
        - **from_viewer** (*boolean**,* *(**optional**)*) – From Viewer, Use viewer pose as raycast origin
        - **axis** ([`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 3 items in [-1, 1], (optional)) – Axis, Raycast axis in controller/viewer space
        - **hit_color** (*float array* *of* *4 items in* *[**0**,* *1**]**,* *(**optional**)*) – Hit Color, Color of raycast when it succeeds
        - **miss_color** (*float array* *of* *4 items in* *[**0**,* *1**]**,* *(**optional**)*) – Miss Color, Color of raycast when it misses
        - **fallback_color** (*float array* *of* *4 items in* *[**0**,* *1**]**,* *(**optional**)*) – Fallback Color, Color of raycast when a fallback case succeeds

bpy.ops.wm.xr_session_toggle()
:   Open a view for use with virtual reality headsets, or close it if already opened