本文整理汇总了C++中MatrixIr::maxCoeff方法的典型用法代码示例。如果您正苦于以下问题:C++ MatrixIr::maxCoeff方法的具体用法?C++ MatrixIr::maxCoeff怎么用?C++ MatrixIr::maxCoeff使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MatrixIr
的用法示例。
在下文中一共展示了MatrixIr::maxCoeff方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: tile
WireNetwork::Ptr MixedMeshTiler::tile() {
const size_t num_cells = get_num_cells();
auto transforms = get_tiling_operators();
auto vars_array = extract_attributes(m_mesh);
VectorI pattern_id = m_mesh->get_attribute("pattern_id").cast<int>();
assert(pattern_id.size() == num_cells);
m_tiled_vertices.clear();
m_tiled_edges.clear();
m_tiled_thicknesses.clear();
m_tiled_offsets.clear();
size_t v_count = 0;
auto transform_itr = transforms.begin();
for (size_t i=0; i<num_cells; i++) {
set_active_wire_network(pattern_id[i]);
scale_to_unit_box();
append_vertices(*transform_itr);
append_edges(v_count);
append_thicknesses(vars_array[i]);
append_offsets(vars_array[i], *transform_itr);
v_count += m_unit_wire_network->get_num_vertices();
transform_itr++;
}
MatrixFr vertices = vstack(m_tiled_vertices);
MatrixIr edges = vstack(m_tiled_edges);
MatrixFr thicknesses = vstack(m_tiled_thicknesses);
MatrixFr offsets = vstack(m_tiled_offsets);
assert(edges.minCoeff() >= 0);
assert(edges.maxCoeff() < vertices.rows());
WireNetwork::Ptr tiled_network =
WireNetwork::create_raw(vertices, edges);
tiled_network->add_attribute("thickness",
m_target_type == ParameterCommon::VERTEX);
tiled_network->set_attribute("thickness", thicknesses);
tiled_network->add_attribute("vertex_offset", true);
tiled_network->set_attribute("vertex_offset", offsets);
clean_up(*tiled_network);
return tiled_network;
}