Commit Graph
8 Commits
Author SHA1 Message Date
PozzettiAndreaandClaude Opus 4.8 587c1927ce Add Preview Mesh Slicer node (interactive VTK.js clip)
3D clip view + orthographic pick view (XY/YZ/XZ toggle): click 2 points to
define a cut line swept along the view axis into a clip plane; flip clip
slices the other side. Python node exports the mesh .vtp; clipping is
interactive in viewer_slicer.html. prestartup copies the new slicer viewer.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 17:12:45 +02:00
PozzettiAndreaandClaude Opus 4.8 ddb0a54126 Add Preview Mesh Boundaries node (VTK.js, edge threshold by adjacent-face metric)
edge_value = reduce(face_field[A], face_field[B]); face_normals+angle =
dihedral. Thresholded edges + surface written to an ASCII .vtp and shown
in the shared VTK.js viewer (viewer_vtk.html) in-node. Face field is a
string (face_normals or any face_attributes key; available ones logged).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 16:05:40 +02:00
PozzettiAndreaandClaude Opus 4.8 6593ed8cf7 Preview Mesh Batch Render: yz-flip, 3-plane grid, mesh/edge opacity, connected components
- revert_yz_flip: swap Y/Z axes
- three_plane: 2x2 grid (iso(random) + XY/YZ/XZ)
- mesh_opacity + show_edges with conditional edge_opacity (hidden until edges on, via web_src JS)
- show_connected_components: color by pyvista connectivity() RegionId

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 15:31:45 +02:00
PozzettiAndreaandClaude Opus 4.8 df72bc63b7 Load Mesh Batch: custom floating dropdown for folder autocomplete
Native <datalist> never opens inside ComfyUI transformed DOM widgets;
replace with a body-attached floating dropdown (fixed-positioned under the
input), click-to-descend into folders, fed by /gpack/getpath.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 15:02:21 +02:00
PozzettiAndreaandClaude Opus 4.8 b5fb441e3e Load Mesh Batch: folder-path autocomplete via own /gpack/getpath route
Inspired by VHS Load Video (Path), but GeometryPack-owned: register
/gpack/getpath in __init__ (main process, after PromptServer exists) to
list directory contents, and a web_src widget that replaces folder_path
with an <input>+<datalist> showing live FOLDER suggestions.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 14:58:36 +02:00
PozzettiAndreaandClaude Opus 4.8 7ff9dbcf37 Load Mesh View 3D: use VTK viewer (robust OBJ) instead of Three.js
The Three.js viewer.html OBJLoader chokes on some OBJs; viewer_vtk.html
uses VTK readers (same LOAD_MESH protocol) and shows the download bar.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 14:51:50 +02:00
PozzettiAndreaandClaude Opus 4.8 62ab5659f3 Load Mesh: XHR upload with progress bar + debug log
Switch upload from fetch to XHR for upload progress, show a bar on the
node during upload. Top-level log to confirm the extension loads.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 14:09:34 +02:00
PozzettiAndreaandClaude Opus 4.8 892626791a Load Mesh drag-n-drop upload + inline View 3D; add Render Mesh Batch node
- Load Mesh: drop/upload meshes (reuses /upload/image, subfolder=3d, like
  the official Load Image) + a "view 3d" toggle that mounts the shared
  vtk.js viewer inline. Frontend source in tracked web_src/, copied to the
  generated web/js at prestartup.
- Render Mesh Batch: offscreen pyvista render per mesh, titled by name.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 14:01:02 +02:00