Add the actual loft command
This commit is contained in:
		@ -625,6 +625,134 @@ description: Artifact commands loft_graph.kcl
 | 
			
		||||
      "type": "sketch_mode_disable"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "loft",
 | 
			
		||||
      "section_ids": [
 | 
			
		||||
        "[uuid]",
 | 
			
		||||
        "[uuid]"
 | 
			
		||||
      ],
 | 
			
		||||
      "v_degree": 2,
 | 
			
		||||
      "bez_approximate_rational": false,
 | 
			
		||||
      "base_curve_index": null,
 | 
			
		||||
      "tolerance": 0.0000001
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "object_bring_to_front",
 | 
			
		||||
      "object_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_extrusion_face_info",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_opposite_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "command": {
 | 
			
		||||
      "type": "solid3d_get_next_adjacent_edge",
 | 
			
		||||
      "object_id": "[uuid]",
 | 
			
		||||
      "edge_id": "[uuid]",
 | 
			
		||||
      "face_id": "[uuid]"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "cmdId": "[uuid]",
 | 
			
		||||
    "range": [
 | 
			
		||||
 | 
			
		||||
@ -10,24 +10,55 @@ flowchart LR
 | 
			
		||||
  end
 | 
			
		||||
  subgraph path9 [Path]
 | 
			
		||||
    9["Path<br>[294, 330, 0]"]
 | 
			
		||||
    10["Segment<br>[336, 349, 0]"]
 | 
			
		||||
    11["Segment<br>[355, 378, 0]"]
 | 
			
		||||
    12["Segment<br>[384, 440, 0]"]
 | 
			
		||||
    13["Segment<br>[446, 453, 0]"]
 | 
			
		||||
    14[Solid2d]
 | 
			
		||||
  end
 | 
			
		||||
  1["Plane<br>[12, 31, 0]"]
 | 
			
		||||
  8["Plane<br>[223, 244, 0]"]
 | 
			
		||||
  10["SweepEdge Opposite"]
 | 
			
		||||
  11["SweepEdge Opposite"]
 | 
			
		||||
  12["SweepEdge Opposite"]
 | 
			
		||||
  15["Sweep Loft<br>[455, 485, 0]"]
 | 
			
		||||
  16[Wall]
 | 
			
		||||
  17[Wall]
 | 
			
		||||
  18[Wall]
 | 
			
		||||
  19["Cap Start"]
 | 
			
		||||
  20["Cap End"]
 | 
			
		||||
  21["SweepEdge Adjacent"]
 | 
			
		||||
  22["SweepEdge Adjacent"]
 | 
			
		||||
  23["SweepEdge Adjacent"]
 | 
			
		||||
  1 --- 2
 | 
			
		||||
  2 --- 3
 | 
			
		||||
  2 --- 4
 | 
			
		||||
  2 --- 5
 | 
			
		||||
  2 --- 6
 | 
			
		||||
  2 ---- 15
 | 
			
		||||
  2 --- 7
 | 
			
		||||
  3 --- 16
 | 
			
		||||
  3 --- 10
 | 
			
		||||
  3 --- 21
 | 
			
		||||
  4 --- 17
 | 
			
		||||
  4 --- 11
 | 
			
		||||
  4 --- 22
 | 
			
		||||
  5 --- 18
 | 
			
		||||
  5 --- 12
 | 
			
		||||
  5 --- 23
 | 
			
		||||
  8 --- 9
 | 
			
		||||
  9 --- 10
 | 
			
		||||
  9 --- 11
 | 
			
		||||
  9 --- 12
 | 
			
		||||
  9 x--> 10
 | 
			
		||||
  9 x--> 11
 | 
			
		||||
  9 x--> 12
 | 
			
		||||
  9 --- 13
 | 
			
		||||
  9 x---> 15
 | 
			
		||||
  9 --- 14
 | 
			
		||||
  15 --- 10
 | 
			
		||||
  15 --- 11
 | 
			
		||||
  15 --- 12
 | 
			
		||||
  15 --- 16
 | 
			
		||||
  15 --- 17
 | 
			
		||||
  15 --- 18
 | 
			
		||||
  15 --- 19
 | 
			
		||||
  15 --- 20
 | 
			
		||||
  15 --- 21
 | 
			
		||||
  15 --- 22
 | 
			
		||||
  15 --- 23
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
@ -4,15 +4,48 @@ mindmap
 | 
			
		||||
    Plane
 | 
			
		||||
      Path
 | 
			
		||||
        Segment
 | 
			
		||||
          Wall
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
        Segment
 | 
			
		||||
          Wall
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
        Segment
 | 
			
		||||
          Wall
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
        Segment
 | 
			
		||||
        Sweep Loft
 | 
			
		||||
          Wall
 | 
			
		||||
          Wall
 | 
			
		||||
          Wall
 | 
			
		||||
          Cap Start
 | 
			
		||||
          Cap End
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
        Solid2d
 | 
			
		||||
    Plane
 | 
			
		||||
      Path
 | 
			
		||||
        SweepEdge Opposite
 | 
			
		||||
        SweepEdge Opposite
 | 
			
		||||
        SweepEdge Opposite
 | 
			
		||||
        Segment
 | 
			
		||||
        Segment
 | 
			
		||||
        Segment
 | 
			
		||||
        Segment
 | 
			
		||||
        Sweep Loft
 | 
			
		||||
          Wall
 | 
			
		||||
          Wall
 | 
			
		||||
          Wall
 | 
			
		||||
          Cap Start
 | 
			
		||||
          Cap End
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
          SweepEdge Opposite
 | 
			
		||||
          SweepEdge Adjacent
 | 
			
		||||
        Solid2d
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
@ -662,9 +662,66 @@ description: Result of parsing loft_graph.kcl
 | 
			
		||||
        "start": 281,
 | 
			
		||||
        "type": "VariableDeclaration",
 | 
			
		||||
        "type": "VariableDeclaration"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "end": 485,
 | 
			
		||||
        "expression": {
 | 
			
		||||
          "arguments": [
 | 
			
		||||
            {
 | 
			
		||||
              "elements": [
 | 
			
		||||
                {
 | 
			
		||||
                  "end": 471,
 | 
			
		||||
                  "name": "profile001",
 | 
			
		||||
                  "start": 461,
 | 
			
		||||
                  "type": "Identifier",
 | 
			
		||||
                  "type": "Identifier"
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                  "end": 483,
 | 
			
		||||
                  "name": "profile002",
 | 
			
		||||
                  "start": 473,
 | 
			
		||||
                  "type": "Identifier",
 | 
			
		||||
                  "type": "Identifier"
 | 
			
		||||
                }
 | 
			
		||||
              ],
 | 
			
		||||
              "end": 484,
 | 
			
		||||
              "start": 460,
 | 
			
		||||
              "type": "ArrayExpression",
 | 
			
		||||
              "type": "ArrayExpression"
 | 
			
		||||
            }
 | 
			
		||||
          ],
 | 
			
		||||
          "callee": {
 | 
			
		||||
            "end": 459,
 | 
			
		||||
            "name": "loft",
 | 
			
		||||
            "start": 455,
 | 
			
		||||
            "type": "Identifier"
 | 
			
		||||
          },
 | 
			
		||||
          "end": 485,
 | 
			
		||||
          "start": 455,
 | 
			
		||||
          "type": "CallExpression",
 | 
			
		||||
          "type": "CallExpression"
 | 
			
		||||
        },
 | 
			
		||||
        "start": 455,
 | 
			
		||||
        "type": "ExpressionStatement",
 | 
			
		||||
        "type": "ExpressionStatement"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "end": 454,
 | 
			
		||||
    "end": 486,
 | 
			
		||||
    "nonCodeMeta": {
 | 
			
		||||
      "nonCodeNodes": {
 | 
			
		||||
        "4": [
 | 
			
		||||
          {
 | 
			
		||||
            "end": 455,
 | 
			
		||||
            "start": 453,
 | 
			
		||||
            "type": "NonCodeNode",
 | 
			
		||||
            "value": {
 | 
			
		||||
              "type": "newLine"
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "startNodes": []
 | 
			
		||||
    },
 | 
			
		||||
    "start": 0
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -11,3 +11,5 @@ profile002 = startProfileAt([39, 172], sketch002)
 | 
			
		||||
  |> line(end = [-78, -145])
 | 
			
		||||
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
 | 
			
		||||
  |> close()
 | 
			
		||||
 | 
			
		||||
loft([profile001, profile002])
 | 
			
		||||
 | 
			
		||||
@ -66,5 +66,24 @@ description: Operations executed loft_graph.kcl
 | 
			
		||||
    ],
 | 
			
		||||
    "type": "StdLibCall",
 | 
			
		||||
    "unlabeledArg": null
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    "labeledArgs": {
 | 
			
		||||
      "sketches": {
 | 
			
		||||
        "sourceRange": [
 | 
			
		||||
          460,
 | 
			
		||||
          484,
 | 
			
		||||
          0
 | 
			
		||||
        ]
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "name": "loft",
 | 
			
		||||
    "sourceRange": [
 | 
			
		||||
      455,
 | 
			
		||||
      485,
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "type": "StdLibCall",
 | 
			
		||||
    "unlabeledArg": null
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 92 KiB  | 
		Reference in New Issue
	
	Block a user