2012-08-22 5 views
4

옥타브 3.4.0을 실행 중이고 투명한 표면 플롯을 만들고 싶습니다. 그러나, facealpha, edgealpha, alphadataalphadatamapping으로 주위를 뒤범벅 할 때 그렇게 할 수 없었습니다. 불투명 표면을 만드는옥타브에서 표면 플롯의 투명도 설정하기

예 번호 : 아래 그림이 소정의

p = peaks(40); 
f1 = figure(10);clf 
s1 = surface(p) 
view(3) 
xlabel('x');ylabel('y'); 
hold on;plot3([0 40],[40 0],[-10 10],'k') 
set(s1,'edgecolor','none') 
set(s1,'facealpha',0.2) 

결과. 보시다시피 시작 부분에 그려진 진단 선은 표면이 반투명하다고해도 표면 뒤에 숨어 있습니다. 이것은 Octave 버전의 버그입니까, 아니면 놓친 것이 있습니까?

enter image description here

답변

3

이는 그래픽 툴킷으로의 gnuplot 사용하여 옥타브 3.6.2에 나를 위해 작동합니다. 따라서 옥타브 설치를 업그레이드하는 것이 좋습니다. 하지만주의해야 할

두 가지 :

  1. 표면 뒤에가는 대각선의 일부가 여전히 이상한 보이는, 그래서 가벼운에서 그려지지 않습니다

    ;
  2. 새로운 실험용 fltk 그래픽 툴킷을 사용하면 전혀 작동하지 않습니다.
+0

좋아요, 감사를 생성합니다. 나는 그것을 시도 할 것이다. – Vidar

3

나는 VIDAR에 동의 : 2.850의 xterm 305-1의 gnuplot 4.6.3-3 : 자신의 코드가 최신 옥타브 3.8.1 (Cygwin에서 1.7.30 (0.272/5/3) setup_x86_64.exe 작동하지 않습니다). facealpha는 그냥 밝은 색 서핑을합니다. 그러나 한 가지 해결 방법은 옥타브의 mesh 명령이 얼굴을 버리는 기능을 가지고 있다는 것입니다 : hidden (manual).

그래서

p = peaks(40); 
f1 = figure(10);clf 
s1 = mesh(p) 
view(3) 
xlabel('x');ylabel('y'); 
hold on;plot3([0 40],[40 0],[-10 10],'k') 
hidden('off') 

code output

+0

버그 신고를 제출해 주시겠습니까? – juliohm

+1

완료 : http://savannah.gnu.org/bugs/index.php?42543 2009 년 의견이 수정 되었음 : http://octave.1599824.n4.nabble.com/transparent-surfaces-td1653320 .html 및 2011 년 의견에는 지원되지 않는다고 나와 있습니다. http://octave.1599824.n4.nabble.com/transparent-colors-td3696002.html 내 경험에 따르면 여전히 작동하지 않는다고합니다 ... – alexey

+0

감사합니다. @alexey. – juliohm