2013-01-25 28 views
1

我是這種類型的編程方法的新手,因爲我真的不在乎核心圖形生成。我用python設計,編寫,運行和研究參數化氣候模型。但是,最後,我遇到了一個可視化問題。在開羅使用網格漸變爲路徑着色

我在開羅圖書館尋找東西,它允許我將線性漸變映射到任意曲線(不一定是圓周)上,使得我的路徑中顏色(或陰影)或多或少平滑變化。然後,我一直在尋找一些模式,我終於發現,在開羅可能是網格漸變是解決方案。

但是,我無法使用cairo.pattern_create_mesh()從我的python腳本創建新的網格漸變!

因此,我的問題是:我如何在開羅使用網格漸變?有沒有其他簡單的方法可以做到我想要的開羅(我不知道,就像通過參數化從線段到曲線的簡單映射,我知道我問得太多了)?

回答

0

網格模式被添加到最新版本的cairo 1.12中。因此,大多數語言綁定可能不支持它們。我不知道python和cairo的組合,因此不知道任何解決方法。

我不知道任何簡單的方法來模擬你需要與其他模式,對不起。 (雖然我不太確定你想如何通過網格漸變來繪製你的映射......)

+0

對於我所讀的,基本上Inkscape維基和Illustrator的幫助,對於圓周,人們可以使用錐形漸變獲得什麼我想要。我已經看到開羅在其最新版本中可以做到這一點。我想知道對任意平滑曲線有一些推廣。正如你所說的,也許我必須等待python綁定被更新爲使用網格漸變,其中圓錐形的漸變是我所瞭解的網格漸變的特例。 – elessartelkontar

+0

我在想的便宜技巧是,目前最好的方法是在大量單獨的分段中劃分曲線,並且爲每個分段分配一個線性漸變,第一個停止點是上一個分段漸變的最後一個停止點。顯然,曲線段需要很小,因爲您將在本地近似通過曲線切線的梯度方向。那麼對於一些曲線曲率半徑非常小的曲線來說,這可能是一個問題。 – elessartelkontar

+0

問題在於:線性漸變只有一條線。因此我不認爲你可以用這種方法來逼近你的圓錐漸變。你需要一些魔力才能將它直接繪製到圖像表面...... –