Update path rendering logic in viewport-host.ts

This commit is contained in:
2026-04-13 22:26:42 +02:00
parent 50de79a546
commit 8e2034d5ef

View File

@@ -3209,6 +3209,10 @@ export class ViewportHost {
)) {
this.applyModelInstanceRenderObjectTransform(modelInstance);
}
for (const path of getScenePaths(this.currentDocument.paths)) {
this.updatePathRenderObjectState(path);
}
}
private applyTransformPreview() {
@@ -5237,22 +5241,38 @@ export class ViewportHost {
}
const selected = isPathSelected(this.currentSelection, path.id);
const hovered =
this.hoveredSelection.kind === "paths" &&
this.hoveredSelection.ids.includes(path.id);
const hovered = isPathSelected(this.hoveredSelection, path.id);
renderObjects.line.material.color.setHex(
selected ? PATH_SELECTED_COLOR : hovered ? PATH_HOVERED_COLOR : PATH_COLOR
);
for (const pointMesh of renderObjects.pointMeshes) {
const pointSelected = isPathPointSelected(
this.currentSelection,
path.id,
pointMesh.pointId
);
const pointHovered = isPathPointSelected(
this.hoveredSelection,
path.id,
pointMesh.pointId
);
pointMesh.mesh.material.color.setHex(
selected
pointSelected
? PATH_POINT_SELECTED_COLOR
: hovered
: pointHovered || selected
? PATH_POINT_HOVERED_COLOR
: PATH_POINT_COLOR
);
pointMesh.mesh.scale.setScalar(
pointSelected
? PATH_POINT_SELECTED_SCALE
: pointHovered
? PATH_POINT_HOVERED_SCALE
: 1
);
}
}
}