Skip to main content

I am looking for a way to distribute shapes around in a circle?  I have about 100 shapes (each represent an object that could have a relationship to other objects/shapes, and I want to show connectors for that.

I can not find a way besides one at a time dragging around to make this work, and with 100+ shapes trying to get in a nice clean circle is near impossible.

It is like shapes will have connections to 10-20 other shapes, hence the circle patten seems to fit.

 

I found an image on the web that shows sort of what I am looking to do, but the “edge” or circle I would just use rectangles, and create connections between them.

https://www.codeproject.com/KB/silverlight/342715/screenshot.png

 

Ideas?  Thanks!

I have a complex answer for you. Lucid has an API for building extensions so you can build your own complex actions. One of the sample extensions Lucid has built to help people get started arranges the selected items into a circle. There may be a future when the sample extensions are available for easy install by anyone, but that is not the current state. To use it, you would need to create the extension yourself and copy the code over.


If that is a solution you are interested in, here is the page to get started using the extension API, https://developer.lucid.co/extension-api/#getting-started, and here is link to GitHub that contains the sample extension for arranging items into a circle, https://github.com/lucidsoftware/sample-lucid-extensions/tree/main/in-a-circle. Also, here is the community page to get help specifically with using Lucid’s APIs, https://community.lucid.co/lucid-for-developers-6, and I’m happy to help if you have questions.
 

Writing my first extension took about a day. Since all the code is written already, this would theoretically take significantly less than that. If you are not an engineer, it’s still possible to get everything set up but my take a little longer.

 

I don’t know of an easier way to accomplish what you’re asking for.


Thank you.  I will take a look and experiment with this process.


Reply