Plotar um toróide com seção transversal retangular em 3D

2

Alguém sabe como plotar com gnuplot em 3D a superfície de um disco no plano XY com uma certa espessura, e ter um furo circular no centro e superfícies planas superior e inferior em z fixo ( um toro achatado nas superfícies superior e inferior).

    
por Fred 10.03.2016 / 23:27

1 resposta

0

Como sua forma tem tangentes verticais, ela não pode ser gravada como z=f(x,y) , portanto, splot <function> não pode ser usado. No entanto, você pode plotar dados de um arquivo, ver, e. uma solução para plotar cubos: link

Para usar o gnuplot para gerar os dados em si, você pode usar o pseudo-arquivo "++" e os modificadores, aqui está como plotar um cilindro:

splot [-1:1][-1:1][0:1] '++' u (cos(pi*$1)):(sin(pi*$1)):($2) w lines

Para traçar a superfície superior, você pode usar o mesmo truque:

replot '++' u ($2*cos(pi*$1)):($2*sin(pi*$1)):1 w lines

Para a sua forma precisa, pequenas alterações são necessárias. Eu aconselho que você defina funções para os cálculos de coordenadas xey, eles podem usar GPVAL_X_MIN e co. para normalizar as variáveis $1 e $2 na faixa relevante independentemente dos intervalos de plotagem.

    
por 15.03.2016 / 14:00