Change language to:
Français - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function

Scilab Help >> Graphics > 3d_plot > geom3d

# geom3d

projection from 3D on 2D after a 3D plot

### Syntax

`[x,y]=geom3d(x1,y1,z1)`

### Arguments

x1,y1,z1

real vectors of the same size (points in 3D).

x,y

real vectors of the same size as `x1`, `y1` and `z1`.

### Description

After having used a 3D plot function such as `plot3d`, `plot3d1` or `param3d`, `geom3d` gives the mapping between a point in 3D space `(x1(i),y1(i),z1(i))` and the corresponding point `(x(i),y(i))` in the projected 2D plan. Then all the 2D graphics primitives working on `(x,y)` can be used for superposition on the 3D plot.

### Examples

```deff("[z]=surface(x,y)","z=sin(x)*cos(y)")
t=%pi*(-10:10)/10;
// 3D plot of the surface
fplot3d(t,t,surface,35,45,"X@Y@Z")
// now (t,t,sin(t).*cos(t)) is a curve on the surface
// which can be drawn using geom3d and xpoly
[x,y]=geom3d(%pi/2,0,surface(%pi/2,0))```
```my_plot_desc          = "plot3d and use of geom3d";

r = (%pi):-0.01:0;
x = r.*cos(10*r);
y = r.*sin(10*r);

deff("[z]=Surf(x,y)","z=sin(x)*cos(y)");
t=%pi*(-10:10)/10;

// Plot the surface'
fplot3d(t,t,Surf,35,45,"X@Y@Z",[19,2,3]);

// Add 2d graphics on 3d graphic'
z=(sin(x).*cos(y));
[x1,y1] = geom3d(x,y,z);
xpoly(x1,y1,"lines");

// Adjust some plotting parameters'
BackgroundColorId           = color(70,174,255);
current_axe                 = gca();
plot_3d                     = current_axe.children(2);
plot_3d.hiddencolor         = 32;
polyline                    = current_axe.children(1)';;
polyline.foreground         = 8;
current_axe.rotation_angles = [70,47];
current_axe.background      = BackgroundColorId;

// A second 2d graphics'
[x1,y1] = geom3d([0,0],[0,0],[5,0]);
xsegs(x1,y1);
xstring(x1(1),y1(1),"The point (0,0,0)");

xtitle(my_plot_desc," "," "," ");```
 Report an issue << genfac3d 3d_plot hist3d >>

 Copyright (c) 2022-2024 (Dassault Systèmes)Copyright (c) 2017-2022 (ESI Group)Copyright (c) 2011-2017 (Scilab Enterprises)Copyright (c) 1989-2012 (INRIA)Copyright (c) 1989-2007 (ENPC)with contributors Last updated:Tue Feb 25 08:49:20 CET 2020