echart中拆线点的偏移_Qt中圆弧和扇形的绘制
生活随笔
收集整理的這篇文章主要介紹了
echart中拆线点的偏移_Qt中圆弧和扇形的绘制
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在超聲軟件的開發中,超聲成像模塊需要繪制圓弧,例如繪制一個扇形的取樣框,左右是一條直線,上下是一個圓弧,像這樣。
Qt中使用QPainter::drawArc繪制圓弧,使用QPainter::drawPie繪制扇形。
圓弧和扇形的繪制接口輸入一致,在調試過程中使用扇形會更直觀。
Qt繪制扇形的接口:
void QPainter::drawPie(const QRectF &rectangle, int startAngle, int spanAngle); void QPainter::drawPie(int x, int y, int width, int height, int startAngle, int spanAngle); void QPainter::drawPie(const QRect &rectangle, int startAngle, int spanAngle);扇形的接口入參可以概括為,設置一個矩形區域,開始角度,和偏移角度。
矩形區域
Rectangle矩形區域解釋為該扇形或圓弧,對應圓的外接矩形,實際指明了圓心點和半徑,圓心點即矩形的中心點。
以一個400*400的畫布為例,繪制一個扇形,黑色畫布左上角為(0, 0)點,圓心坐標為(200,0)外接矩形為(-30, -230, 460,460)。
扇形的角度
開始角度和偏移角度決定了扇形繪制的弧長,Qt中一個完整的圓分為5760 等分(360*16),在指定角度時,角度數需要乘16,同時需要注意,弧度和角度的轉換。
//radian弧度, 將弧度轉換為符合Qt的形式 float CoordiUtil::ConvertToQtAngle(float radian) {//先轉成度float angle = ConvertToAngle(radian);//Qt以3點鐘為0度,正值逆時針方向,而負值表示順時針方向float qtAngle = angle - 90;return (qtAngle) * 16;//一個完整的圓等于5760(16 * 360) }// 將弧度轉換為角度,radian弧度 float CoordiUtil::ConvertToAngle(float radian) {//度=弧度×180°/πconst float PI = 3.1415926f;float angle = radian * 180 / PI;return angle; }//將角度轉換為弧度,angle角度 float CoordiUtil::ConvertToRadian(float angle) {//弧度=度×π/180const float PI = 3.1415926f;float radian = angle / 180 * PI;return radian; }在指定開始角度和偏移角度時,Qt以3點鐘為0度,正值表示逆時針方向,而負值表示順時針方向。
如果覺得文章有用請關注我,微信公眾號一根筋都不缺總結
以上是生活随笔為你收集整理的echart中拆线点的偏移_Qt中圆弧和扇形的绘制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android home键后计时拉起ap
- 下一篇: access exex控制pc_ownC