[WIP] Scaling
Test / Run tests (push) Successful in 14s

This commit is contained in:
2026-08-12 16:39:02 +02:00
parent 2dee3a9ae9
commit 31e1347376
22 changed files with 430 additions and 409 deletions
+14 -3
View File
@@ -102,7 +102,7 @@ namespace PamhagenSysCtrl.Helpers.Pipeline {
}
}
public void Draw(Canvas canvas) {
public void Draw(Canvas canvas, double scale) {
canvas.Children.Add(new Rectangle() {
Fill = Brushes.White,
Width = 5000,
@@ -110,14 +110,25 @@ namespace PamhagenSysCtrl.Helpers.Pipeline {
});
foreach (var e in Edges) {
e.Draw(canvas);
e.Scale(scale);
}
foreach (var n in Nodes) {
n.Draw(canvas);
n.Scale(scale);
}
}
public ISet<INode> GetHover(double x, double y) {
return Nodes.Where(n => n.IsInside(x, y)).ToHashSet();
public void Scale(double scale) {
foreach (var e in Edges) {
e.Scale(scale);
}
foreach (var n in Nodes) {
n.Scale(scale);
}
}
public ISet<INode> GetHover(double x, double y, double scale) {
return Nodes.Where(n => n.IsInside(x / scale, y / scale)).ToHashSet();
}
public void Update(ISet<INode> hovering, bool isPressed) {