-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Introduce shape attributes, shape viewer, and shape editor #2908
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #2908 +/- ##
===========================================
+ Coverage 79.61% 80.61% +0.99%
===========================================
Files 53 55 +2
Lines 7256 7692 +436
===========================================
+ Hits 5777 6201 +424
- Misses 1479 1491 +12 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
I think this would be most interesting for creating manual tie-points: #494 |
|
@natowi Yes, this is a fundamental PR toward this goal, but that will also enable other use cases (replacing custom UI, replacing export of full images to draw simple shapes, etc). |
098a95a to
848088d
Compare
A ShapeListAttribute description. A set of ShapeAttribute descriptions (point, line, rectangle, circle).
A model for a list of shapes provided by a json file attribute.
A model for all selected node shape files.
Also auto convert numeric strings.
Also change set / remove observation icons.
Important
This pull request is based on #2878.
Description
This PR introduces shapes attributes, a shape viewer and a shape editor.
The goal is to support primitive shape node attributes with both display and visual editing capabilities in Meshroom.
Shape attributes:
New attributes available for Meshroom nodes:
Shapeattributes (keyable or not):FloatParam, height:FloatParam)FloatParam, y:FloatParam)Point2d, b:Point2d)Point2d, size:Size2d)Point2d, radius:FloatParam)ShapeListattribute to handle a list of shapes (keyable or not).Shape editor:
The new
ShapeEditorinNodeEditorallows users to display or hide shapes in the viewer, initialize or reset them, add or remove elements from aShapeList, change shape colors, and select individual shapes.The new shape editor on the NodeEditor.
Shape viewer:
The new
ShapeViewerallows to display and visually edit the shapes directly on top of the Meshroom 2d Viewer.Shapes can be repositioned and adjusted via draggable handles, with stroke width remaining consistent during zoom.
Various shape attributes in the ShapeViewer.
JSON shape file support:
The
ShapeEditorandShapeViewercan automatically load JSON shape data from nodeFileattributes.With File attribute
semantic="shapeFile"and a JSON file with the proper structure.This can be really useful for visualizing computation results and debugging.
Shape files also support text display.
A node output shape file in the ShapeEditor and the ShapeViewer.
Unit tests cover:
Samples:
Features list
NodeEditorDrawKeyablePoint2dList