Subdivide curved triangle into smaller triangles

Question #1: I was given a series of curved triangular surfaces that I need to break down into smaller planer triangular surfaces, that are near-equilateral, as I modeled on the “Desired Surfaces” layer in attached Rhino file. Please see Grasshopper file for my attempt. I currently have polylines that I am thinking I could extract intersection points and use those to make my planar triangular surfaces. I’m stuck because the polylines I drew don’t have one clean intersection, and I’m not sure how to make a 3 pointed surface. Is there a way to modify the script?
Curved-Triangular-Subdivision_Test.3dm (2.4 MB) (17.8 KB)

Question #2: When I want to change the number of divisions (it’s currently 5, but I may want to do 3 or 6 in some places) then I have to do a lot of manual work with “List Item” later in the script. is there a more elegant solution?

Question #3: Can this work across multiple surfaces? When I plug in more than one surface, the script starts crossing the polyline across both surfaces.

Any help or advice is greatly appreciated. I love learning so any tips help. Thank you :slightly_smiling_face:

In case all your surfaces are triangles, you could go the mesh way and use a Loop subdivision. Weaverbird has various components to do this.