chore: update CeTZ from 0.3.2 to 0.5.2 and fix coordinate handling for 3D vector requirements

This commit is contained in:
David Stadelmann
2026-07-01 09:54:18 +02:00
parent 2bb7e3b5a9
commit 4045158033
23 changed files with 35 additions and 33 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "../src/circuit.typ": circuit #import "../src/circuit.typ": circuit
#import "../src/util.typ" #import "../src/util.typ"
+3 -3
View File
@@ -117,7 +117,7 @@
wire.wire( wire.wire(
"wExtender-ImmSrc", ( "wExtender-ImmSrc", (
"Extender.north", "Extender.north",
(18, -2) (18, -2, 0)
), ),
style: "zigzag", style: "zigzag",
zigzag-ratio: 0%, zigzag-ratio: 0%,
@@ -138,8 +138,8 @@
) )
wire.wire( wire.wire(
"wBus", ( "wBus", (
(v => (v.at(0), -3.5), mid), (v => (v.at(0), -3.5, 0), mid),
(horizontal: (), vertical: (0, 3.5)), (horizontal: (), vertical: (0, 3.5, 0)),
), ),
bus: true bus: true
) )
+3 -3
View File
@@ -124,7 +124,7 @@
wire.wire( wire.wire(
"wExtender-ImmSrc", ( "wExtender-ImmSrc", (
"Extender.north", "Extender.north",
(18, -2) (18, -2, 0)
), ),
style: "zigzag", style: "zigzag",
zigzag-ratio: 0%, zigzag-ratio: 0%,
@@ -145,8 +145,8 @@
) )
wire.wire( wire.wire(
"wBus", ( "wBus", (
(v => (v.at(0), -3.5), mid), (v => (v.at(0), -3.5, 0), mid),
(horizontal: (), vertical: (0, 3.5)), (horizontal: (), vertical: (0, 3.5, 0)),
), ),
bus: true bus: true
) )
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "../src/lib.typ": circuit, element, util, wire #import "../src/lib.typ": circuit, element, util, wire
#set page(width: auto, height: auto, margin: .5cm) #set page(width: auto, height: auto, margin: .5cm)
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "../src/lib.typ": * #import "../src/lib.typ": *
#set page(width: auto, height: auto, margin: .5cm) #set page(width: auto, height: auto, margin: .5cm)
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "../src/lib.typ": * #import "../src/lib.typ": *
#set page(width: auto, height: auto, margin: .5cm) #set page(width: auto, height: auto, margin: .5cm)
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw, vector #import "@preview/cetz:0.5.2": draw, vector
#import "../src/lib.typ": * #import "../src/lib.typ": *
#set page(width: auto, height: auto, margin: .5cm) #set page(width: auto, height: auto, margin: .5cm)
+1 -1
View File
@@ -1,5 +1,5 @@
#import "@preview/tidy:0.4.1" #import "@preview/tidy:0.4.1"
#import "@preview/cetz:0.3.2": draw, canvas #import "@preview/cetz:0.5.2": draw, canvas
#import "src/lib.typ" #import "src/lib.typ"
#import "doc/examples.typ" #import "doc/examples.typ"
#import "src/circuit.typ": circuit #import "src/circuit.typ": circuit
+2
View File
@@ -0,0 +1,2 @@
[tools]
typst = "0.15.0"
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": canvas #import "@preview/cetz:0.5.2": canvas
#import "@preview/tidy:0.3.0" #import "@preview/tidy:0.3.0"
/// Draws a block circuit diagram /// Draws a block circuit diagram
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "element.typ" #import "element.typ"
#import "ports.typ": add-port #import "ports.typ": add-port
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "element.typ" #import "element.typ"
#let draw-shape(id, tl, tr, br, bl, fill, stroke) = { #let draw-shape(id, tl, tr, br, bl, fill, stroke) = {
+2 -2
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw, coordinate #import "@preview/cetz:0.5.2": draw, coordinate
#import "ports.typ": add-ports, add-port #import "ports.typ": add-ports, add-port
#import "../util.typ" #import "../util.typ"
@@ -76,7 +76,7 @@
if (type(x) == dictionary) { if (type(x) == dictionary) {
let offset = x.rel let offset = x.rel
let to = x.to 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) x = to-pos.at(0)
} }
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "element.typ" #import "element.typ"
#import "ports.typ": add-port #import "ports.typ": add-port
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw, coordinate #import "@preview/cetz:0.5.2": draw, coordinate
#import "../util.typ" #import "../util.typ"
/// Draws a group of elements /// Draws a group of elements
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "gate.typ" #import "gate.typ"
#let draw-shape(id, tl, tr, br, bl, fill, stroke) = { #let draw-shape(id, tl, tr, br, bl, fill, stroke) = {
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "gate.typ" #import "gate.typ"
#let draw-shape(id, tl, tr, br, bl, fill, stroke) = { #let draw-shape(id, tl, tr, br, bl, fill, stroke) = {
+2 -2
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw, coordinate #import "@preview/cetz:0.5.2": draw, coordinate
#import "../ports.typ": add-ports, add-port #import "../ports.typ": add-ports, add-port
#import "../element.typ" #import "../element.typ"
@@ -51,7 +51,7 @@
if (type(x) == dictionary) { if (type(x) == dictionary) {
let offset = x.rel let offset = x.rel
let to = x.to 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) x = to-pos.at(0)
} }
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "gate.typ" #import "gate.typ"
#let draw-shape(id, tl, tr, br, bl, fill, stroke) = { #let draw-shape(id, tl, tr, br, bl, fill, stroke) = {
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "gate.typ" #import "gate.typ"
#let space = 10% #let space = 10%
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "../util.typ" #import "../util.typ"
#import "element.typ" #import "element.typ"
#import "ports.typ": add-port #import "ports.typ": add-port
+1 -1
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw #import "@preview/cetz:0.5.2": draw
#import "../util.typ": rotate-anchor #import "../util.typ": rotate-anchor
#let add-port( #let add-port(
+6 -6
View File
@@ -1,4 +1,4 @@
#import "@preview/cetz:0.3.2": draw, coordinate #import "@preview/cetz:0.5.2": draw, coordinate
#import "util.typ": opposite-anchor #import "util.typ": opposite-anchor
/// List of valid wire styles /// List of valid wire styles
@@ -68,8 +68,8 @@
let (ctx, p0) = coordinate.resolve(ctx, start) let (ctx, p0) = coordinate.resolve(ctx, start)
let (ctx, p3) = coordinate.resolve(ctx, end) let (ctx, p3) = coordinate.resolve(ctx, end)
p0 = (x: p0.first(), y: p0.last()) p0 = (x: p0.at(0), y: p0.at(1))
p3 = (x: p3.first(), y: p3.last()) p3 = (x: p3.at(0), y: p3.at(1))
let dx1 = margin-start let dx1 = margin-start
let dx2 = margin-end let dx2 = margin-end
@@ -86,13 +86,13 @@
if side-end == "east" { if side-end == "east" {
dx2 *= -1 dx2 *= -1
} }
p1 = (p0.x + dx1, p0.y) p1 = (p0.x + dx1, p0.y, 0)
p2 = (p3.x - dx2, p0.y) p2 = (p3.x - dx2, p0.y, 0)
let points = ( let points = (
start, start,
(horizontal: p1, vertical: ()), (horizontal: p1, vertical: ()),
(horizontal: (), vertical: (0, dodge-y)), (horizontal: (), vertical: (0, dodge-y, 0)),
(horizontal: p2, vertical: ()), (horizontal: p2, vertical: ()),
(horizontal: (), vertical: end), (horizontal: (), vertical: end),
end end