forked from HEL/circuiteria
deps: update CeTZ 0.3.4 to 0.5.2 with coordinate fixes
CeTZ 0.5.2 requires 3D coordinate vectors (x, y, z) for coordinate.resolve() and rel-coordinate specs. Update all 2-element tuples to 3-element tuples and fix .last() to .at(1) for y-component access on resolved 3D coordinates.
This commit is contained in:
+3
-3
@@ -117,7 +117,7 @@
|
||||
wire.wire(
|
||||
"wExtender-ImmSrc", (
|
||||
"Extender.north",
|
||||
(18, -2)
|
||||
(18, -2, 0)
|
||||
),
|
||||
style: "zigzag",
|
||||
zigzag-ratio: 0%,
|
||||
@@ -138,8 +138,8 @@
|
||||
)
|
||||
wire.wire(
|
||||
"wBus", (
|
||||
(v => (v.at(0), -3.5), mid),
|
||||
(horizontal: (), vertical: (0, 3.5)),
|
||||
(v => (v.at(0), -3.5, 0), mid),
|
||||
(horizontal: (), vertical: (0, 3.5, 0)),
|
||||
),
|
||||
bus: true
|
||||
)
|
||||
|
||||
+3
-3
@@ -124,7 +124,7 @@
|
||||
wire.wire(
|
||||
"wExtender-ImmSrc", (
|
||||
"Extender.north",
|
||||
(18, -2)
|
||||
(18, -2, 0)
|
||||
),
|
||||
style: "zigzag",
|
||||
zigzag-ratio: 0%,
|
||||
@@ -145,8 +145,8 @@
|
||||
)
|
||||
wire.wire(
|
||||
"wBus", (
|
||||
(v => (v.at(0), -3.5), mid),
|
||||
(horizontal: (), vertical: (0, 3.5)),
|
||||
(v => (v.at(0), -3.5, 0), mid),
|
||||
(horizontal: (), vertical: (0, 3.5, 0)),
|
||||
),
|
||||
bus: true
|
||||
)
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
#import "@preview/cetz:0.3.4": *
|
||||
#import "@preview/cetz:0.5.2": *
|
||||
@@ -76,7 +76,7 @@
|
||||
if (type(x) == dictionary) {
|
||||
let offset = x.rel
|
||||
let to = x.to
|
||||
let (ctx, to-pos) = coordinate.resolve(ctx, (rel: (offset, 0), to: to))
|
||||
let (ctx, to-pos) = coordinate.resolve(ctx, (rel: (offset, 0, 0), to: to))
|
||||
x = to-pos.at(0)
|
||||
}
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
debug: debug
|
||||
)
|
||||
|
||||
let in-pos = (rel: (0, h * (h-ratio / 200%)), to: id+".south-west")
|
||||
let in-pos = (rel: (0, h * (h-ratio / 200%), 0), to: id+".south-west")
|
||||
let out-pos = (id+".south-east", out-pct, id+".north-east")
|
||||
add-port(id, "west", ports.west.first(), in-pos)
|
||||
add-port(id, "east", ports.east.first(), out-pos)
|
||||
|
||||
@@ -61,8 +61,8 @@
|
||||
|
||||
draw.hide(draw.group(name: id+"-inner", body))
|
||||
draw.rect(
|
||||
(rel: (-pad-left, -pad-bottom), to: id+"-inner.south-west"),
|
||||
(rel: (pad-right, pad-top), to: id+"-inner.north-east"),
|
||||
(rel: (-pad-left, -pad-bottom, 0), to: id+"-inner.south-west"),
|
||||
(rel: (pad-right, pad-top, 0), to: id+"-inner.north-east"),
|
||||
name: id,
|
||||
radius: radius,
|
||||
stroke: stroke,
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
if (type(x) == dictionary) {
|
||||
let offset = x.rel
|
||||
let to = x.to
|
||||
let (ctx, to-pos) = coordinate.resolve(ctx, (rel: (offset, 0), to: to))
|
||||
let (ctx, to-pos) = coordinate.resolve(ctx, (rel: (offset, 0, 0), to: to))
|
||||
x = to-pos.at(0)
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
let port-pos = int-name + ".0"
|
||||
if inverted == "all" or port-name in inverted {
|
||||
draw.circle(port-pos, radius: inverted-radius, anchor: "east", stroke: stroke)
|
||||
port-pos = (rel: (-2 * inverted-radius, 0), to: port-pos)
|
||||
port-pos = (rel: (-2 * inverted-radius, 0, 0), to: port-pos)
|
||||
}
|
||||
add-port(
|
||||
id, "west",
|
||||
@@ -113,7 +113,7 @@
|
||||
let out-pos = id + ".east"
|
||||
if inverted == "all" or "out" in inverted {
|
||||
draw.circle(out-pos, radius: inverted-radius, anchor: "west", stroke: stroke)
|
||||
out-pos = (rel: (2 * inverted-radius, 0), to: out-pos)
|
||||
out-pos = (rel: (2 * inverted-radius, 0, 0), to: out-pos)
|
||||
}
|
||||
add-port(
|
||||
id, "east",
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
if (type(x) == dictionary) {
|
||||
let offset = x.rel
|
||||
let to = x.to
|
||||
let (ctx, to-pos) = coordinate.resolve(ctx, (rel: (offset, 0), to: to))
|
||||
let (ctx, to-pos) = coordinate.resolve(ctx, (rel: (offset, 0, 0), to: to))
|
||||
x = to-pos.at(0)
|
||||
}
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
anchor: "east",
|
||||
stroke: stroke
|
||||
)
|
||||
port-pos = (rel: (-2 * inverted-radius, 0), to: port-pos)
|
||||
port-pos = (rel: (-2 * inverted-radius, 0, 0), to: port-pos)
|
||||
}
|
||||
add-port(
|
||||
id, "west",
|
||||
@@ -115,7 +115,7 @@
|
||||
let out-pos = id + ".east"
|
||||
if inverted == "all" or "out" in inverted {
|
||||
draw.circle(out-pos, radius: inverted-radius, anchor: "west", stroke: stroke)
|
||||
out-pos = (rel: (2 * inverted-radius, 0), to: out-pos)
|
||||
out-pos = (rel: (2 * inverted-radius, 0, 0), to: out-pos)
|
||||
}
|
||||
add-port(
|
||||
id, "east",
|
||||
|
||||
@@ -17,10 +17,10 @@
|
||||
|
||||
let size = if port.at("small", default: false) {8pt} else {1em}
|
||||
let offset
|
||||
if (side == "north") { offset = ( 0, -size) }
|
||||
else if (side == "east") { offset = (-size, 0) }
|
||||
else if (side == "south") { offset = ( 0, size) }
|
||||
else if (side == "west") { offset = ( size, 0) }
|
||||
if (side == "north") { offset = ( 0, -size, 0) }
|
||||
else if (side == "east") { offset = (-size, 0, 0) }
|
||||
else if (side == "south") { offset = ( 0, size, 0) }
|
||||
else if (side == "west") { offset = ( size, 0, 0) }
|
||||
|
||||
let pos1 = (rel: offset, to: pos)
|
||||
|
||||
|
||||
+18
-18
@@ -68,8 +68,8 @@
|
||||
|
||||
let (ctx, p0) = coordinate.resolve(ctx, start)
|
||||
let (ctx, p3) = coordinate.resolve(ctx, end)
|
||||
p0 = (x: p0.first(), y: p0.last())
|
||||
p3 = (x: p3.first(), y: p3.last())
|
||||
p0 = (x: p0.first(), y: p0.at(1))
|
||||
p3 = (x: p3.first(), y: p3.at(1))
|
||||
|
||||
let dx1 = margin-start
|
||||
let dx2 = margin-end
|
||||
@@ -86,13 +86,13 @@
|
||||
if side-end == "east" {
|
||||
dx2 *= -1
|
||||
}
|
||||
p1 = (p0.x + dx1, p0.y)
|
||||
p2 = (p3.x - dx2, p0.y)
|
||||
p1 = (p0.x + dx1, p0.y, 0)
|
||||
p2 = (p3.x - dx2, p0.y, 0)
|
||||
|
||||
let points = (
|
||||
start,
|
||||
(horizontal: p1, vertical: ()),
|
||||
(horizontal: (), vertical: (0, dodge-y)),
|
||||
(horizontal: (), vertical: (0, dodge-y, 0)),
|
||||
(horizontal: p2, vertical: ()),
|
||||
(horizontal: (), vertical: end),
|
||||
end
|
||||
@@ -147,18 +147,18 @@
|
||||
|
||||
|
||||
// points that are closest to the edge points
|
||||
let p1 = (p0.x + dx1, p0.y + dy1)
|
||||
let p5 = (p6.x + dx2, p6.y + dy2)
|
||||
let p1 = (p0.x + dx1, p0.y + dy1, 0)
|
||||
let p5 = (p6.x + dx2, p6.y + dy2, 0)
|
||||
|
||||
|
||||
// middle point
|
||||
let center_x = p0.x + box_width * center_horizontal / 100%
|
||||
let center_y = p0.y + box_height * center_vertical / 100%
|
||||
let p3 = (center_x, center_y)
|
||||
let p3 = (center_x, center_y, 0)
|
||||
|
||||
// setting up the points for that touch the guides
|
||||
let p2 = (0,0)
|
||||
let p4 = (0,0)
|
||||
let p2 = (0,0,0)
|
||||
let p4 = (0,0,0)
|
||||
if side-start in ("north", "south") {
|
||||
p2 = (horizontal: p3, vertical: p1)
|
||||
} else {
|
||||
@@ -365,17 +365,17 @@
|
||||
/// - name-offset (number): The name offset, perpendicular to the stub
|
||||
#let stub(port-id, side, name: none, vertical: false, length: 1em, name-offset: 0) = {
|
||||
let end-offset = (
|
||||
north: (0, length),
|
||||
east: (length, 0),
|
||||
south: (0, -length),
|
||||
west: (-length, 0)
|
||||
north: (0, length, 0),
|
||||
east: (length, 0, 0),
|
||||
south: (0, -length, 0),
|
||||
west: (-length, 0, 0)
|
||||
).at(side)
|
||||
|
||||
let name-offset = (
|
||||
north: (name-offset, length),
|
||||
east: (length, name-offset),
|
||||
south: (name-offset, -length),
|
||||
west: (-length, name-offset)
|
||||
north: (name-offset, length, 0),
|
||||
east: (length, name-offset, 0),
|
||||
south: (name-offset, -length, 0),
|
||||
west: (-length, name-offset, 0)
|
||||
).at(side)
|
||||
|
||||
draw.line(
|
||||
|
||||
Reference in New Issue
Block a user