thanks for the reply.
I know dynamo can do it and i am going through the source to figure out how. there is a wall by face component that accepts a surface, but the surface is just a dynamo surface yet is able to generate a proper reference to pass the facewall method. perhaps there is a better way to make a wall by face other than the facewall method?