本文整理汇总了C++中MeshImpl::tag_set_element_data方法的典型用法代码示例。如果您正苦于以下问题:C++ MeshImpl::tag_set_element_data方法的具体用法?C++ MeshImpl::tag_set_element_data怎么用?C++ MeshImpl::tag_set_element_data使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MeshImpl
的用法示例。
在下文中一共展示了MeshImpl::tag_set_element_data方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: test_classify_by_tag
void DomainClassifierTest::test_classify_by_tag()
{
CPPUNIT_ASSERT( !myDomains.empty() );
MsqPrintError err(std::cerr);
int def = myDomains.size();
TagHandle tag = myMesh.tag_create( "domain", Mesh::INT, 1, &def, err );
CPPUNIT_ASSERT(!err);
std::vector<MeshDomain*> dom_list;
std::vector<int> id_list;
for (unsigned i = 0; i < myDomains.size(); ++i) {
std::vector<int> vtx_data( myDomains[i].vertices.size(), i );
std::vector<int> elm_data( myDomains[i].elements.size(), i );
if (!vtx_data.empty()) {
myMesh.tag_set_vertex_data( tag, vtx_data.size(),
&(myDomains[i].vertices[0]),
&vtx_data[0], err );
CPPUNIT_ASSERT(!err);
}
if (!elm_data.empty()) {
myMesh.tag_set_element_data( tag, elm_data.size(),
&(myDomains[i].elements[0]),
&elm_data[0], err );
CPPUNIT_ASSERT(!err);
}
dom_list.push_back( myDomains[i].domain );
id_list.push_back( i );
}
DomainClassifier domain;
DomainClassifier::classify_by_tag( domain, &myMesh,
"domain",
&dom_list[0],
&id_list[0],
myDomains.size(),
err );
CPPUNIT_ASSERT(!err);
check_domain( domain );
}