// ============================================================================ Teuchos::RCP<Recti::Domain::Abstract> Recti::Domain::Factory:: buildPolygon() const { const Teuchos::ParameterList & pointsList = pList_.sublist("Vertices"); Teuchos::Array<Point> vertices; Teuchos::ParameterList::ConstIterator k; for ( k=pointsList.begin(); k!=pointsList.end(); ++k ) { Teuchos::ParameterEntry e = pointsList.entry(k); TEUCHOS_ASSERT( e.isList() ); std::string label = pointsList.name(k); const Teuchos::ParameterList & coordinates = pointsList.sublist(label); Point X = Teuchos::tuple( coordinates.get<double>("x"), coordinates.get<double>("y"), 0.0 ); vertices.push_back( X ); } return Teuchos::rcp( new Polygon( vertices ) ); }
std::string filterValueToString(const Teuchos::ParameterEntry& entry ) { return ( entry.isList() ? std::string("...") : toString(entry.getAny()) ); }