Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在gnuplot下可视化曲面的交点_Gnuplot_Intersection - Fatal编程技术网

如何在gnuplot下可视化曲面的交点

如何在gnuplot下可视化曲面的交点,gnuplot,intersection,Gnuplot,Intersection,是否可以使用gnuplot可视化多个曲面的交点: set parametric set hidden3d set samples 25 set isosamples 25 splot u,v,0 replot u,0,v 在本例中,我试图绘制的两个曲面是两个平面。如何可视化这两个平面的交点?从数值上讲,这可以通过设置样本和定义相应的限制间隔来实现。例如,假设要以x=[-1:1]、y=[-1:1]和z=[-1:1]为间隔绘制平面,并在每个方向上使用101个样本: set parametri

是否可以使用gnuplot可视化多个曲面的交点:

set parametric
set hidden3d
set samples 25
set isosamples 25

splot u,v,0 

replot u,0,v

在本例中,我试图绘制的两个曲面是两个平面。如何可视化这两个平面的交点?

从数值上讲,这可以通过设置样本和定义相应的限制间隔来实现。例如,假设要以x=[-1:1]、y=[-1:1]和z=[-1:1]为间隔绘制平面,并在每个方向上使用101个样本:

set parametric ; set hidden3d
set isosamples 101
set xrange [-1:1]
set yrange [-1:1]
set zrange [-1:1]

splot u,v,0, u,0,v
set parametric ; set hidden3d
set isosamples 101
set xrange [-1:1]
set yrange [-1:1]
set zrange [-1:1]

splot (abs(u-u) < 0.01 ? u : 1/0), \
      (abs(v-0.) < 0.01 ? v : 1/0), \
      (abs(v-0.) < 0.01 ? 0 : 1/0)

现在,101个样本中的每一个对应于宽度(1-(-1))/(101-1)=0.02的区间。如果我将平面之间的距离限制在该绘制点阈值的一半以下,即abs(u-u)<0.01、abs(v-0)<0.01和abs(0-v)<0.01,我将为每个方向上的每个间隔恰好采样一个点:

set parametric ; set hidden3d
set isosamples 101
set xrange [-1:1]
set yrange [-1:1]
set zrange [-1:1]

splot u,v,0, u,0,v
set parametric ; set hidden3d
set isosamples 101
set xrange [-1:1]
set yrange [-1:1]
set zrange [-1:1]

splot (abs(u-u) < 0.01 ? u : 1/0), \
      (abs(v-0.) < 0.01 ? v : 1/0), \
      (abs(v-0.) < 0.01 ? 0 : 1/0)
设置参数化;设置hidden3d
设置isosamples 101
设置xrange[-1:1]
设置Y范围[-1:1]
设置zrange[-1:1]
splot(abs(u-u)<0.01?u:1/0)\
(abs(v-0.)小于0.01?v:1/0)\
(abs(v-0.)<0.01?0:1/0)
哪里
?something:1/0
表示如果满足
之前的条件,则绘制
something
否则忽略该点,则我有交点: