水木社区手机版
首页
|版面-KDE与Qt编程技术(KDE_Qt)|
新版wap站已上线
返回
下页
|
尾页
|
1/2
|
转到
主题:请教Qt如何画轨道线
楼主
|
fishingriver
|
2021-08-28 07:47:48
|
只看此ID
请教各位大侠,我们项目里有一个画地图的功能,连接各个路口的坐标点画成线就可以了。其中有的线路是轨道线路,怎么画出轨道的样式呢?
我尝试了设置画刷贴图,但没有成功,画刷只能贴一个封闭区域
QPen里或QGraphicsLineItem里似乎也设置不了
请各位大侠指点一下,不胜感激!
--
FROM 221.222.20.*
1楼
|
dormouseBHU
|
2021-08-29 11:17:02
|
只看此ID
轨道线不就是点画线吗?你要什么样的轨道线?
【 在 fishingriver 的大作中提到: 】
: 请教各位大侠,我们项目里有一个画地图的功能,连接各个路口的坐标点画成线就可以了。其中有的线路是轨道线路,怎么画出轨道的样式呢?
: 我尝试了设置画刷贴图,但没有成功,画刷只能贴一个封闭区域
: QPen里或QGraphicsLineItem里似乎也设置不了
: ...................
--
FROM 120.244.156.*
2楼
|
dormouseBHU
|
2021-08-29 13:00:49
|
只看此ID
这种效果?
【 在 fishingriver 的大作中提到: 】
: 请教各位大侠,我们项目里有一个画地图的功能,连接各个路口的坐标点画成线就可以了。其中有的线路是轨道线路,怎么画出轨道的样式呢?
: 我尝试了设置画刷贴图,但没有成功,画刷只能贴一个封闭区域
: QPen里或QGraphicsLineItem里似乎也设置不了
: ...................
--
修改:dormouseBHU FROM 120.244.156.*
FROM 120.244.156.*
3楼
|
fishingriver
|
2021-08-29 16:33:55
|
只看此ID
对的,谢谢回复!
我昨天自己摸索了一下,已经搞定了,方法是用画笔画两遍,第一遍都是黑的,粗一点,第二次是dashline,细一点,代码如下所示。
我还尝试了用QGraphicsLineItem,提取stroke的方式,但没成功
画两次的方式虽然也能实现出效果,但没有只画一次,设置线型方便,不知道你还有更好的办法没
QPainter painter(this);
QPen pen;
QPainterPath path;
path.moveTo(100, 100);
path.lineTo(100, 300);
path.lineTo(300, 400);
pen.setWidth(10);
pen.setColor(QColor(102, 139, 139));
painter.setPen(pen);
painter.drawPath(path);
pen.setWidth(6);
pen.setColor(Qt::white);
QVector<qreal> dashes;
qreal space = 8;
dashes << 2 << 4;
//dashes << 2 << space << 2;
pen.setDashPattern(dashes);
painter.setPen(pen);
painter.drawPath(path);
【 在 dormouseBHU 的大作中提到: 】
: 这种效果?
: [upload=1][/upload]
--
FROM 124.64.17.*
4楼
|
dormouseBHU
|
2021-08-29 17:37:51
|
只看此ID
这已经是很简单的方法了…
封装成个函数,用时就是一行代码。
【 在 fishingriver 的大作中提到: 】
: 对的,谢谢回复!
: 我昨天自己摸索了一下,已经搞定了,方法是用画笔画两遍,第一遍都是黑的,粗一点,第二次是dashline,细一点,代码如下所示。
: 我还尝试了用QGraphicsLineItem,提取stroke的方式,但没成功
: ...................
--
FROM 223.104.3.*
5楼
|
fishingriver
|
2021-08-29 19:56:57
|
只看此ID
请问你知道高德地图上这种带箭头的绿色线是怎么画出来的吗?
【 在 dormouseBHU 的大作中提到: 】
: 这已经是很简单的方法了…
: 封装成个函数,用时就是一行代码。
--
修改:fishingriver FROM 124.64.17.*
FROM 124.64.17.*
6楼
|
hgoldfish
|
2021-08-29 20:53:26
|
只看此ID
用 QBrush 会不会更方便一点?
【 在 fishingriver (fishingriver) 的大作中提到: 】
: 对的,谢谢回复!
: 我昨天自己摸索了一下,已经搞定了,方法是用画笔画两遍,第一遍都是黑的,粗一点,第二次是dashline,细一点,代码如下所示。
: 我还尝试了用QGraphicsLineItem,提取stroke的方式,但没成功
: ...................
--
FROM 112.47.122.*
7楼
|
fishingriver
|
2021-08-30 13:52:40
|
只看此ID
画刷要求区域是封闭的,用画刷相当于两个边线,还有两个端点的边线得是知道的,相当麻烦
【 在 hgoldfish 的大作中提到: 】
: 用 QBrush 会不会更方便一点?
:
--
FROM 124.64.16.*
8楼
|
Franchise
|
2021-08-30 16:06:47
|
只看此ID
百度地图可以通过js api画出类似的线,比用画笔方便的多
高德应该有类似的api
【 在 fishingriver 的大作中提到: 】
: 请问你知道高德地图上这种带箭头的绿色线是怎么画出来的吗?
:
:
--
FROM 221.220.248.*
9楼
|
dormouseBHU
|
2021-08-30 16:15:50
|
只看此ID
这个就是一笔一笔画出来的,没有简便办法。。
【 在 fishingriver 的大作中提到: 】
: 请问你知道高德地图上这种带箭头的绿色线是怎么画出来的吗?
:
:
--
FROM 115.171.60.*
下页
|
尾页
|
1/2
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版