1 Commits

Author SHA1 Message Date
7f33e4ad92 feat: allow 3D Cursor as align source in legacy align operator.
- allow 3D Cursor as align source in legacy align operator.
- add icon for legacy align.
2025-08-01 14:02:26 +08:00
6 changed files with 22 additions and 56 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -1,12 +1,4 @@
[ [
// One of Chris suggested more vanilla prototypes.
// This prototype represent a half of a normal, sink or double ribbon border,
// which looks like trapezoid from top to bottom.
//
// The bottom edge of trapezoid is from origin to +X with `long_edge_length` length.
// The length of top edge is `short_edge_length` and it just like moving bottom edge to +Y direction.
// The offset between top edge and bottom edge is always 2.5.
// The distance from the closest point of top edge, to Y axis is `short_edge_offset`.
{ {
"identifier": "cv_trapezoid_side", "identifier": "cv_trapezoid_side",
"showcase": null, "showcase": null,
@@ -161,11 +153,6 @@
} }
] ]
}, },
// Same as previous one, but looks like triangle from top to bottom.
//
// The bottom edge is from origin to +X with `edge_length` length.
// The tip is going to +Y.
// The height of this triangle is always 2.5 and the offset between tip and Y axis is `tip_offset`.
{ {
"identifier": "cv_triangle_side", "identifier": "cv_triangle_side",
"showcase": null, "showcase": null,

View File

@@ -1,5 +1,4 @@
[ [
// The shared template prototype used by all floor terminals.
{ {
"identifier": "raw_floor_terminal", "identifier": "raw_floor_terminal",
"showcase": null, "showcase": null,
@@ -23,30 +22,26 @@
"faces": [], "faces": [],
"instances": [ "instances": [
{ {
"identifier": "cv_trapezoid_side", "identifier": "cv_triangle_side",
"skip": "False", "skip": "False",
"params": { "params": {
"long_edge_length": "5.0", "edge_length": "2.5",
"short_edge_offset": "2.5", "tip_offset": "2.5",
"short_edge_length": "2.5",
"height": "height", "height": "height",
"face": "(face[0], False, False, face[3], face[4], False)", "face": "(face[0], False, False, face[3], face[4], None)",
"is_sink": "is_sink", "is_sink": "is_sink"
"is_ribbon": "False"
}, },
"transform": "ident()" "transform": "ident()"
}, },
{ {
"identifier": "cv_trapezoid_side", "identifier": "cv_triangle_side",
"skip": "False", "skip": "False",
"params": { "params": {
"long_edge_length": "5.0", "edge_length": "2.5",
"short_edge_offset": "2.5", "tip_offset": "2.5",
"short_edge_length": "2.5",
"height": "height", "height": "height",
"face": "(face[0], False, False, face[3], face[5], False)", "face": "(face[0], False, False, face[3], face[5], None)",
"is_sink": "is_sink", "is_sink": "is_sink"
"is_ribbon": "False"
}, },
"transform": "move(0, 5, 0) @ scale(1, -1, 1)" "transform": "move(0, 5, 0) @ scale(1, -1, 1)"
}, },
@@ -66,7 +61,7 @@
"identifier": "floor_rectangle_bottom", "identifier": "floor_rectangle_bottom",
"skip": "not face[1]", "skip": "not face[1]",
"params": { "params": {
"length": "5", "length": "2.5",
"width": "5" "width": "5"
}, },
"transform": "move(0, 0, -height)" "transform": "move(0, 0, -height)"

View File

@@ -166,50 +166,34 @@
"transform": "rot(0, 0, 90) @ scale(1, -1, 1)" "transform": "rot(0, 0, 90) @ scale(1, -1, 1)"
}, },
{ {
"identifier": "cv_trapezoid_side", "identifier": "cv_triangle_side",
"skip": "False", "skip": "False",
"params": { "params": {
"long_edge_length": "5.0", "edge_length": "2.5",
"short_edge_offset": "2.5", "tip_offset": "2.5",
"short_edge_length": "2.5",
"height": "height", "height": "height",
"face": "(face[0], False, False, face[3], face[4], False)", "face": "(face[0], False, False, face[3], face[4], None)",
"is_sink": "True", "is_sink": "True"
"is_ribbon": "False"
}, },
"transform": "ident()" "transform": "ident()"
}, },
{ {
"identifier": "cv_trapezoid_side", "identifier": "cv_triangle_side",
"skip": "False", "skip": "False",
"params": { "params": {
"long_edge_length": "5.0", "edge_length": "2.5",
"short_edge_offset": "2.5", "tip_offset": "2.5",
"short_edge_length": "2.5",
"height": "height", "height": "height",
"face": "(face[0], False, False, face[3], face[5], False)", "face": "(face[0], False, False, face[3], face[5], None)",
"is_sink": "True",
"is_ribbon": "False"
},
"transform": "move(0, width + 5, 0) @ scale(1, -1, 1)"
},
{
"identifier": "floor_flat",
"skip": "False",
"params": {
"height": "height",
"length": "2.5",
"width": "width",
"face": "(face[0], False, False, face[3], False, False)",
"is_sink": "True" "is_sink": "True"
}, },
"transform": "move(2.5, 2.5, 0)" "transform": "move(0, width + 5, 0) @ scale(1, -1, 1)"
}, },
{ {
"identifier": "floor_rectangle_bottom", "identifier": "floor_rectangle_bottom",
"skip": "not face[1]", "skip": "not face[1]",
"params": { "params": {
"length": "5", "length": "2.5",
"width": "5 + width" "width": "5 + width"
}, },
"transform": "move(0, 0, -height)" "transform": "move(0, 0, -height)"