Add the actual loft command

This commit is contained in:
Jonathan Tran
2025-02-07 12:40:51 -05:00
parent 794722739d
commit e4c94dbc3d
7 changed files with 280 additions and 10 deletions

View File

@ -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": [

View File

@ -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
```

View File

@ -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
```

View File

@ -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
}
}

View File

@ -11,3 +11,5 @@ profile002 = startProfileAt([39, 172], sketch002)
|> line(end = [-78, -145])
|> line(endAbsolute = [profileStartX(%), profileStartY(%)])
|> close()
loft([profile001, profile002])

View File

@ -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