Rhino WIP Feature: ArrayCrv

RH-92235 is fixed in Rhino WIP

1 Like

RH-92358 is also fixed this Rhino WIP.

1 Like

Maybe most users don’t bother to use them or even know that they exist, but blocks have the ultimate importance in a lot advanced user workflows. Blocks with dynamic properties, multiple levels, etc, a lot of effort goes into building them sometimes. I really want to emphasize their importance to advanced users, and my wish for all tools, new and existing to be compatible and optimed for them. The new array looks very useful, and Rhino as a whole should move in the direction of more poewrful tools that are not constrained by the 90’s era command line like that. Congrats @Matt_Bennett !

3 Likes

THANK YOU!!!

Us jewellery CAD guys really like to array gems along curves. Using ArrayCrv was never a solution, we’d always need a 3rd party plugin to do so. Expanding/replacing ArrayCrv is a massive step forward, and is greatly appreciated.

One comment I’d make is with scaling - gemstones will often have discreet dimensions. So I might want to graduate 5 diamonds from 2mm to 4.5mm.

A true graduation would give measurements of (2mm, 2.62mm, 3.25mm, 3.88mm, 4.5mm). The ability to specify the scaling of individual elements would help in this situation and would allow a graduation of (2mm, 2.5mm, 3.3mm, 3.9mm, 4.5mm) - all readily available gem sizes.

This would be especially helpful when we are forced to use specific sized gems - which is often the case. I should note that my gems are 1mm block instances - so the scaling factor also gives me the desired dimension (1mm scaled 1.5x results in a 1.5mm gem)

I hope this feedback doesn’t detract from my gratitude and with how impressed I am with what you’ve built (especially with implementing History!), again, thank you!

1 Like

@aaron4 You could try combining it with this command for scaling during the development phase: first apply gradual scaling, and then use ArrayCrv before mapping it onto the surface.
I’m not sure if it’s possible to assign precise values like 1, 1.5, 2, etc., since I haven’t tested it yet, but if it is, you could suggest it with a few examples.

Yeah for sure, I do think we could eventually introduce some sort of list of sizes on the curve. I don’t see this happening for v9’s new ArrayCrv revamp but could certainly happen going forward. I’ve made a ticket so that we don’t forget about the request.

4 Likes

The Array Curve Plus plugin (from Jarek? I think?) allows for per-item scaling as well as start/end scaling. Works very well, would love to see the same functionality in the new Array Curve tool.

2 Likes

I’ve been waiting for this for years!!! Thank you!!!

1 Like

When using history, editing the curve works only 1x:

That would be great!

Would you then use a ā€œRoundā€ such as Floor/Ceiling/Neutral (similar to GH) to select which value to use from the list?

Late to this discussion, tried to read everything to catch up but I apologize if I’ve missed an explanation here. I’m trying to use ArrayCrv for the legacy behavior and can’t figure it out… Do I need more coffee or is this actually difficult?

ArrayCrv Simple.3dm (57.7 KB)

The initial alignment is by objects bounding center and world orientation, not the objects location in the world. ArrayCrvOld still supports the older method. Best practice is to create array objects around the origin for maximum positioning options and control during layout.

Fair enough. I see what you’re doing. For a moment I thought maybe I could set a CPlane aligned to my object and then use that to orient but that’s not an option either. I see why this is more powerful. I’ll keep ArrayCrvOld in my pocket until I get over the muscle memory of building my objects directly on the curve. Interesting tool and cool UI. It’s obvious from this thread that the jewelry folks should dictate functionality.

1 Like

It definitely is a shift from the ā€œfrom hereā€ alignment of the old tool. That method worked but got limited quickly and didn’t do a good job of supporting a list of blocks that you might want to sit and noodle with and a few other weird alignment scenarios. However, we don’t have any plans of removing the older version of the tool, it still has its use cases.