Tools
Tools in CAD Sketcher are either exposed as a workspacetool or as an operator. Note however that either of those use the same interaction system.
Generic Tools
Bases: Operator
, Operator3d
Add a sketch
Source code in operators/add_sketch.py
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
|
Bases: Operator
, HighlightElement
Delete Entity by index or based on the selection if index isn't provided
Source code in operators/delete_entity.py
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
|
Bases: Operator
, HighlightElement
Delete constraint by type and index
Source code in operators/delete_constraint.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
|
Workspacetools
Workspacetools are used to interactively create entities. You can access them from the viewport's "T"-panel. Check the tools section to get familiar with the behavior of CAD Sketcher tools.
INFO: Interaction with extension geometry is only possible when one of the extension tools is active.
Workspacetool Access Keymap
Whenever one of the extension's tools is active the tool access keymap allows to quickly switch between the different tools.
Key | Modifier | Action |
---|---|---|
ESC | - | Activate Tool: Select |
P | - | Invoke Tool: Add Point 2D |
L | - | Invoke Tool: Add Line 2D |
C | - | Invoke Tool: Add Circle |
A | - | Invoke Tool: Add Arc |
R | - | Invoke Tool: Add Rectangle |
S | - | Invoke Tool: Add Sketch |
Y | - | Invoke Tool: Trim |
Dimensional Constraints:
Key | Modifier | Action |
---|---|---|
D | Alt | Distance |
V | Alt | Vertical Distance |
H | Alt | Horizontal Distance |
A | Alt | Angle |
O | Alt | Diameter |
R | Alt | Radius |
Geometric Constraints:
Key | Modifier | Action |
---|---|---|
C | Shift | Coincident |
V | Shift | Vertical |
H | Shift | Horizontal |
E | Shift | Equal |
P | Shift | Parallel |
N | Shift | Perpendicular |
T | Shift | Tangent |
M | Shift | Midpoint |
R | Shift | Ratio |
Basic Tool Keymap
The basic tool interaction is consistent between tools.
Key | Modifier | Action |
---|---|---|
Tab | - | Jump to next tool state or property substate when in numerical edit |
0-9 / (-) | - | Activate numeric edit |
Enter / Lmb | - | Verify the operation |
Esc / Rmb | - | Cancel the operation |
While numeric edit is active
Key | Modifier | Action |
---|---|---|
Tab | - | Jump to next tool property substate |
0-9 | - | Activate numeric edit |
Minus(-) | - | Toggle between positive and negative values |
Selection tools
Bases: Operator
, HighlightElement
Select an entity
Either the entity specified by the index property or the hovered index if the index property is not set
Source code in operators/select.py
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
|
Bases: Operator
Select / Deselect all entities
Source code in operators/select.py
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
|
Bases: Operator
Invert entities selection
Source code in operators/select.py
72 73 74 75 76 77 78 79 80 81 |
|
Bases: Operator
Select neighbour entities
Source code in operators/select.py
84 85 86 87 88 89 90 91 92 93 |
|
Bases: Operator
Select neighbour entities
Source code in operators/select.py
96 97 98 99 100 101 102 103 104 105 106 |
|
Keymap:
Key | Modifier | Action |
---|---|---|
LMB | - | Toggle Select |
ESC | - | Deselect All |
I | Ctrl | Inverse selection |
E | Ctrl | Extend selection in chain |
E | Ctrl+Shift | Select full chain |
INFO: LMB in empty space will also deselect all.
INFO: Chain selection works with coincident constraints too
Bases: Operator
, Operator3d
Add a point in 3d space
Source code in operators/add_point_3d.py
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
|
Bases: Operator
, Operator3d
Add a line in 3d space
Source code in operators/add_line_3d.py
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
|
Bases: Operator
, Operator2d
Add a point to the active sketch
Source code in operators/add_point_2d.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
|
Bases: Operator
, Operator2d
Add a line to the active sketch
Source code in operators/add_line_2d.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
|
Bases: Operator
, Operator2d
Add a circle to the active sketch
Source code in operators/add_circle.py
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
|
Bases: Operator
, Operator2d
Add an arc to the active sketch
Source code in operators/add_arc.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
|
Bases: Operator
, Operator2d
Add a rectangle to the active sketch
Source code in operators/add_rectangle.py
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
|
Bases: Operator
, Operator3d
Add a workplane
Source code in operators/add_workplane.py
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
|
Bases: Operator
, Operator3d
Add a statically placed workplane, orientation and location is copied from selected mesh face
Source code in operators/add_workplane.py
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |
|
Bases: Operator
, Operator2d
Trim segment to its closest intersections
Source code in operators/trim.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
|