For INCREASE :
create additional points at mid of each edge...
For DECREASE :
create points at center of gravity of each triangle - ommit already existing original triangulation points...
- Retriangulate -
But real pain in the neck is embarkment and cutting areas (if you need terrain mod...)...
I already did exactly as you say,
but it's not enough for me
because I would like to obtain a more uniform network of triangles.
And now I'm working out a solution where,
I first calculate the mean area of the triangles
and increase the number of vertices
(adding the midpoints of each side and the center of gravity)
only in triangles that have an area above the average ...
...
...and I probably have to do the same thing
for vertex reduction,
eliminating (but replacing them with the center of gravity)
only the vertices of the triangles they have
a smaller than average area ...
... and this to obtain a more uniform result ...
in addition, with a pseudo-random number generator,
and taking into account the coordinates of the closest vertices,
all new points are slightly random ...
this is to give a more realistic look...
"the embarkment and cutting areas" ...
I don't want to and I could never, and then with lisp, rewrite Civil 3D !
I just want to be as self-sufficient as possible
to be able to draw terrain models and roads and something else ...
and that's already a lot (maybe too much) for me ...
(to then generate solids to export to Lumion or Twinmotion)