Protect from features without geometry
Make filter optional
Make renderIntent private and add a getter