c++ - 从表格中的坐标用 QVector 填充 QScatterDataArray

标签 c++ qt

我想填写一个 QScatterDataArray与一些QVector3D ,它们自己从数组中获取数据。我知道如何手动完成,但我不知道如何自动完成。我想您将不得不使用 for 循环,但我不知道如何使用。我还想说,我从不使用 QT,所以答案对您来说似乎显而易见。

这里是我想修改的代码:

// "graph" is therefore my graph

QScatter3DSeries *series = new QScatter3DSeries(graph);
QScatterDataArray data;

data << QVector3D(50, 10, 0) << QVector3D(5, 8, 9) << QVector3D(0, 10, 15)
<< QVector3D(30, 50, 02) << QVector3D(15, 83, 7) << QVector3D(04, 20, 45)
<< QVector3D(40, 014, 10) << QVector3D(35, 28, 21) << QVector3D(04, 0, 15)
<< QVector3D(70, 10, 27) << QVector3D(15, 28, 47) << QVector3D(062, 70, 45)
<< QVector3D(50, 10, 0) << QVector3D(5, 8, 17) << QVector3D(031, 20, 35);

series->dataProxy()->addItems(data);
graph->addSeries(series);

谢谢:)

最佳答案

QScatterDataArray 是一个 typedef对于 QScatterDataItems 的 vector 。

QScatterDataItem 有一个 constructor采用 QVector3D

因此迭代坐标表,为每个坐标构造一个QVector3D,并将push_back 放到data 上。

这样做的一种方式,而不是唯一的方式是:

QScatterDataArray data;

for ( /* each xyz coordinate in some table */ )
{
    data.push_back(QScatterDataItem(QVector3d(x, y, z)));
}

关于c++ - 从表格中的坐标用 QVector 填充 QScatterDataArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50487608/

相关文章:

c++ - 类模板成员函数特化

c++ - 如何使用样式表为 Qt Widget 而不是其子项设置样式?

c++ - 有没有办法将对象的字段隐式传递给 C++ 中的函数

c++ - 进程终止 C++

c++ - (CGAL) 获取AABB树生成的bounding cube做碰撞检测

c++ - QGraphicsItem setTransformOriginPoint 似乎被忽略了

c++ - 无法在 QT ubuntu 上使用 odbc 连接到 sql server

qt - 用Qt编译项目后将文件复制到构建目录

qt - wkhtmltopdf OpenLayers V3 失败

c++ - 按值返回的函数的值类别是否总是 xvalue?