[docs]classstart_path(BaseModel):"""Start a new path."""type:Literal["start_path"]="start_path"model_config=ConfigDict(protected_namespaces=())
[docs]classmove_path_pen(BaseModel):"""Move the path's \"pen\"."""path:ModelingCmdIdto:Point3dtype:Literal["move_path_pen"]="move_path_pen"model_config=ConfigDict(protected_namespaces=())
[docs]classextend_path(BaseModel):"""Extend a path by adding a new segment which starts at the path's \"pen\". If no \"pen\" location has been set before (via `MovePen`), then the pen is at the origin."""path:ModelingCmdIdsegment:PathSegmenttype:Literal["extend_path"]="extend_path"model_config=ConfigDict(protected_namespaces=())
[docs]classextrude(BaseModel):"""Command for extruding a solid 2d."""cap:booldistance:LengthUnittarget:ModelingCmdIdtype:Literal["extrude"]="extrude"model_config=ConfigDict(protected_namespaces=())
[docs]classrevolve(BaseModel):"""Command for revolving a solid 2d."""angle:Angleaxis:Point3daxis_is_2d:boolorigin:Point3dtarget:ModelingCmdIdtolerance:LengthUnittype:Literal["revolve"]="revolve"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_shell_face(BaseModel):"""Command for revolving a solid 2d."""face_ids:List[str]hollow:bool=Falseobject_id:strshell_thickness:LengthUnittype:Literal["solid3d_shell_face"]="solid3d_shell_face"model_config=ConfigDict(protected_namespaces=())
[docs]classrevolve_about_edge(BaseModel):"""Command for revolving a solid 2d about a brep edge"""angle:Angleedge_id:strtarget:ModelingCmdIdtolerance:LengthUnittype:Literal["revolve_about_edge"]="revolve_about_edge"model_config=ConfigDict(protected_namespaces=())
[docs]classclose_path(BaseModel):"""Closes a path, converting it to a 2D solid."""path_id:strtype:Literal["close_path"]="close_path"model_config=ConfigDict(protected_namespaces=())
[docs]classdefault_camera_get_settings(BaseModel):"""Gets the default camera's camera settings"""type:Literal["default_camera_get_settings"]="default_camera_get_settings"model_config=ConfigDict(protected_namespaces=())
[docs]classdefault_camera_look_at(BaseModel):"""Change what the default camera is looking at."""center:Point3dsequence:Optional[int]=Nonetype:Literal["default_camera_look_at"]="default_camera_look_at"up:Point3dvantage:Point3dmodel_config=ConfigDict(protected_namespaces=())
[docs]classdefault_camera_perspective_settings(BaseModel):"""Change what the default camera is looking at."""center:Point3dfov_y:Optional[float]=Nonesequence:Optional[int]=Nonetype:Literal["default_camera_perspective_settings"]=("default_camera_perspective_settings")up:Point3dvantage:Point3dz_far:Optional[float]=Nonez_near:Optional[float]=Nonemodel_config=ConfigDict(protected_namespaces=())
[docs]classdefault_camera_zoom(BaseModel):"""Adjust zoom of the default camera."""magnitude:floattype:Literal["default_camera_zoom"]="default_camera_zoom"model_config=ConfigDict(protected_namespaces=())
[docs]classexport(BaseModel):"""Export the scene to a file."""entity_ids:List[str]format:OutputFormattype:Literal["export"]="export"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_get_parent_id(BaseModel):"""What is this entity's parent?"""entity_id:strtype:Literal["entity_get_parent_id"]="entity_get_parent_id"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_get_num_children(BaseModel):"""How many children does the entity have?"""entity_id:strtype:Literal["entity_get_num_children"]="entity_get_num_children"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_get_child_uuid(BaseModel):"""What is the UUID of this entity's n-th child?"""child_index:intentity_id:strtype:Literal["entity_get_child_uuid"]="entity_get_child_uuid"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_get_all_child_uuids(BaseModel):"""What are all UUIDs of this entity's children?"""entity_id:strtype:Literal["entity_get_all_child_uuids"]="entity_get_all_child_uuids"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_get_sketch_paths(BaseModel):"""What are all UUIDs of all the paths sketched on top of this entity?"""entity_id:strtype:Literal["entity_get_sketch_paths"]="entity_get_sketch_paths"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_get_distance(BaseModel):"""What is the distance between these two entities?"""distance_type:DistanceTypeentity_id1:strentity_id2:strtype:Literal["entity_get_distance"]="entity_get_distance"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_linear_pattern_transform(BaseModel):"""Create a pattern using this entity by specifying the transform for each desired repetition."""entity_id:strtransform:List[LinearTransform]type:Literal["entity_linear_pattern_transform"]="entity_linear_pattern_transform"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_linear_pattern(BaseModel):"""Create a linear pattern using this entity."""axis:Point3dentity_id:strnum_repetitions:intspacing:LengthUnittype:Literal["entity_linear_pattern"]="entity_linear_pattern"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_circular_pattern(BaseModel):"""Create a circular pattern using this entity."""arc_degrees:floataxis:Point3dcenter:Point3dentity_id:strnum_repetitions:introtate_duplicates:booltype:Literal["entity_circular_pattern"]="entity_circular_pattern"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_make_helix(BaseModel):"""Create a helix using the input cylinder and other specified parameters."""cylinder_id:stris_clockwise:boollength:LengthUnitrevolutions:floatstart_angle:Angletype:Literal["entity_make_helix"]="entity_make_helix"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_mirror(BaseModel):"""Mirror the input entities over the specified axis. (Currently only supports sketches)"""axis:Point3dids:List[str]point:Point3dtype:Literal["entity_mirror"]="entity_mirror"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_mirror_across_edge(BaseModel):"""Mirror the input entities over the specified edge. (Currently only supports sketches)"""edge_id:strids:List[str]type:Literal["entity_mirror_across_edge"]="entity_mirror_across_edge"model_config=ConfigDict(protected_namespaces=())
[docs]classselect_with_point(BaseModel):"""Modifies the selection by simulating a \"mouse click\" at the given x,y window coordinate Returns ID of whatever was selected."""selected_at_window:Point2dselection_type:SceneSelectionTypetype:Literal["select_with_point"]="select_with_point"model_config=ConfigDict(protected_namespaces=())
[docs]classselect_add(BaseModel):"""Adds one or more entities (by UUID) to the selection."""entities:List[str]type:Literal["select_add"]="select_add"model_config=ConfigDict(protected_namespaces=())
[docs]classselect_remove(BaseModel):"""Removes one or more entities (by UUID) from the selection."""entities:List[str]type:Literal["select_remove"]="select_remove"model_config=ConfigDict(protected_namespaces=())
[docs]classscene_clear_all(BaseModel):"""Removes all of the Objects in the scene"""type:Literal["scene_clear_all"]="scene_clear_all"model_config=ConfigDict(protected_namespaces=())
[docs]classselect_replace(BaseModel):"""Replaces current selection with these entities (by UUID)."""entities:List[str]type:Literal["select_replace"]="select_replace"model_config=ConfigDict(protected_namespaces=())
[docs]classhighlight_set_entity(BaseModel):"""Changes the current highlighted entity to whichever one is at the given window coordinate. If there's no entity at this location, clears the highlight."""selected_at_window:Point2dsequence:Optional[int]=Nonetype:Literal["highlight_set_entity"]="highlight_set_entity"model_config=ConfigDict(protected_namespaces=())
[docs]classhighlight_set_entities(BaseModel):"""Changes the current highlighted entity to these entities."""entities:List[str]type:Literal["highlight_set_entities"]="highlight_set_entities"model_config=ConfigDict(protected_namespaces=())
[docs]classnew_annotation(BaseModel):"""Create a new annotation"""annotation_type:AnnotationTypeclobber:booloptions:AnnotationOptionstype:Literal["new_annotation"]="new_annotation"model_config=ConfigDict(protected_namespaces=())
[docs]classupdate_annotation(BaseModel):"""Update an annotation"""annotation_id:stroptions:AnnotationOptionstype:Literal["update_annotation"]="update_annotation"model_config=ConfigDict(protected_namespaces=())
[docs]classedge_lines_visible(BaseModel):"""Changes visibility of scene-wide edge lines on brep solids"""hidden:booltype:Literal["edge_lines_visible"]="edge_lines_visible"model_config=ConfigDict(protected_namespaces=())
[docs]classobject_visible(BaseModel):"""Hide or show an object"""hidden:boolobject_id:strtype:Literal["object_visible"]="object_visible"model_config=ConfigDict(protected_namespaces=())
[docs]classobject_bring_to_front(BaseModel):"""Bring an object to the front of the scene"""object_id:strtype:Literal["object_bring_to_front"]="object_bring_to_front"model_config=ConfigDict(protected_namespaces=())
[docs]classobject_set_material_params_pbr(BaseModel):"""Set the material properties of an object"""ambient_occlusion:floatcolor:Colormetalness:floatobject_id:strroughness:floattype:Literal["object_set_material_params_pbr"]="object_set_material_params_pbr"model_config=ConfigDict(protected_namespaces=())
[docs]classget_entity_type(BaseModel):"""What type of entity is this?"""entity_id:strtype:Literal["get_entity_type"]="get_entity_type"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_get_all_edge_faces(BaseModel):"""Gets all faces which use the given edge."""edge_id:strobject_id:strtype:Literal["solid3d_get_all_edge_faces"]="solid3d_get_all_edge_faces"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid2d_add_hole(BaseModel):"""Add a hole to a Solid2d object before extruding it."""hole_id:strobject_id:strtype:Literal["solid2d_add_hole"]="solid2d_add_hole"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_get_all_opposite_edges(BaseModel):"""Gets all edges which are opposite the given edge, across all possible faces."""along_vector:Optional[Point3d]=Noneedge_id:strobject_id:strtype:Literal["solid3d_get_all_opposite_edges"]="solid3d_get_all_opposite_edges"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_get_opposite_edge(BaseModel):"""Gets the edge opposite the given edge, along the given face."""edge_id:strface_id:strobject_id:strtype:Literal["solid3d_get_opposite_edge"]="solid3d_get_opposite_edge"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_get_next_adjacent_edge(BaseModel):"""Gets the next adjacent edge for the given edge, along the given face."""edge_id:strface_id:strobject_id:strtype:Literal["solid3d_get_next_adjacent_edge"]="solid3d_get_next_adjacent_edge"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_get_prev_adjacent_edge(BaseModel):"""Gets the previous adjacent edge for the given edge, along the given face."""edge_id:strface_id:strobject_id:strtype:Literal["solid3d_get_prev_adjacent_edge"]="solid3d_get_prev_adjacent_edge"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_fillet_edge(BaseModel):"""Fillets the given edge with the specified radius."""cut_type:CutType="fillet"edge_id:strobject_id:strradius:LengthUnittolerance:LengthUnittype:Literal["solid3d_fillet_edge"]="solid3d_fillet_edge"model_config=ConfigDict(protected_namespaces=())
[docs]classface_is_planar(BaseModel):"""Determines whether a brep face is planar and returns its surface-local planar axes if so"""object_id:strtype:Literal["face_is_planar"]="face_is_planar"model_config=ConfigDict(protected_namespaces=())
[docs]classface_get_position(BaseModel):"""Determines a position on a brep face evaluated by parameters u,v"""object_id:strtype:Literal["face_get_position"]="face_get_position"uv:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classface_get_center(BaseModel):"""Obtains the surface \"center of mass\" """object_id:strtype:Literal["face_get_center"]="face_get_center"model_config=ConfigDict(protected_namespaces=())
[docs]classface_get_gradient(BaseModel):"""Determines the gradient (dFdu, dFdv) + normal vector on a brep face evaluated by parameters u,v"""object_id:strtype:Literal["face_get_gradient"]="face_get_gradient"uv:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classsend_object(BaseModel):"""Send object to front or back."""front:boolobject_id:strtype:Literal["send_object"]="send_object"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_set_opacity(BaseModel):"""Set opacity of the entity."""entity_id:stropacity:floattype:Literal["entity_set_opacity"]="entity_set_opacity"model_config=ConfigDict(protected_namespaces=())
[docs]classentity_fade(BaseModel):"""Fade entity in or out."""duration_seconds:float=0.4000000059604645entity_id:strfade_in:booltype:Literal["entity_fade"]="entity_fade"model_config=ConfigDict(protected_namespaces=())
[docs]classmake_plane(BaseModel):"""Make a new plane"""clobber:boolhide:Optional[bool]=Noneorigin:Point3dsize:LengthUnittype:Literal["make_plane"]="make_plane"x_axis:Point3dy_axis:Point3dmodel_config=ConfigDict(protected_namespaces=())
[docs]classplane_set_color(BaseModel):"""Set the color of a plane."""color:Colorplane_id:strtype:Literal["plane_set_color"]="plane_set_color"model_config=ConfigDict(protected_namespaces=())
[docs]classset_tool(BaseModel):"""Set the current tool."""tool:SceneToolTypetype:Literal["set_tool"]="set_tool"model_config=ConfigDict(protected_namespaces=())
[docs]classmouse_move(BaseModel):"""Send a mouse move event"""sequence:Optional[int]=Nonetype:Literal["mouse_move"]="mouse_move"window:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classmouse_click(BaseModel):"""Send a mouse click event Updates modified/selected entities."""type:Literal["mouse_click"]="mouse_click"window:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classsketch_mode_disable(BaseModel):"""Disable sketch mode. If you are sketching on a face, be sure to not disable sketch mode until you have extruded. Otherwise, your object will not be fused with the face."""type:Literal["sketch_mode_disable"]="sketch_mode_disable"model_config=ConfigDict(protected_namespaces=())
[docs]classget_sketch_mode_plane(BaseModel):"""Get the plane for sketch mode."""type:Literal["get_sketch_mode_plane"]="get_sketch_mode_plane"model_config=ConfigDict(protected_namespaces=())
[docs]classcurve_set_constraint(BaseModel):"""Get the plane for sketch mode."""constraint_bound:PathComponentConstraintBoundconstraint_type:PathComponentConstraintTypeobject_id:strtype:Literal["curve_set_constraint"]="curve_set_constraint"model_config=ConfigDict(protected_namespaces=())
[docs]classenable_sketch_mode(BaseModel):"""Sketch on some entity (e.g. a plane, a face)."""adjust_camera:boolanimated:boolentity_id:strortho:boolplanar_normal:Optional[Point3d]=Nonetype:Literal["enable_sketch_mode"]="enable_sketch_mode"model_config=ConfigDict(protected_namespaces=())
[docs]classset_background_color(BaseModel):"""Set the background color of the scene."""color:Colortype:Literal["set_background_color"]="set_background_color"model_config=ConfigDict(protected_namespaces=())
[docs]classset_current_tool_properties(BaseModel):"""Set the properties of the tool lines for the scene."""color:Optional[Color]=Nonetype:Literal["set_current_tool_properties"]="set_current_tool_properties"model_config=ConfigDict(protected_namespaces=())
[docs]classset_default_system_properties(BaseModel):"""Set the default system properties used when a specific property isn't set."""color:Optional[Color]=Nonetype:Literal["set_default_system_properties"]="set_default_system_properties"model_config=ConfigDict(protected_namespaces=())
[docs]classcurve_get_type(BaseModel):"""Get type of the given curve."""curve_id:strtype:Literal["curve_get_type"]="curve_get_type"model_config=ConfigDict(protected_namespaces=())
[docs]classcurve_get_control_points(BaseModel):"""Get control points of the given curve."""curve_id:strtype:Literal["curve_get_control_points"]="curve_get_control_points"model_config=ConfigDict(protected_namespaces=())
[docs]classtake_snapshot(BaseModel):"""Take a snapshot of the current view."""format:ImageFormattype:Literal["take_snapshot"]="take_snapshot"model_config=ConfigDict(protected_namespaces=())
[docs]classmake_axes_gizmo(BaseModel):"""Add a gizmo showing the axes."""clobber:boolgizmo_mode:booltype:Literal["make_axes_gizmo"]="make_axes_gizmo"model_config=ConfigDict(protected_namespaces=())
[docs]classpath_get_info(BaseModel):"""Query the given path."""path_id:strtype:Literal["path_get_info"]="path_get_info"model_config=ConfigDict(protected_namespaces=())
[docs]classpath_get_curve_uuids_for_vertices(BaseModel):"""Obtain curve ids for vertex ids"""path_id:strtype:Literal["path_get_curve_uuids_for_vertices"]=("path_get_curve_uuids_for_vertices")vertex_ids:List[str]model_config=ConfigDict(protected_namespaces=())
[docs]classpath_get_curve_uuid(BaseModel):"""Obtain curve id by index"""index:intpath_id:strtype:Literal["path_get_curve_uuid"]="path_get_curve_uuid"model_config=ConfigDict(protected_namespaces=())
[docs]classpath_get_vertex_uuids(BaseModel):"""Obtain vertex ids for a path"""path_id:strtype:Literal["path_get_vertex_uuids"]="path_get_vertex_uuids"model_config=ConfigDict(protected_namespaces=())
[docs]classpath_get_sketch_target_uuid(BaseModel):"""Obtain the sketch target id (if the path was drawn in sketchmode) for a path"""path_id:strtype:Literal["path_get_sketch_target_uuid"]="path_get_sketch_target_uuid"model_config=ConfigDict(protected_namespaces=())
[docs]classhandle_mouse_drag_start(BaseModel):"""Start dragging the mouse."""type:Literal["handle_mouse_drag_start"]="handle_mouse_drag_start"window:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classhandle_mouse_drag_move(BaseModel):"""Continue dragging the mouse."""sequence:Optional[int]=Nonetype:Literal["handle_mouse_drag_move"]="handle_mouse_drag_move"window:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classhandle_mouse_drag_end(BaseModel):"""Stop dragging the mouse."""type:Literal["handle_mouse_drag_end"]="handle_mouse_drag_end"window:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classremove_scene_objects(BaseModel):"""Remove scene objects."""object_ids:List[str]type:Literal["remove_scene_objects"]="remove_scene_objects"model_config=ConfigDict(protected_namespaces=())
[docs]classplane_intersect_and_project(BaseModel):"""Utility method. Performs both a ray cast and projection to plane-local coordinates. Returns the plane coordinates for the given window coordinates."""plane_id:strtype:Literal["plane_intersect_and_project"]="plane_intersect_and_project"window:Point2dmodel_config=ConfigDict(protected_namespaces=())
[docs]classcurve_get_end_points(BaseModel):"""Find the start and end of a curve."""curve_id:strtype:Literal["curve_get_end_points"]="curve_get_end_points"model_config=ConfigDict(protected_namespaces=())
[docs]classreconfigure_stream(BaseModel):"""Reconfigure the stream."""fps:intheight:inttype:Literal["reconfigure_stream"]="reconfigure_stream"width:intmodel_config=ConfigDict(protected_namespaces=())
[docs]classimport_files(BaseModel):"""Import files to the current model."""files:List[ImportFile]format:InputFormattype:Literal["import_files"]="import_files"model_config=ConfigDict(protected_namespaces=())
[docs]classset_scene_units(BaseModel):"""Set the units of the scene. For all following commands, the units will be interpreted as the given units."""type:Literal["set_scene_units"]="set_scene_units"unit:UnitLengthmodel_config=ConfigDict(protected_namespaces=())
[docs]classmass(BaseModel):"""Get the mass of entities in the scene or the default scene."""entity_ids:List[str]material_density:floatmaterial_density_unit:UnitDensityoutput_unit:UnitMasstype:Literal["mass"]="mass"model_config=ConfigDict(protected_namespaces=())
[docs]classdensity(BaseModel):"""Get the density of entities in the scene or the default scene."""entity_ids:List[str]material_mass:floatmaterial_mass_unit:UnitMassoutput_unit:UnitDensitytype:Literal["density"]="density"model_config=ConfigDict(protected_namespaces=())
[docs]classvolume(BaseModel):"""Get the volume of entities in the scene or the default scene."""entity_ids:List[str]output_unit:UnitVolumetype:Literal["volume"]="volume"model_config=ConfigDict(protected_namespaces=())
[docs]classcenter_of_mass(BaseModel):"""Get the center of mass of entities in the scene or the default scene."""entity_ids:List[str]output_unit:UnitLengthtype:Literal["center_of_mass"]="center_of_mass"model_config=ConfigDict(protected_namespaces=())
[docs]classsurface_area(BaseModel):"""Get the surface area of entities in the scene or the default scene."""entity_ids:List[str]output_unit:UnitAreatype:Literal["surface_area"]="surface_area"model_config=ConfigDict(protected_namespaces=())
[docs]classdefault_camera_focus_on(BaseModel):"""Focus the default camera upon an object in the scene."""type:Literal["default_camera_focus_on"]="default_camera_focus_on"uuid:strmodel_config=ConfigDict(protected_namespaces=())
[docs]classset_selection_type(BaseModel):"""When you select some entity with the current tool, what should happen to the entity?"""selection_type:SceneSelectionTypetype:Literal["set_selection_type"]="set_selection_type"model_config=ConfigDict(protected_namespaces=())
[docs]classset_selection_filter(BaseModel):"""What kind of entities can be selected?"""filter:List[EntityType]type:Literal["set_selection_filter"]="set_selection_filter"model_config=ConfigDict(protected_namespaces=())
[docs]classzoom_to_fit(BaseModel):"""Fit the view to the specified object(s)."""object_ids:List[str]=[]padding:floattype:Literal["zoom_to_fit"]="zoom_to_fit"model_config=ConfigDict(protected_namespaces=())
[docs]classview_isometric(BaseModel):"""Fit the view to the scene with an isometric view."""padding:float=0.0type:Literal["view_isometric"]="view_isometric"model_config=ConfigDict(protected_namespaces=())
[docs]classsolid3d_get_extrusion_face_info(BaseModel):"""Get a concise description of all of an extrusion's faces."""edge_id:strobject_id:strtype:Literal["solid3d_get_extrusion_face_info"]="solid3d_get_extrusion_face_info"model_config=ConfigDict(protected_namespaces=())
[docs]classselect_clear(BaseModel):"""Clear the selection"""type:Literal["select_clear"]="select_clear"model_config=ConfigDict(protected_namespaces=())
[docs]classselect_get(BaseModel):"""Find all IDs of selected entities"""type:Literal["select_get"]="select_get"model_config=ConfigDict(protected_namespaces=())
[docs]classget_num_objects(BaseModel):"""Get the number of objects in the scene"""type:Literal["get_num_objects"]="get_num_objects"model_config=ConfigDict(protected_namespaces=())