Mesh Generation and Multi-block Algorithm for Complex Geometries