algorithmic modeling for Rhino
Widget to select and instantiate components from the canvas. It uses an XML database to record the more frequent components and connections between components.
This allows selection using tabbed distribution, frequency of components/connections, frequency of parameters/connections and random components.
To use: alt + right click or dragging a wire + right click. To access the menu right click on inner circle.
I always wanted something like this to have a faster workflow. However, it is not much improvement as I expected, but it also requires getting used to this. Please note that the frequency components that appear depend of the xml database, so that with time your database will be closer to your really habits of components. However, you can register the components and connections of gh files from the AxonFile.gh. This file also contains more details.
To install:
- Put the .gha and .xml files in the Components Folder:
-- File > Special Folders > Components Folder.
-- Or C:\Users\USER\AppData\Roaming\Grasshopper\Libraries
- Restart Rhino + Grasshopper.
AxonWidget.gha (v 0.2.2 | 13/09/2017)
AxonFile.gh (requires Human plugin)
About AxonFile:
Perhaps I have done very confusing for someone. I wanted to put options to manipulate the database, but this is not necessary to use the widget.
Write connections from gh files in the Axon Database
This serves to read gh files and add that information (how many times a component is used and the connections between them) to the database. With this you can fill the database with your habits of use of components.
Reset Axon Database
This is to empty the database. Do not use if you do not want to lose the entire database. Without this registration, the widget does not work. This is intended for later to use WriteFromFile script with your own files, to have a database that collects your usage habits of components and connections between them.
Deserialize the top components of the Axon Database
This shows in human language most used components and their connections. It is only for the curious, or for those who need the information of the database for some reason.
Major changes of 0.2.1 release:
- Now when the widget is disabled, are not accessed at any time to the database, is completely isolated.
- Reduced runtime. Instantiate a component or create a connection and add it to the database took between 200 ~ 400 ms, now only takes between 2 ~ 10 ms!!. The database is only saved when you close a document, and not on any new record as before. I know, this was obvious, but really good improvement anyway.
- Bugs fixed.
Major changes of 0.2.2 release:
- Bug fixed: when the definition is very large instantiation took a long time.
Comment
Daniel, thank you! It seems to be working great.
Hi Derin,
I was aware of this problem. I have touched the code a bit and updated the gha, can you confirm if the bug is resolved please? You only need to replace the .gha.
If it is now solved, the problem was that it was previously recomputing the entire definition instead of the instantiated component when it is automatically wired, on that day I did not find the right way to do it.
Hi Daniel. The instantiation is really slow once there are a lot of objects in the grasshopper definition. I think it's actually the rhino objects that might slow it down, not the number of GH components on the canvas. Do you know why that might happen?
impresssive
I see, indeed, what you have in mind is not a simple task. An ambitious goal, I hope you succeed in achieving it (but to be honest, if I understood it the right way, that might be kinda too hard to be worth doing for now, no?)
Thanks Tim,
my intention is to register and instantiate not only components but also procedures (pieces of definitions), but the current version of gh not put me it all easy because it does not treat the definitions as an object in itself. Since the idea of this plugin was to make a faster workflow, along with that I'd like to instantiate pieces of definitions (eg, range-graphmapper-remap-bounds-constructdomain-twosliders, all connected) with very few clicks, and also make a record of the proceedings or sub-procedures more frequent in the axon database. However, this would imply great deal of time which I do not have now, so it is in very low positions of my pile of unfinished tasks.
Hey Daniel, how are you doing?
I was very interested in Axon Widget but I was working on an important project back then and was afraid of crashes that some guys reported before so I decided to wait a bit to let you polish the code. I'm curious if the development is still going and if it is safe to download (more or less I think it is gonna be fine). Maybe I'm wrong but I have an impression that the development is currently at a halt and I was wondering if there is gonna be an update in near future.
All talk aside, I respect your personal time and work and ask you from mere curiosity and appreciation for such an amazing tool.
Awesome work, thank you!
Axon Widget & MetaHopper conflict.
To operate the Axon Widget, you need to turn off the "Memory load" in GrasshopperDeveloperSettings. But then it does not work MetaHopper.
And vice versa. How to combine them?
Cool,
thanks for the feedback Abraham, and to all for the compliments.
Hi Daniel,
Seems to be working fine.
Thanks!!
-A.
Welcome to
Grasshopper
© 2024 Created by Scott Davidson. Powered by
You need to be a member of Grasshopper to add comments!