# How to get the points of a Catmull rom curve segment for P1 to P2 skipping P0 and P3?

In reference to thread Curve: difference between getPoint and getPointAt methods

I am moving the original question to here since I still could use a math answer perhaps or its easier for someone to find it later.
I needed to figure out how to only get the points of the Catmull Rom curve that draws the curve between Points P1 to P2

Ill add code here if I figure it out, but for now all ask with the above in mind. How would I get a segment of a curve from the original points locations? Example pertaining to the Catmull Rom https://en.wikipedia.org/wiki/Centripetal_Catmull–Rom_spline
I need to only get(generate) the vertices in P1 to P2 curve area and ignore the P0 to P1 and P2 to P3 area.
In THREE’s default code I need the 4 points to give me a curve and the function getPoints() gives me the whole curve.

In thinking, I would estimate I need to get the lengths of the 3 internal curves and normalize these to the range of 0-1 and just find the middle range. But that seems iffy at best.

Iffy is right, There are two ways to think about it. Either points not in sync starting and stopping at the original control points or get the exact “t” indexes of the points in the curve which are near but still out of sync with the original control points

not sure if this solves it, just putting sthuff together

https://jsfiddle.net/narfNarf8394/nyt0Lfcr/1/

1 Like