Hi there!

Im trying to find out which faces and points are intersected by the 3D curve.

codes can be found in Three default - JSFiddle - Code Playground

I looked into three.js docs Raycaster but it used for mouse picking.

You can’t use `Raycaster`

for this since it performs ray intersections tests with 3D objects. And rays are considered to be straight, starting from an origin and extending infinitely.

For curves like a bezier curve you can only implement an approximation. Meaning you divide the curve into a sequence of line segments and then perform for each one an intersection test with all triangles of the mesh. The mathematical representation of a line segment in `three.js`

is the Line3 class. However, there is no method for a line segment/triangle intersection test. You have to write this code on your own. Possible reference:

BTW: If you want to define a curve in `three.js`

, use the `Path`

class. Not `Shape`

which is intended for closed 2D shapes.

Thanks Mugen! You are a life savior!This should do the job!And thanks for the advice!I’ll change the curve construct method ,use path instead of shapes.It’s really a good one,save me from coding a chunk of 2D to 3D codes!