如何解决如何处理圆图的Datachange信号?
我正在使用自己的内置库绘制圆图。
我可以使用表格数据 (x1,y1 & r) 绘制圆圈,共享代码
我在表格中使用 datachange 信号,每当输入任何表格项目数据时,它的创建号就没有了。的图形的圆圈。我可以使用其他信号还是可以对代码进行哪些更改?我想要没有的单图。圈数(基于表中的条目数)。
此外,当圆圈被画成线条时,就像我们画的那样,无需移除笔来绘制另一个圆圈,如何克服这个问题?
-
CHPlotGraph2D - 创建图形的类
-
CHPlotCurveData- 这个类保存曲线的数据点
-
CHPlotCurve-Class 将数据绘制为直线曲线
CHPlotCurveData* curvedata1 = new CHPlotCurveData();
qabstractitemmodel* table1 = ui.tableView->model();
for (int irows = 0,maxI = table1->rowCount(); irows {
double x1 = table1->data(table1->index(irows,1)).todouble();
double y1 = table1->data(table1->index(irows,2)).todouble();
double r = table1->data(table1->index(irows,6)).todouble();
for (double angle = 0;angle {
double theta = (angle * 180) / 3.14;
double zx = x1 + r * cos(theta);
double zy = y1 + r * sin(theta);
QPointF pt(zx,zy);
曲线数据1->追加((pt));
}
}
CHPlotCurve* curve1 = (CHPlotCurve*)pGr->insertCurve("circle",
CHPlotGraph2D::Line,false );
curve1->setSamples(curvedata1);
连接(ui.tableView->model(),&qabstractitemmodel::dataChanged,
这, &tablemodel::drawCircle);
解决方法
谢谢..我已经解决了问题。当表格中的任何内容发生变化时,我需要删除包含所有圆圈的现有曲线并构建/添加新曲线,或替换数据
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。