rust Egui显示一个可编辑的3x3矩阵?

x33g5p2x  于 2023-01-30  发布在  其他
关注(0)|答案(1)|浏览(145)

我正在尝试使用egui显示一个3x3矩阵的9个单元格。我想要一个与矩阵中的条目匹配的3x3网格。到目前为止,我有以下内容:

这里的两个数字是矩阵中的(0,0)和(0,1)项,但我希望它们并排。
我用这个片段得到了他们:

let (_pos, mut mat) = dual_to_components(&mesh.verts.get_mut()[0].data);
                if ui.add(ne_gui::DragValue::new(&mut mat[(0,0)]).speed(0.01)).changed()
                {
                    update_covariance(&mut mesh.verts.get_mut()[0].data.position, &mat);
                }

                if ui.add(ne_gui::DragValue::new(&mut mat[(0,1)]).speed(0.01)).changed()
                {
                    mat[(1,0)] = mat[(0,1)];
                    update_covariance(&mut mesh.verts.get_mut()[0].data.position, &mat);
                }
            });

我怎样才能得到一个正确格式化的3x3?

yb3bgrhw

yb3bgrhw1#

使用egui::Ui::horizontal看起来是一个合理的选择吗?

for row in 0..3 {
    ui.horizontal(|ui| {
        for col in 0..3 {
            ui.add(egui::DragValue::new(&mut mat[3 * row + col]).speed(0.01));
        }
    });
}

这个代码片段给出了如下内容:

相关问题