Thanks! Unfortunately, I’ve encountered a new problem.
My “spines” aren’t perfectly straight; they have a bend to them. To be more specific, a “spine” is made of a straight solidified beveled bezier curve (just two endpoints in the curve, no bend), and I have separate “control” bezier curve which acts as a Curve Deform on them (I use a separate bezier curve rather than having the curve that makes up the spine bend in order that I can use the same “control” curve to deform multiple elements, not just the spines). So my modifiers without the lattice go Curve Deform -> Solidify -> Array, and I get a perfect array of evenly long curved “spines” (mind you, they’re not perfectly cylindrical as I’d like, as the Curve Deform makes them a bit elliptical when it changes their angle - but that’s not a show stopper).
That’s how things are as it stands. But when I apply Lattice that you recommend after Array, the severity of the curve changes. Where the spines are short, it becomes a sharp curve; where the spines are long it becomes a shallow, barely noticeable curve. What I really want is the curve to retain the same slope throughout - aka, if one spine starts off curving up at 15 degrees, then they all start curving up at 15 degrees; the longer spines just reach a greater height than the little ones. Is this possible?
Basically, when you think about it, what I really need is that the “spines” get scaled on all axes away from their starting point, not just length (so that the slope of the curve remains the same) with the caveat that the curve bevel that turns them from a curvy 1d line to a 3d object is done after said scaling (otherwise, a spine that’s say three times as long would be three times as thick, and that doesn’t work for me at all - I’m modeling something that’s going to be made out of constant diameter pipe). Can you think of a way to do this? Because the curve bevel that transforms it to 3d is part of the bezier curve object properties, not a modifier, so it always happens before one can apply any modifiers, which means it’ll get warped by any scaling
I think another possibility to achieve the same thing would be if I did it like you describe, but that my Curve Deform modifier came after both the Array and Lattice modifiers. If it would deform each element in precisely the same manner and apply the same slope to each spine in the array regardless of the length, then that would be a pretty good approximation of what I need (The option described in the preceeding paragraph would be better, as it wouldn’t make them elliptical - but this would be good enough). Unfortunately, when I try moving my Curve Deform to after the Lattice modifier, it starts looking all weird - the first “spine” gets curved right, but all subsequent ones get weirder and weirder. It doesn’t at all apply the same curve to each element.
I hope that what I want to do is possible.