Hi All, do you know how to populate an Inventor Multivalue PARAMETER using a For cycle in iLogic according to a variable index corresponding to a different number of array items?
for example:
i grab some data from a Rule and populate an Arraylist variable. I trace the number of instances using a counter. after the data acquisition I want to populate the Multivalue Parameter with the acquired values.
No problem browsing the Arraylist parameter: MyArraylist.(Index)... but what about the Multivalue parameter?
the MultiValue.SetList("Multivalue Parameter", Value 1, Value 2, ... , Value N) provide a defined number of data and cannot be set dynamically according to an Index.
thank you in advance
Solved! Go to Solution.
Out of my breif knowledge I would suggest you can use another Array, populate that and then send it to the paramer.
i.e.
' Your extracted value
Dim MyOriginalArray as New ArrayList
MyOriginalArray = .......
'Declare an arbitrary array
Dim lstSecond as New ArrayList
' filter out as however you would like
For i = 1 to 10
lstSecond.add(MyOriginalArray.item(i))
Next i
'Populate the paramter
Multivalue.List(YourParameter") = lstSecond
Hope this helps
Multivalue.List("MyParameter") = ArrayList was exactly what I was missing. It works perfectly without any cycle for filling in all he values and it depends on how many values are stored into ArraList.
Great, Thank you!
Can I add new values immediatelly to Multivalue without creating array ?
yes of course; the default string definition is explicit; you decide which are the values and the position in the list:
MultiValue.SetList("test", 0.5, 0.75, 1.0, 1.25)
test is your numeric or text parameter within Inventor
And how I can add fifth parameter 1.5 ?
For example, I want to add new values in cycle
and don't know about their quantity
Can't find what you're looking for? Ask the community or share your knowledge.