To obtain a triangulation of a planar domain, we assume that the boundary points are given. We then develop a method for generating inner points. It is a combination of an optimization algorithm and a method that directly places points, e.g. we successively generate the points and at the same time optimize the positions of the already inserted points. The inserting routine is relatively simple but the optimization algorithm is more complicated. We use a steepest descent method with Powell's step size strategy. The Delaunay triangulation built from the generated points consists of roughly equi-angular triangles, so nice initial triangulations for adaptive methods can be generated. A major advantage of our method is its independence from the complexity of the domain being triangulated. The cost of the generation procedure depends only on the number of generated points.