Graph Type Rendering Updates (Graph UI)

classic Classic list List threaded Threaded
55 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
.. another demo or better application would be a font browser
similar (but with far less features) to FontForge.

An initial version could simply show a grid of a range of glyphs.

When selecting, clicking one, we could zoom it out and show the
glyph details, attributes.
Perhaps also showing the actual line and curve segments.

A GraphUI slide-view (scrollview) might come handy here to
scroll through the many glyphs as well.

This little app could also help with debugging remaining issues
with our Graph engine (tessellation).
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
Sven Gothel wrote
.. another demo or better application would be a font browser
similar (but with far less features) to FontForge.

An initial version could simply show a grid of a range of glyphs.
...
something like this FontView01, using a Group w/ GlyphShape + Rectangle per glyph
within a Group-GridLayout

Screenshot avail here.

Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
GraphUI – FontView App (Micro FontForge)

https://jausoft.com/blog/2023/04/14/graphui-fontview-app-micro-fontforge/

Refining the UI elements in our Graph Type Rendering and UI saga, pushing demos and apps for use cases. This time its FontView01, which may become a micro FontForge using it as its role model. It also demonstrate that our GraphUI scenegraph allows reusing instances, rendering it effectively a Directed Acyclic Graph (DAG).

Reusing Shape instances is especially useful if maintaining its position and scale, i.e. adding another view of the same thing as shown below by the new FontView01. The glyph `ae` is presented within two Groups, the main-grid on the left and the info-grid on the right....
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
Graph + GraphUI: Consolidate Vertex: Drop SVertex and factory, use Vec[234]f instead of float[] and remove unused VectorUtil methods
After Matrix4f consolidation and proving same or better performance on non array types,
this enhances code readability, simplifies API, reduces bugs and may improve performance.
This was AFAIK the last ugly `float[]`math utilization replaced now,
already lead to one follow-up bug-fix :)

Now back to CSS style layout code, at least some proper Grid and Flex mode
to allow hacking a UI quickly together w/o manual creepy layout math in user code :)
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

gouessej
Administrator
I know those two layouts, supporting them in JOGL would be awesome.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
GridLayout so and so working, usable w/ and w/o cell-size,
Gap can be configures and optional Padding is part of Shape including optional Border.

https://jausoft.com/blog/wp-content/uploads/2023/04/UILayoutGrid01-vbaa-cols-s04-fsaa0-snap00-1280x0720-1.png
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

gouessej
Administrator
It rocks, it's typically the kind of thing I'll have to do in ardor3d-web-ui to replace ardor3d-ui. Excellent job. Keep up the good work :) It's very promising for the future of UI in JogAmp with NEWT :)
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
In reply to this post by Sven Gothel
.. and a little over the weekend animation work done

main commit https://jogamp.org/cgit/jogl.git/commit/?id=4448010d8d787c73d48f54b296c3a8c2499aeaa0
GraphUI: Extract generalized AnimGroup functionality from UISceneDemo03*, providing sets of animated Shapes (GlyphShape or any other)
Hardcoding the whole animation process into user code is not feasible to allow a quick add-on.

GraphUI's new AnimGroup is a Group and allows to add multiple AnimGroup.Set of AnimGroup.ShapeData.

+++

AnimGroup.ShapeData holds the actual Shape and its start- and target position
as well as its active animation state and an optional user object attachment.

AnimGroup.Set holds a list of AnimGroup.ShapeData as well as the animation properties
and states like acceleration and velocity for translation and angular operations.
It also contains the AnimGroup.LerpFunc for linear interpolation of the next position
as called via AnimGroup.tick() over all sets.

AnimGroup.LerpFunc is intended to perform the linear interpolation for the next position,
either user provided or one of the provided may be used, i.e. TargetLerp, ScrollLerp and SineLerp.

To setup the start- and target position for each AnimGroup.ShapeData,
a AnimGroup.ShapeSetup is used - user implementated or one of the build-in
of AnimGroup.addGlyphSetHorizScroll01(..), AnimGroup.assGlyphSetRandom01(..).

+++

UISceneDemo03 consolidated UISceneDemo03 + UISceneDemo03b (deleted)
and shows the following AnimGroup capabilities:

- Two repetitive scrolling text lines. One text shorter than the line-width and one longer.

- One line of animated rectangles, rotating around their z-axis

- A text animation assembling one line of text,
  each glyph coming from from a random 3D point moving to its destination all at once including rotation.

- One line of text with sine wave animation
Screenshots .. well, will followup with a video + blog as still images can't tell the story I guess ;-)
- https://jausoft.com/blog/wp-content/uploads/2023/08/UISceneDemo03-vbaa-s04-fsaa0-snap03-1280x0720-1.png
- https://jausoft.com/blog/wp-content/uploads/2023/08/UISceneDemo03-vbaa-s04-fsaa0-snap05-1280x0720-1.png
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
The video https://jausoft.com/Files/media/20230827-UISceneDemo03.mp4

I added sound using our GLMediaPlayer ( FFmpeg + JOAL/OpenAL).

Sound is: Heaven by Zero G, i.e.
- https://archive.org/details/Agree_to_Disagree_an_index_of_possibilities-12891/Zero_V_-_05_-_Heaven.mp3

May write a blog later ..
Cheers, Sven
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
.. and time for a little roundup with pretty pictures ..

https://jausoft.com/blog/2023/09/26/graphui-css-style-layout-fonts-more/

And now .. the painful but required call for related project work, funding or otherwise.

    All big & medium sized firms – as well other hybrid commercial projects,
    are strongly invited to contact me to discuss the next steps forward (if any).
    I would suggest to setup meetings with their stakeholders and discuss a plan forward.

    A one person full time compensation might be enough, two person support would be awesome.
    See How to pay professional maintainers.


    ^^ this is not directed to any hobby or small-biz entity using the project,
    but more so directed at whats left in the ethics department of the bigger corps & orgs :-/
    Interestingly enough, it always were the small biz corps supporting this project the most!
    THANK YOU!
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

gouessej
Administrator
Good job :) I understand your position, there's a lot of unpaid work to drive all this possible.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Graph Type Rendering Updates (Graph UI)

Sven Gothel
Administrator
123