Asymptote:如何繪製具有四個以上頂點且沒有「接縫」的曲面?

Asymptote:如何繪製具有四個以上頂點且沒有「接縫」的曲面?

在Asymptote 3D 中,我需要繪製具有超過4 個頂點的曲面,但是當我這樣做時,它要么根本不起作用(我無法在一個簡單的示例中重現這一點,但可以提供一個更複雜的情況,如果這很有幫助)或出現接縫,如下例所示:

settings.prc = false;
defaultpen(fontsize(10pt));
import three;
import graph3;
import patterns;
size(11cm,0);

currentprojection=perspective((10,-20,10));
currentlight = (3,-2,3);

render render = render(compression=Low, merge = true);

draw(surface((0,0,0) -- (1,0,0) -- (1,1,0) -- (0.5,1.5,0) -- (0,1,0) -- cycle), lightblue+opacity(0.5), render);

運行這個命令

asy -noprc -render 0 -f pdf example.asy

給出以下圖像:

「房子」由程式碼產生。

有沒有辦法消除深藍色的「接縫」?

答案1

似乎“接縫行為”取決於 pdf 檢視器和-render選項。不透明度和選項會出現「接縫」問題-render=0:根據 pdf 檢視器,兩個補丁的公共邊框的疊加會產生這種行為。

通過-noprc-render=0,我們可以與 Okular、acroread、gv 進行「接縫」(圖像已向量化)。與 evince、mupdf、zathura 沒有「接縫」。我對 evince 和 zathura 有透明度問題。 mupdf 沒問題。

(因此-noprc使用 OpenGL 渲染並產生點陣圖影像)根本沒有「接縫」。

準確的說,所有版本都是最新的Debian Sid。

正如文檔中所解釋的,-render=0非常有限。

相關內容