簡體   English   中英

pyqtgraph中的可控貝塞爾曲線控制器

[英]Controlable bezier curve controler in pyqtgraph

我想構造一個具有可控貝塞爾曲線的繪圖項(使用4個點)

c3 = -P1 + 3 * (P2 - P3) + P4
c2 = 3 * (P1 - (2 * P2) + P3)
c1 = 3 * (P2 - P1)
c0 = P1

curve = ((c3 * time_points + c2) * time_points + c1) * time_points + c0

我想要看起來像這樣的東西:

貝塞爾曲線控制點

我的問題是,在pyqtgraph中實現此目的最直接的方法是什么。 我看到兩種方式:

  • 使用PlotDataItem從頭開始。 我是從這里開始的,但是我不知道如何在不將所有子類歸類的情況下使拖動功能起作用
  • 將ROI類細分為子類,但我在理解此類的確切工作方式時遇到了一些麻煩,似乎所有內容都在相對坐標中,我需要找到正確的路徑

感謝您對此的任何見解!

好的,經過一些研究,我發現了使用pyqtgraph實現貝塞爾曲線ROI的示例。 這是指向 github倉庫的鏈接

基本上,它是關於使用自由句柄類型的句柄(不是相對的)對ROI類進行子類化。 並繪制貝塞爾曲線(通過“手工”繪制)。

還有繪制貝塞爾曲線的qt toCubic函數。

使用ROI可以獲取ROI的所有功能,如果我選擇使用PlotDataItem,則必須從頭開始實現。 仍然不是很明顯,對pyqt的深入了解似乎是必要的,以便使一切就緒以使ROI正常工作。

我希望這會幫助別人

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM