首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用表中坐标中的QScatterDataArray填充QVector

用表中坐标中的QScatterDataArray填充QVector
EN

Stack Overflow用户
提问于 2018-05-23 11:46:54
回答 1查看 381关注 0票数 0

我想用一些QVector3D来填充一个QVector3D,它本身就是从数组中获取数据的。我知道如何手动操作,但我不知道如何自动完成。我想你得用一个for循环,不过,我不知道怎么用。我还想说,我从不使用QT,所以答案对您来说可能是显而易见的。

下面是我要修改的代码:

代码语言:javascript
复制
// "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);

谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-23 12:04:06

QScatterDataArrayQScatterDataItems向量的胡枝子f

QScatterDataItem有一个构造函数在取一个QVector3D

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

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

代码语言:javascript
复制
QScatterDataArray data;

for ( /* each xyz coordinate in some table */ )
{
    data.push_back(QScatterDataItem(QVector3d(x, y, z)));
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50487608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档