# How can I add a curve to a geometry using threejs?

I am creating a 3D plane using the pseudo code below.

``````  var point_records = [
new THREE.Vector3(0,  0, 0),
new THREE.Vector3(100,0, 0),
new THREE.Vector3(100,50, 0),
new THREE.Vector3(0,50, 0),
]

let shape = new three.Shape(point_records);

let geometry = new three.ExtrudeBufferGeometry(shape, {
depth: 1,
bevelEnabled: false,
steps: 1,
bevelThickness: 0,
bevelSize: 10,
bevelSegments: 0,
material: 0,
extrudeMaterial: 1
} );

var mesh = new three.Mesh(geometry, materials);
``````

I am limited to use a list of coordinates as a starting point for the shape. (there can be 5 or move points)
This creates a 3d flat plane. I want to add a curve to this plane.

My initial idea is that I need to subdivide the plane into a lot of smaller triangles so I can manipulate their coordinates. But I am not sure how to proceed.
I am trying to add a curve to the geometry like this.

you can start by making a picture of what the end result should look like (for example me - I have no idea)

Thanks, I added a photo I found from the internet, I hope this makes it make sense a bit more.

Why not bend `PlaneGeometry`?
Or use `CylinderGeometry`?

The coordinates are dynamic and it can be 3 points, or 5 points,

the simplest way to do this would be like this

My initial idea is that I need to subdivide the plane into a lot of smaller triangles

yes, do that