2
$\begingroup$

I want to apply an Array Modifier using a function based on the counter number. For example, X Displace = Count**2, I tried to use modifiers["Array"].constant_offset_displace[0] = modifiers["Array"].count**2, but the result is the count value squared, like the print:

enter image description here

I was expecting for Instance 01 of the Array Modifier to result to $x=1**2 (=1)$, for Instance 02 to $x=2**2 (=4)$, for Instance 03 to $x=3**2 (=9)$, and so on... The graphic result is a curve, not a constant like what happens on the print.

How can I do this?

Thanks!

$\endgroup$
2
  • 3
    $\begingroup$ I don't think you can do that with an array. What you can do, is create "real" copies of the object and set their coordinates to the values you want. $\endgroup$
    – thibsert
    Jan 23, 2019 at 21:28
  • $\begingroup$ In python ** means exponent. So count**2 is count squared. For multiplication it is count*2. Is this what you want? Or am I understanding wrong? $\endgroup$
    – kaisa
    Jan 24, 2019 at 15:09

1 Answer 1

2
$\begingroup$

You can't have a variable offset using the Array modifier, but you can use Geometry Nodes to do it.

Here's a tree that will achieve the result of squaring the distance between instances depending on the instance index.

enter image description here

The instance locations in the Spreadsheet editor :

enter image description here

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.