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
Here you go:
System::Windows::Forms::Application::ThreadException event occured
SENDER: System.Threading.Thread
EXCEPTION: System.ArgumentNullException
MESSAGE: Value cannot be null.
Parameter name: image
SOURCE: System.Drawing
CALL STACK
at System.Drawing.Graphics.DrawImage(Image image, Int32 x, Int32 y, Int32 width, Int32 height)
at System.Drawing.Bitmap..ctor(Image original, Int32 width, Int32 height)
at System.Drawing.Bitmap..ctor(Image original, Size newSize)
at AxonWidget.Axon.SetElementsByCategory()
at AxonWidget.Axon.SetElements()
at AxonWidget.Axon.set_IsActive(Boolean value)
at AxonWidget.Axon.OnMouseDown(Object sender, MouseEventArgs e)
at System.Windows.Forms.MouseEventHandler.Invoke(Object sender, MouseEventArgs e)
at System.Windows.Forms.Control.OnMouseDown(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Thanks,
-A.
Abraham,
When rhino crashing, before closing the warning message, generates two files on the desktop. One is a text file, open it and tell me what it says. With so little information I can not help you.
Looks interesting Daniel. But it is crashing Rhino every time i right click the widget.
Any ideas?
-A.
Really cool Daniel.
Should be turned off the memory load.
Thanks ! I had forgotten the trick...
Hi Sebastien,
in the rhino command line, type GrasshopperDeveloperSettings and enable/disable the COFF option and restart rhino + gh.
Let me know if this works.
Bonjour Daniel,
I have this error from WriteFromFile component :
1. [A]AxonWidget.Axon ne peut pas être converti en [B]AxonWidget.Axon. Le type A provient de 'AxonWidget, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' dans le contexte 'LoadNeither' d'un tableau d'octets. Le type B provient de 'AxonWidget, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' dans le contexte 'LoadFrom' à l'emplacement 'C:\USERS\SP\APPDATA\ROAMING\GRASSHOPPER\LIBRARIES\AXON\AxonWidget.gha'. (line: 114)
Could you help ?
Thank you !
Hola Rodolfo,
put the AxonWidget.gha and AxonConnectiviyDatabase.xml in the components folder, and restart rhino + gh. That's all. You can find the components folder from Gh interface | File > Special Folders > components Folder.
To know if it is allready installed, go to Display > Canvas Widgets, and check if there is one named Axon. It is a widget, so you do not find a new tab as with other plugins.
The Reset Axon Database is to delete the current database and create a new root in the xml (without the root, can not (de)serialize). For example, if you do not want to use the record of frequency of components and connections of MY files, and use yours, you can use ResetRoot script and then WriteFromFile script, to have a database closer to your habits of components and connections (assuming you use files created by you).
If you have deleted the content of the xml (using ResetRoot), you can re-download it and replace it in the components folder.
Sorry if I have not been clear enough.
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by
You need to be a member of Grasshopper to add comments!