Getting equidistant points on a curve revisited


I had posted something on this before, but I used a Repeat node because Get Curve Distance from Curve Location doesn’t take an array of Distance Values.

Recently, Gray posted another approach on the XSI mailing list. While using Curve Distance to Curve Location will give you greater accuracy, this approach has the advantage of simplicity and no Repeat node:

The other day it occurred to me that maybe I could get rid of my Repeat node by using a point cloud:

  • Use a per-point attribute to hold the different curve distance values.
  • Then feed that per-point data set into the Distance Value port of the Curve Distance to Curve Location node

Here’s my ICE tree (which is on the point cloud, not the curve):

It looks like it should work, but it doesn’t. Something goes wrong when I do the Set Point Position…all the odd-numbered points end up positioned at the end of the curve.

If I disconnect the Set Point Position node, and debug the tree, it looks like I’m getting all the right locations and points. So, for now, I’m stuck thinking I’m doing something wrong, but I haven’t figured it out yet…

3 thoughts on “Getting equidistant points on a curve revisited

  1. I duplicated your ICE Tree and get the same error. In Get Point ID, the node ID is red “Attribute ID is not initialized for the object crvlist.crvlist.

    Do you have the same error?

    Thanks for the blog, BTW. Very informative.

  2. I tried it and I get the same effect. When I open the “get point ID” node, there is a red node inside called ID. The error message says: Attribute ID is not initialized for object crvlist.crvlist”

    Do you get the same error?

Leave a comment