intArrayArray.inlined for edges has problems

Found a bug? Post here.
Post Reply
timh
Posts: 28
Joined: Wed 28. Jun 2006, 20:30
Contact:

intArrayArray.inlined for edges has problems

Post by timh » Wed 20. Sep 2006, 17:21

I have the problem that setting the edge indices of an indexedLinesSet repeatedly with just one edge of varying length (through the factory actually gives an exception in a copy routine. It seems that the StorageModel does not notice the change of length in the fiber in that inlined data and tries to copy the values in the old location which is not large enough.

Any ideas how exactly to fix this?

Tim

User avatar
steffen
Posts: 186
Joined: Fri 16. Jun 2006, 13:30
Location: TU Berlin
Contact:

Re: intArrayArray.inlined for edges has problems

Post by steffen » Fri 22. Sep 2006, 08:59

timh wrote:It seems that the StorageModel does not notice the change of length in the fiber in that inlined data and tries to copy the values in the old location which is not large enough.
This is true. I. e. you also get this kind of error when you set 4D data on a PointSet that previously had 3D fibres. The only workaround I know is to clear the DataListSet fist, i. e. by calling setBlaCountAndAttributes(..).

However, the StorageModel is on the TODO list (since last summer?)

Steffen.

timh
Posts: 28
Joined: Wed 28. Jun 2006, 20:30
Contact:

Post by timh » Fri 22. Sep 2006, 10:00

This is true. I. e. you also get this kind of error when you set 4D data on a PointSet that previously had 3D fibres. The only workaround I know is to clear the DataListSet fist, i. e. by calling setBlaCountAndAttributes(..).
Yes. but If you do this you loose all benefits the factory classes have. You end up with doing everything by hand again and setting things in a Runnable via the writer methods.. or you get inconsistent states...
However, the StorageModel is on the TODO list (since last summer?)
Oh well. Last meeting we agreed that one should not touch a working subsystem at the moment.
Does not seem to work as expected though.. :-)

Tim.

Post Reply