Keavon Chambers
f1cbc4b396
Make the node graph use Table<GradientStops> instead of GradientStops ( #3837 )
...
* Switch from GradientStops to Table<GradientStops> in all nodes
* Remove TaggedValue::ColorNotInTable
* Fix bug
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* Add migrations
* Fix default gradient on empty table
* Update demo artwork
---------
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-02-26 14:07:31 -08:00
Keavon Chambers
7ca6470656
Rename the repeat nodes to replace "Instance" terminology with "Repeat" ( #3794 )
...
* WIP
* Move the Mirror node from the module 'vector' to 'graphic'
* Update demo art
* Fix failing tests
Fix tests
2026-02-20 22:10:59 -08:00
Keavon Chambers
bd1c54907d
Rename nodes from "Instance ___" -> "Read ___" and "Instance Map" -> "Map Vector" ( #3792 )
...
* Rename nodes from "Instance ___" -> "Read ___" and "Instance Map" -> "Map Vector"
* Update leftover references and demo artwork
* Simplify logic
* Fix test
2026-02-20 08:52:36 +00:00
Keavon Chambers
f5ef1a94fe
Update the website with an evolved roadmap and new product screenshots/videos
2025-11-10 00:06:10 -08:00
Keavon Chambers
7e3ab78ea4
Fix more flaws with 'Transform' node rad-to-deg migration; make 'Tangent on Path' also use degrees by default
2025-09-18 14:09:10 -07:00
Keavon Chambers
9a32e79853
Rename `NodeInput::Network` to `NodeInput::Import` ( #3163 )
2025-09-10 20:50:15 -07:00
Adam Gerhant
332088bce1
Make the Transform node use angles in degrees instead of radians for Rotation and Skew ( #3160 )
...
* Make the Transform node use degrees not radians
* Migration script
* Migrate skew value input to store degrees
* Add comments
* Fix migrations to account for the old deprecated "Pivot" parameter
* Fix tooling interactions with degrees-based transforms
* Upgrade demo art
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-09-11 00:19:10 +00:00
Keavon Chambers
22aa8c1264
Update UI widget designs to improve color consistency and add a narrow height mode
2025-09-08 21:48:22 -07:00
Adam Gerhant
f1a1275601
Add support for adding/removing a graph's primary imports/exports separately from the secondary ( #3089 )
...
* Primary Import/Export
* Primary Import/Export
* Complete import exports
* Final changes
* Improve line width
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-08-29 20:57:15 +00:00
Keavon Chambers
1b351aca76
Replace the Color type with Table<Color> everywhere ( #3048 )
2025-08-12 00:38:23 -07:00
Keavon Chambers
0f638314dc
Rename the Group type to Graphic everywhere ( #3009 )
2025-08-05 20:55:15 -07:00
Keavon Chambers
2e1396462c
Eliminate bare Graphic and Artboard graph data by making Merge and Artboard nodes internally use tables ( #2996 )
...
* Eliminate bare Graphic and Artboard graph data by making Merge and Artboard nodes internally use tables
* Make the Extend node user-facing
2025-08-05 02:24:12 -07:00
Keavon Chambers
c98477d8ed
Rename graphic subtypes to remove their "data" and "group" suffixes ( #2990 )
...
* Rename VectorData to Vector
* Rename other VectorData* types to Vector*
* Move assorted data types out of vector_data.rs into misc.rs
* Rename vector_data.rs to vector_types.rs and remove the vector_types module folder
* Rename other references to "vector data"
* Remove label widgets for raster/vector/group to use "-" instead
* Rename RasterData to Raster
* Rename GraphicGroup to Group
* Fix migrations and rename graphic_element.rs -> graphic.rs
* Rename TaggedValue::ArtboardGroup -> TaggedValue::Artboard
2025-08-04 04:53:25 -07:00
Keavon Chambers
5637f01845
Rename GraphicElement -> Graphic and trait GraphicElementRendered -> Render ( #2987 )
2025-08-03 16:15:02 -07:00
Keavon Chambers
a0ce56d9b6
Rename Instances<T> to Table<T> and the "instance" terminology to "TableRow" and "element" ( #2981 )
...
* Instances -> Table
* instances.rs -> table.rs
* Rename occurrances of the word "instances"
* .instance -> .element
* Instance* -> TableRow*
* Rename Table and TableRow methods to not say "instance"
* Remove presumed unused serde defaults now that tables default to length 0 not 1
* Rename occurences of the word "instance"
* Un-alias the RasterDataTable<Storage>, VectorDataTable, GraphicGroupTable, ArtboardGroupTable typedefs
* Move artboard type and node code out of graphic_element.rs to a new artboard.rs
* Organize the TaggedValues
* Fix tests
* Fix prior regression with Image Value node not upgrading
2025-08-03 04:12:18 -07:00
Keavon Chambers
8f26c5c2ad
Remove the UVec2 and IVec2 graph data types and have Artboard use DVec2 ( #2894 )
2025-07-16 18:45:10 -07:00
Keavon Chambers
8c5accc069
Clean up node catalog by adding missing units, more tooltips; fix 'Line' node missing parameters ( #2813 )
...
* Fix unit usages
* Add node and parameter doc comments
* Fix the parameters panel for the 'Line' node when added from the graph
* Clean up nodes
* Fix tests
* Update the demo artwork
2025-07-01 07:47:54 -07:00
Keavon Chambers
cea1a1c6a8
Instance tables refactor part 8: Make repeater nodes use pivot not bbox and output instance type not group; rename 'Flatten Vector Elements' to 'Flatten Path' and add 'Flatten Vector' ( #2697 )
...
Make repeater nodes use pivot not bbox and output instance type not group; rename 'Flatten Vector Elements' to 'Flatten Path' and add 'Flatten Vector'
2025-06-19 18:37:40 -07:00
Keavon Chambers
a11f9b36c3
Add the menu bar command: Help > Debug > Reset Node Definitions on Open
2025-04-12 16:56:55 -07:00
Keavon Chambers
5fedd5c234
Fix demo artwork
2025-02-01 05:50:30 -08:00
Adam Gerhant
408f9bffa1
Fix regressions from #2105 (more control over subgraph imports/exports handling) ( #2213 )
...
* Fix regressions
* Fix copy to points properties
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-01-26 20:19:11 +00:00
Adam Gerhant
eec0ef761c
Polish user-created subgraph nodes: imports in the Properties panel; reorder/delete/rename imports/exports ( #2105 )
...
* Remove imports/exports
* WIP: Autogenerated properties
* WIP: Input based properties
* WIP: Hashmap based input overrides
* Migrate noise pattern node to input properties
* Reorder exports
* Continue migrating properties
* WIP: Improve reorder exports
* Automatically populate all input properties for sub networks
* Complete reorder import and export
* Add widget override to node macro
* Migrate assign colors to input based properties
* WIP: Full node property override
* Node based properties override for proto nodes
* Migrate all node properties to be input based
* Rename imports/exports
* improve UI
* Protonode input valid implementations
* Valid type list
* Small formatting fixes
* Polishing small issues
* Document upgrade
* fix tests
* Upgrade noise pattern node
* remove console log
* Fix upgrade script for Noise Pattern
* Improve the Properties panel representation for graphical data
* Re-export demo art
* Code review
* code review improvements
* Cleanup for node properties overrides
* Reexport demo art
* Fix clippy lints
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-01-20 21:13:14 -08:00
Keavon Chambers
9a25555732
Add marbled mandelbrot as unpublished demo art
2025-01-18 20:00:06 -08:00