8

我有由ContourPlot3D產生的3D表面的Mesh線呈現的問題在數學7.0.1重疊網格線在ContourPlot3D

p=ContourPlot3D[x^4+y^4+z^4-(x^2+y^2+z^2)^2+3(x^2+y^2+z^2)==3, 
     {x, -2,2}, {y, -2, 2}, {z,-2,2}, 
    BoundaryStyle->Directive[Black,Thickness[.003]], 
    ContourStyle->Directive[Orange,Opacity[0.5],Specularity[White,300]], 
    PlotPoints->90,Ticks->None, 
    MeshStyle->Directive[GrayLevel[.7],Thickness[.001]], 
    Lighting->{{"Directional",RGBColor[1,1,1], 
          {[email protected]{1,0,1},[email protected]{0,0,0}}}}]; 
p=Graphics[Inset[p,{0,0},Center,{1,1}], 
         PlotRange->{{-.5,.5},{-.5,.5}},Frame->True] 

screenshot1

仔細看它們:

Show[p, PlotRange -> {{-.16, -.05}, {0, .1}}] 

screenshot2

您會發現灰色線條Mesh在許多地方都與表面形成三角形重疊,甚至看起來虛線。有沒有辦法避免這種情況?

+0

感謝您的提問和回答這一點。 +2 –

回答

5

約翰·富爾茨has answered我在官方新聞組的問題。爲數學 7個用戶(以及可能是誰具有不爲DepthPeeling渲染方法支持的圖形卡的版本8的用戶)的解決方案是使用的MeshStyle選項一個未記錄的形式爲:

MeshStyle -> {{GrayLevel[.7], Tube[0.01]}} 

對於具有Mesh線顯示爲扁平物體可以使用Glow

MeshStyle -> {{Glow[GrayLevel[.7]], Black, Tube[0.005]}} 

現在齧合是很好的呈現:

p1 = ContourPlot3D[ 
    x^4 + y^4 + z^4 - (x^2 + y^2 + z^2)^2 + 3 (x^2 + y^2 + z^2) == 
    3, {x, -2, 2}, {y, -2, 2}, {z, -2, 2}, 
    BoundaryStyle -> Directive[Black, Thickness[.003]], 
    ContourStyle -> 
    Directive[Orange, Opacity[0.5], Specularity[White, 300]], 
    Ticks -> None, PlotPoints -> 40, 
    MeshStyle -> {{Glow[GrayLevel[.7]], Black, Tube[0.005]}}, 
    Lighting -> {{"Directional", 
     RGBColor[1, 1, 1], {[email protected]{1, 0, 1}, 
     [email protected]{0, 0, 0}}}}]; 
p = Graphics[Inset[p1, {0, 0}, Center, {1, 1}], 
    PlotRange -> {{-.5, .5}, {-.5, .5}}, Frame -> True, 
    GridLines -> Automatic] 

screenshot

Show[p, PlotRange -> {{-.16, -.05}, {0, .1}}] 

screenshot

4

對於它的價值,我沒有看到在Mac OS 10.7.1中M8.0.1這個問題:

enter image description here

+0

很高興聽到。謝謝你的截圖。 –

+0

我的榮幸。事實上,如果您需要M8的一個版本,我很樂意將它發送給您。 – Cassini

+0

這個圖只是一個例子。我想我會在合理的時間內獲得M8出口我的身材。但是,謝謝你的建議。 –