Heres the current progress,
I’ve added a menu system, which includes menus submenus and buttons, I have yet to implement sliders.
Menus are created in one line
buttons are linked to menus, and buttons can further become submenus.
Everything comes with customisability, such as border size, color, fill, highlight, etc. I have yet to make the menu drag function work correctly. You can choose between radio and checkboxes or standard text buttons. The radio and checkbox aren’t complete yet though.
I am currently working on adding textboxes and scrollable text areas, which again would follow the same pattern and have linked parents.
button functions are then called in one line like this;
the toggle2 function interacts with a hashmap inside a given class to toggle certain booleans. Each button comes with its own toggle option two for simpler operations. and I’m going to add a simple click function for when certain booleans are linked to one another.
Boundary class, allows you to add a variety of shapes and lines, ellipse rectangle and line, are ready to go, though I’ve yet to add proper collision, as this will require a matrix class to handle dot products. I will be including bezier curves, convex poligons, concave poligons, triangles, curves, and waves. Again everything will be customizable and draggable.
The pallet on the left will have quick access to the buttons and a color pallet to change the fill and stroke. I will add center of mass to each of the shapes, with a choice to set your own so that you can have interesting physics.
The grid, is really just a array of objects, which can interact with each other and the shapes, the shape and color are customizable. There positions over time are stored in an array and can be replayed through the pause rewind of forward buttons, I will add more functionality later. I have added gravity as an option to the attractors, and once the matrix class is added, will have proper collision for all shapes and their rotations.
grid is called in one line, xpos, ypos, width height, cols, rows;
and all customisations is linkable to buttons. I will add integrated genetic algorithm into the grid class, along with game of life and maze, which will be callable with one boolean, and hopefully later on machine learning.
The grid will also be able to be used to generate terrain through the perlin noise function, or movable cloth.
Also added a 2d plot, and am working on its 3d counterpart.
Finally I have added windows and scenes. Windows are essentially just boxes, and scenes will be navigate-able.