Deterministic parallelized snaps (#6527)
* initial pass Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> changes Signed-off-by: Jess Frazelle <github@jessfraz.com> more updates Signed-off-by: Jess Frazelle <github@jessfraz.com> more updates Signed-off-by: Jess Frazelle <github@jessfraz.com> serde variant name Signed-off-by: Jess Frazelle <github@jessfraz.com> fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> some sort Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> sort the edges Signed-off-by: Jess Frazelle <github@jessfraz.com> fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> u[dates Signed-off-by: Jess Frazelle <github@jessfraz.com> u[dates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> cleanups Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> add bs-to-kcl Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> * fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> --------- Signed-off-by: Jess Frazelle <github@jessfraz.com>
This commit is contained in:
		@ -54,347 +54,6 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      "hide": true
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "enable_sketch_mode",
 | 
			
		||||
      "entity_id": "[uuid]",
 | 
			
		||||
      "ortho": false,
 | 
			
		||||
      "animated": false,
 | 
			
		||||
      "adjust_camera": false,
 | 
			
		||||
      "planar_normal": {
 | 
			
		||||
        "x": 0.0,
 | 
			
		||||
        "y": 0.0,
 | 
			
		||||
        "z": 1.0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "start_path"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "move_path_pen",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "to": {
 | 
			
		||||
        "x": -10.0,
 | 
			
		||||
        "y": -10.0,
 | 
			
		||||
        "z": 0.0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extend_path",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "segment": {
 | 
			
		||||
        "type": "line",
 | 
			
		||||
        "end": {
 | 
			
		||||
          "x": 10.0,
 | 
			
		||||
          "y": -10.0,
 | 
			
		||||
          "z": 0.0
 | 
			
		||||
        },
 | 
			
		||||
        "relative": false
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extend_path",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "segment": {
 | 
			
		||||
        "type": "line",
 | 
			
		||||
        "end": {
 | 
			
		||||
          "x": 10.0,
 | 
			
		||||
          "y": 10.0,
 | 
			
		||||
          "z": 0.0
 | 
			
		||||
        },
 | 
			
		||||
        "relative": false
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extend_path",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "segment": {
 | 
			
		||||
        "type": "line",
 | 
			
		||||
        "end": {
 | 
			
		||||
          "x": -10.0,
 | 
			
		||||
          "y": 10.0,
 | 
			
		||||
          "z": 0.0
 | 
			
		||||
        },
 | 
			
		||||
        "relative": false
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "close_path",
 | 
			
		||||
      "path_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "enable_sketch_mode",
 | 
			
		||||
      "entity_id": "[uuid]",
 | 
			
		||||
      "ortho": false,
 | 
			
		||||
      "animated": false,
 | 
			
		||||
      "adjust_camera": false,
 | 
			
		||||
      "planar_normal": {
 | 
			
		||||
        "x": 0.0,
 | 
			
		||||
        "y": 0.0,
 | 
			
		||||
        "z": 1.0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extrude",
 | 
			
		||||
      "target": "[uuid]",
 | 
			
		||||
      "distance": 10.0,
 | 
			
		||||
      "faces": null,
 | 
			
		||||
      "opposite": "None"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "object_bring_to_front",
 | 
			
		||||
      "object_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_extrusion_face_info",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -440,7 +99,29 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "start_path"
 | 
			
		||||
      "type": "enable_sketch_mode",
 | 
			
		||||
      "entity_id": "[uuid]",
 | 
			
		||||
      "ortho": false,
 | 
			
		||||
      "animated": false,
 | 
			
		||||
      "adjust_camera": false,
 | 
			
		||||
      "planar_normal": {
 | 
			
		||||
        "x": 0.0,
 | 
			
		||||
        "y": 0.0,
 | 
			
		||||
        "z": 1.0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "move_path_pen",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "to": {
 | 
			
		||||
        "x": -10.0,
 | 
			
		||||
        "y": -10.0,
 | 
			
		||||
        "z": 0.0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@ -463,6 +144,44 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "start_path"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "start_path"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extend_path",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "segment": {
 | 
			
		||||
        "type": "line",
 | 
			
		||||
        "end": {
 | 
			
		||||
          "x": 10.0,
 | 
			
		||||
          "y": -10.0,
 | 
			
		||||
          "z": 0.0
 | 
			
		||||
        },
 | 
			
		||||
        "relative": false
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -480,6 +199,23 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extend_path",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "segment": {
 | 
			
		||||
        "type": "line",
 | 
			
		||||
        "end": {
 | 
			
		||||
          "x": 10.0,
 | 
			
		||||
          "y": 10.0,
 | 
			
		||||
          "z": 0.0
 | 
			
		||||
        },
 | 
			
		||||
        "relative": false
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -497,6 +233,23 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "extend_path",
 | 
			
		||||
      "path": "[uuid]",
 | 
			
		||||
      "segment": {
 | 
			
		||||
        "type": "line",
 | 
			
		||||
        "end": {
 | 
			
		||||
          "x": -10.0,
 | 
			
		||||
          "y": 10.0,
 | 
			
		||||
          "z": 0.0
 | 
			
		||||
        },
 | 
			
		||||
        "relative": false
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -522,6 +275,30 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      "path_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "close_path",
 | 
			
		||||
      "path_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "enable_sketch_mode",
 | 
			
		||||
      "entity_id": "[uuid]",
 | 
			
		||||
      "ortho": false,
 | 
			
		||||
      "animated": false,
 | 
			
		||||
      "adjust_camera": false,
 | 
			
		||||
      "planar_normal": {
 | 
			
		||||
        "x": 0.0,
 | 
			
		||||
        "y": 0.0,
 | 
			
		||||
        "z": 1.0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -553,7 +330,11 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
      "type": "extrude",
 | 
			
		||||
      "target": "[uuid]",
 | 
			
		||||
      "distance": 10.0,
 | 
			
		||||
      "faces": null,
 | 
			
		||||
      "opposite": "None"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@ -564,6 +345,244 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      "object_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "object_bring_to_front",
 | 
			
		||||
      "object_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -577,26 +596,7 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "type": "solid3d_get_extrusion_face_info",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
@ -615,39 +615,12 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -662,39 +635,12 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -709,39 +655,12 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
@ -756,9 +675,90 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_all_edge_faces",
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
 | 
			
		||||
@ -1,160 +1,160 @@
 | 
			
		||||
```mermaid
 | 
			
		||||
flowchart LR
 | 
			
		||||
  subgraph path2 [Path]
 | 
			
		||||
    2["Path<br>[58, 113, 0]"]
 | 
			
		||||
    3["Segment<br>[121, 177, 0]"]
 | 
			
		||||
    4["Segment<br>[185, 241, 0]"]
 | 
			
		||||
    5["Segment<br>[249, 305, 0]"]
 | 
			
		||||
    6["Segment<br>[313, 320, 0]"]
 | 
			
		||||
    7[Solid2d]
 | 
			
		||||
  subgraph path3 [Path]
 | 
			
		||||
    3["Path<br>[58, 113, 0]"]
 | 
			
		||||
    5["Segment<br>[121, 177, 0]"]
 | 
			
		||||
    8["Segment<br>[185, 241, 0]"]
 | 
			
		||||
    10["Segment<br>[249, 305, 0]"]
 | 
			
		||||
    11["Segment<br>[313, 320, 0]"]
 | 
			
		||||
    13[Solid2d]
 | 
			
		||||
  end
 | 
			
		||||
  subgraph path24 [Path]
 | 
			
		||||
    24["Path<br>[58, 113, 0]"]
 | 
			
		||||
    25["Segment<br>[121, 177, 0]"]
 | 
			
		||||
    26["Segment<br>[185, 241, 0]"]
 | 
			
		||||
    27["Segment<br>[249, 305, 0]"]
 | 
			
		||||
    28["Segment<br>[313, 320, 0]"]
 | 
			
		||||
    29[Solid2d]
 | 
			
		||||
  subgraph path4 [Path]
 | 
			
		||||
    4["Path<br>[58, 113, 0]"]
 | 
			
		||||
    6["Segment<br>[121, 177, 0]"]
 | 
			
		||||
    7["Segment<br>[185, 241, 0]"]
 | 
			
		||||
    9["Segment<br>[249, 305, 0]"]
 | 
			
		||||
    12["Segment<br>[313, 320, 0]"]
 | 
			
		||||
    14[Solid2d]
 | 
			
		||||
  end
 | 
			
		||||
  1["Plane<br>[33, 50, 0]"]
 | 
			
		||||
  8["Sweep Extrusion<br>[328, 348, 0]"]
 | 
			
		||||
  9[Wall]
 | 
			
		||||
  10[Wall]
 | 
			
		||||
  11[Wall]
 | 
			
		||||
  12[Wall]
 | 
			
		||||
  13["Cap Start"]
 | 
			
		||||
  14["Cap End"]
 | 
			
		||||
  15["SweepEdge Opposite"]
 | 
			
		||||
  16["SweepEdge Adjacent"]
 | 
			
		||||
  17["SweepEdge Opposite"]
 | 
			
		||||
  18["SweepEdge Adjacent"]
 | 
			
		||||
  19["SweepEdge Opposite"]
 | 
			
		||||
  20["SweepEdge Adjacent"]
 | 
			
		||||
  21["SweepEdge Opposite"]
 | 
			
		||||
  22["SweepEdge Adjacent"]
 | 
			
		||||
  23["Plane<br>[33, 50, 0]"]
 | 
			
		||||
  30["Sweep Extrusion<br>[328, 348, 0]"]
 | 
			
		||||
  31[Wall]
 | 
			
		||||
  32[Wall]
 | 
			
		||||
  33[Wall]
 | 
			
		||||
  34[Wall]
 | 
			
		||||
  35["Cap Start"]
 | 
			
		||||
  36["Cap End"]
 | 
			
		||||
  2["Plane<br>[33, 50, 0]"]
 | 
			
		||||
  15["Sweep Extrusion<br>[328, 348, 0]"]
 | 
			
		||||
  16["Sweep Extrusion<br>[328, 348, 0]"]
 | 
			
		||||
  17["CompositeSolid Subtract<br>[445, 479, 0]"]
 | 
			
		||||
  18[Wall]
 | 
			
		||||
  19[Wall]
 | 
			
		||||
  20[Wall]
 | 
			
		||||
  21[Wall]
 | 
			
		||||
  22[Wall]
 | 
			
		||||
  23[Wall]
 | 
			
		||||
  24[Wall]
 | 
			
		||||
  25[Wall]
 | 
			
		||||
  26["Cap Start"]
 | 
			
		||||
  27["Cap Start"]
 | 
			
		||||
  28["Cap End"]
 | 
			
		||||
  29["Cap End"]
 | 
			
		||||
  30["SweepEdge Opposite"]
 | 
			
		||||
  31["SweepEdge Opposite"]
 | 
			
		||||
  32["SweepEdge Opposite"]
 | 
			
		||||
  33["SweepEdge Opposite"]
 | 
			
		||||
  34["SweepEdge Opposite"]
 | 
			
		||||
  35["SweepEdge Opposite"]
 | 
			
		||||
  36["SweepEdge Opposite"]
 | 
			
		||||
  37["SweepEdge Opposite"]
 | 
			
		||||
  38["SweepEdge Adjacent"]
 | 
			
		||||
  39["SweepEdge Opposite"]
 | 
			
		||||
  39["SweepEdge Adjacent"]
 | 
			
		||||
  40["SweepEdge Adjacent"]
 | 
			
		||||
  41["SweepEdge Opposite"]
 | 
			
		||||
  41["SweepEdge Adjacent"]
 | 
			
		||||
  42["SweepEdge Adjacent"]
 | 
			
		||||
  43["SweepEdge Opposite"]
 | 
			
		||||
  43["SweepEdge Adjacent"]
 | 
			
		||||
  44["SweepEdge Adjacent"]
 | 
			
		||||
  45["CompositeSolid Subtract<br>[445, 479, 0]"]
 | 
			
		||||
  1 --- 2
 | 
			
		||||
  2 --- 3
 | 
			
		||||
  45["SweepEdge Adjacent"]
 | 
			
		||||
  1 --- 3
 | 
			
		||||
  2 --- 4
 | 
			
		||||
  2 --- 5
 | 
			
		||||
  2 --- 6
 | 
			
		||||
  2 ---- 8
 | 
			
		||||
  2 --- 7
 | 
			
		||||
  3 --- 9
 | 
			
		||||
  3 --- 15
 | 
			
		||||
  3 --- 16
 | 
			
		||||
  3 x--> 13
 | 
			
		||||
  4 --- 10
 | 
			
		||||
  4 --- 17
 | 
			
		||||
  4 --- 18
 | 
			
		||||
  4 x--> 13
 | 
			
		||||
  5 --- 11
 | 
			
		||||
  5 --- 19
 | 
			
		||||
  5 --- 20
 | 
			
		||||
  5 x--> 13
 | 
			
		||||
  6 --- 12
 | 
			
		||||
  3 --- 5
 | 
			
		||||
  3 --- 8
 | 
			
		||||
  3 --- 10
 | 
			
		||||
  3 --- 11
 | 
			
		||||
  3 --- 13
 | 
			
		||||
  3 ---- 16
 | 
			
		||||
  3 <--x 17
 | 
			
		||||
  4 --- 6
 | 
			
		||||
  4 --- 7
 | 
			
		||||
  4 --- 9
 | 
			
		||||
  4 --- 12
 | 
			
		||||
  4 --- 14
 | 
			
		||||
  4 ---- 15
 | 
			
		||||
  4 <--x 17
 | 
			
		||||
  5 --- 24
 | 
			
		||||
  5 x--> 27
 | 
			
		||||
  5 --- 35
 | 
			
		||||
  5 --- 42
 | 
			
		||||
  6 --- 21
 | 
			
		||||
  6 --- 22
 | 
			
		||||
  6 x--> 13
 | 
			
		||||
  8 --- 9
 | 
			
		||||
  8 --- 10
 | 
			
		||||
  8 --- 11
 | 
			
		||||
  8 --- 12
 | 
			
		||||
  8 --- 13
 | 
			
		||||
  8 --- 14
 | 
			
		||||
  8 --- 15
 | 
			
		||||
  8 --- 16
 | 
			
		||||
  8 --- 17
 | 
			
		||||
  8 --- 18
 | 
			
		||||
  8 --- 19
 | 
			
		||||
  8 --- 20
 | 
			
		||||
  8 --- 21
 | 
			
		||||
  8 --- 22
 | 
			
		||||
  15 <--x 9
 | 
			
		||||
  15 <--x 14
 | 
			
		||||
  16 <--x 9
 | 
			
		||||
  16 <--x 10
 | 
			
		||||
  17 <--x 10
 | 
			
		||||
  17 <--x 14
 | 
			
		||||
  18 <--x 10
 | 
			
		||||
  18 <--x 11
 | 
			
		||||
  19 <--x 11
 | 
			
		||||
  19 <--x 14
 | 
			
		||||
  20 <--x 11
 | 
			
		||||
  20 <--x 12
 | 
			
		||||
  21 <--x 12
 | 
			
		||||
  21 <--x 14
 | 
			
		||||
  22 <--x 9
 | 
			
		||||
  22 <--x 12
 | 
			
		||||
  23 --- 24
 | 
			
		||||
  24 --- 25
 | 
			
		||||
  24 --- 26
 | 
			
		||||
  24 --- 27
 | 
			
		||||
  24 --- 28
 | 
			
		||||
  24 ---- 30
 | 
			
		||||
  24 --- 29
 | 
			
		||||
  25 --- 31
 | 
			
		||||
  25 --- 37
 | 
			
		||||
  25 --- 38
 | 
			
		||||
  25 x--> 35
 | 
			
		||||
  26 --- 32
 | 
			
		||||
  26 --- 39
 | 
			
		||||
  26 --- 40
 | 
			
		||||
  26 x--> 35
 | 
			
		||||
  27 --- 33
 | 
			
		||||
  27 --- 41
 | 
			
		||||
  27 --- 42
 | 
			
		||||
  27 x--> 35
 | 
			
		||||
  28 --- 34
 | 
			
		||||
  28 --- 43
 | 
			
		||||
  28 --- 44
 | 
			
		||||
  28 x--> 35
 | 
			
		||||
  30 --- 31
 | 
			
		||||
  30 --- 32
 | 
			
		||||
  30 --- 33
 | 
			
		||||
  30 --- 34
 | 
			
		||||
  30 --- 35
 | 
			
		||||
  30 --- 36
 | 
			
		||||
  30 --- 37
 | 
			
		||||
  30 --- 38
 | 
			
		||||
  30 --- 39
 | 
			
		||||
  30 --- 40
 | 
			
		||||
  30 --- 41
 | 
			
		||||
  30 --- 42
 | 
			
		||||
  30 --- 43
 | 
			
		||||
  30 --- 44
 | 
			
		||||
  37 <--x 31
 | 
			
		||||
  37 <--x 36
 | 
			
		||||
  38 <--x 31
 | 
			
		||||
  38 <--x 32
 | 
			
		||||
  39 <--x 32
 | 
			
		||||
  39 <--x 36
 | 
			
		||||
  40 <--x 32
 | 
			
		||||
  40 <--x 33
 | 
			
		||||
  41 <--x 33
 | 
			
		||||
  41 <--x 36
 | 
			
		||||
  42 <--x 33
 | 
			
		||||
  42 <--x 34
 | 
			
		||||
  43 <--x 34
 | 
			
		||||
  43 <--x 36
 | 
			
		||||
  44 <--x 31
 | 
			
		||||
  44 <--x 34
 | 
			
		||||
  2 <--x 45
 | 
			
		||||
  24 <--x 45
 | 
			
		||||
  6 x--> 26
 | 
			
		||||
  6 --- 31
 | 
			
		||||
  6 --- 38
 | 
			
		||||
  7 --- 19
 | 
			
		||||
  7 x--> 26
 | 
			
		||||
  7 --- 30
 | 
			
		||||
  7 --- 41
 | 
			
		||||
  8 --- 25
 | 
			
		||||
  8 x--> 27
 | 
			
		||||
  8 --- 34
 | 
			
		||||
  8 --- 44
 | 
			
		||||
  9 --- 18
 | 
			
		||||
  9 x--> 26
 | 
			
		||||
  9 --- 33
 | 
			
		||||
  9 --- 40
 | 
			
		||||
  10 --- 23
 | 
			
		||||
  10 x--> 27
 | 
			
		||||
  10 --- 37
 | 
			
		||||
  10 --- 43
 | 
			
		||||
  11 --- 22
 | 
			
		||||
  11 x--> 27
 | 
			
		||||
  11 --- 36
 | 
			
		||||
  11 --- 45
 | 
			
		||||
  12 --- 20
 | 
			
		||||
  12 x--> 26
 | 
			
		||||
  12 --- 32
 | 
			
		||||
  12 --- 39
 | 
			
		||||
  15 --- 18
 | 
			
		||||
  15 --- 19
 | 
			
		||||
  15 --- 20
 | 
			
		||||
  15 --- 21
 | 
			
		||||
  15 --- 26
 | 
			
		||||
  15 --- 28
 | 
			
		||||
  15 --- 30
 | 
			
		||||
  15 --- 31
 | 
			
		||||
  15 --- 32
 | 
			
		||||
  15 --- 33
 | 
			
		||||
  15 --- 38
 | 
			
		||||
  15 --- 39
 | 
			
		||||
  15 --- 40
 | 
			
		||||
  15 --- 41
 | 
			
		||||
  16 --- 22
 | 
			
		||||
  16 --- 23
 | 
			
		||||
  16 --- 24
 | 
			
		||||
  16 --- 25
 | 
			
		||||
  16 --- 27
 | 
			
		||||
  16 --- 29
 | 
			
		||||
  16 --- 34
 | 
			
		||||
  16 --- 35
 | 
			
		||||
  16 --- 36
 | 
			
		||||
  16 --- 37
 | 
			
		||||
  16 --- 42
 | 
			
		||||
  16 --- 43
 | 
			
		||||
  16 --- 44
 | 
			
		||||
  16 --- 45
 | 
			
		||||
  33 <--x 18
 | 
			
		||||
  40 <--x 18
 | 
			
		||||
  41 <--x 18
 | 
			
		||||
  30 <--x 19
 | 
			
		||||
  38 <--x 19
 | 
			
		||||
  41 <--x 19
 | 
			
		||||
  32 <--x 20
 | 
			
		||||
  39 <--x 20
 | 
			
		||||
  40 <--x 20
 | 
			
		||||
  31 <--x 21
 | 
			
		||||
  38 <--x 21
 | 
			
		||||
  39 <--x 21
 | 
			
		||||
  36 <--x 22
 | 
			
		||||
  43 <--x 22
 | 
			
		||||
  45 <--x 22
 | 
			
		||||
  37 <--x 23
 | 
			
		||||
  43 <--x 23
 | 
			
		||||
  44 <--x 23
 | 
			
		||||
  35 <--x 24
 | 
			
		||||
  42 <--x 24
 | 
			
		||||
  45 <--x 24
 | 
			
		||||
  34 <--x 25
 | 
			
		||||
  42 <--x 25
 | 
			
		||||
  44 <--x 25
 | 
			
		||||
  30 <--x 28
 | 
			
		||||
  31 <--x 28
 | 
			
		||||
  32 <--x 28
 | 
			
		||||
  33 <--x 28
 | 
			
		||||
  34 <--x 29
 | 
			
		||||
  35 <--x 29
 | 
			
		||||
  36 <--x 29
 | 
			
		||||
  37 <--x 29
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
@ -4,15 +4,19 @@ description: Operations executed subtract_doesnt_need_brackets.kcl
 | 
			
		||||
---
 | 
			
		||||
[
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupBegin",
 | 
			
		||||
    "group": {
 | 
			
		||||
      "type": "FunctionCall",
 | 
			
		||||
      "name": "cube",
 | 
			
		||||
      "functionSourceRange": [],
 | 
			
		||||
      "unlabeledArg": null,
 | 
			
		||||
      "labeledArgs": {}
 | 
			
		||||
    "labeledArgs": {
 | 
			
		||||
      "planeOrSolid": {
 | 
			
		||||
        "value": {
 | 
			
		||||
          "type": "Plane",
 | 
			
		||||
          "artifact_id": "[uuid]"
 | 
			
		||||
        },
 | 
			
		||||
        "sourceRange": []
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "sourceRange": []
 | 
			
		||||
    "name": "startSketchOn",
 | 
			
		||||
    "sourceRange": [],
 | 
			
		||||
    "type": "StdLibCall",
 | 
			
		||||
    "unlabeledArg": null
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "labeledArgs": {
 | 
			
		||||
@ -61,35 +65,6 @@ description: Operations executed subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      "sourceRange": []
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupEnd"
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupBegin",
 | 
			
		||||
    "group": {
 | 
			
		||||
      "type": "FunctionCall",
 | 
			
		||||
      "name": "cube",
 | 
			
		||||
      "functionSourceRange": [],
 | 
			
		||||
      "unlabeledArg": null,
 | 
			
		||||
      "labeledArgs": {}
 | 
			
		||||
    },
 | 
			
		||||
    "sourceRange": []
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "labeledArgs": {
 | 
			
		||||
      "planeOrSolid": {
 | 
			
		||||
        "value": {
 | 
			
		||||
          "type": "Plane",
 | 
			
		||||
          "artifact_id": "[uuid]"
 | 
			
		||||
        },
 | 
			
		||||
        "sourceRange": []
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "name": "startSketchOn",
 | 
			
		||||
    "sourceRange": [],
 | 
			
		||||
    "type": "StdLibCall",
 | 
			
		||||
    "unlabeledArg": null
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "labeledArgs": {
 | 
			
		||||
      "length": {
 | 
			
		||||
@ -123,7 +98,26 @@ description: Operations executed subtract_doesnt_need_brackets.kcl
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupEnd"
 | 
			
		||||
    "type": "GroupBegin",
 | 
			
		||||
    "group": {
 | 
			
		||||
      "type": "FunctionCall",
 | 
			
		||||
      "name": "cube",
 | 
			
		||||
      "functionSourceRange": [],
 | 
			
		||||
      "unlabeledArg": null,
 | 
			
		||||
      "labeledArgs": {}
 | 
			
		||||
    },
 | 
			
		||||
    "sourceRange": []
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupBegin",
 | 
			
		||||
    "group": {
 | 
			
		||||
      "type": "FunctionCall",
 | 
			
		||||
      "name": "cube",
 | 
			
		||||
      "functionSourceRange": [],
 | 
			
		||||
      "unlabeledArg": null,
 | 
			
		||||
      "labeledArgs": {}
 | 
			
		||||
    },
 | 
			
		||||
    "sourceRange": []
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "labeledArgs": {
 | 
			
		||||
@ -149,5 +143,11 @@ description: Operations executed subtract_doesnt_need_brackets.kcl
 | 
			
		||||
      },
 | 
			
		||||
      "sourceRange": []
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupEnd"
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "type": "GroupEnd"
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user