Good approach for accessing data in an specific order andy.
but i guess ice at its core retrieves data at the start of frame, then sets
it at the end within one node.
anything that needs child data to be set before parent data is retrieved is
a loop by its very nature.


ben, i had a little dig with c++ ice stuff but stalled out when the example
pass through node crashed when trying to cope with polymorphism.
ill have another look into it, i imagine its been fixed by the softimage
crew by now.

_sam




On Tue, Jun 19, 2012 at 7:10 AM, Ben Houston <[email protected]> wrote:

> You could very easily write a C++ node that takes the arrays and
> processes them in a specific order, but you probably want to stay
> within ICE.
> -ben
>
> On Tue, Jun 19, 2012 at 9:36 AM, Andy Nicholas <[email protected]>
> wrote:
> >
> > Hi Sam,
> > You can't reorder the actual evaluation as it gets called from the tree,
> but I
> > think you can fake it.
> >
> > Off the top of my head, I'd try something like this:
> >
> > 1) Create list of unique point indices dictating order of processing
> (There
> > should be a one-to-one mapping between this list of indices and the list
> of
> > indices generated by using Element Index, i.e. the maximum index should
> be equal
> > to the number of points -1)
> > 2) Use your custom index with "Index to Location" to get the point
> location for
> > the point you want to process
> > 3) From that location, get any data from that point you need
> > 4) Process your data
> > 5) Save the result into a custom attribute
> > 6) Use "Build Array From Set" on your custom attribute, and do a "Sort
> Array
> > With Key"
> > 7) Index into the sorted array using the current point's "Element Index"
> and use
> > that value to set the data onto the correct point.
> >
> >
> > Instead of doing "Index To Location" in step 2, you could alternatively
> index
> > into an array made using "Build Array From Set", but it's not as
> flexible as it
> > stops you being able to access things like "PointNeighbours" (it means
> you have
> > to have an array of arrays).
> >
> > Cheers,
> > Andy
> >
> >
> >
> >
> >
> > On 19 June 2012 at 02:40 Sam Cuttriss <[email protected]> wrote:
> >
> >
> >> is there a way (avoiding loop/ while nodes) to define an array of point
> id's
> >> that dictate the order they are assesssed.
> >>
> >>  i can think of plenty of ways with loops etc but im drawing a blank
> for an
> >> efficent way of doing it.
> >>  _sam
> >>
>
>
>
> --
> Best regards,
> Ben Houston
> Voice: 613-762-4113 Skype: ben.exocortex Twitter: @exocortexcom
> http://Exocortex.com - Passionate CG Software Professionals.
>
>

Reply via email to