Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - English


xsegs

draw unconnected segments

Syntax

xsegs(xv, yv, [style])
xsegs(xv, yv, zv,[style])
h = xsegs(...)

Arguments

xv, yv, zv

matrices of the same size. If zv is not specified, a zero vector is used.

style

vector or scalar. If style is a positive scalar, it gives the color to use for all segments. If style is a negative scalar, then current color is used. If style is a vector, then style(i) gives the color to use for segment i.

h

This optional output contains a handle to the created Segs entity. Use h to modify its properties. For a list of properties, see segs_properties.

Description

xsegs draws a set of unconnected segments given by xv, yv and zv. If xv, yv and zv are matrices they are considered as vectors by concatenating their columns. The coordinates of the two points defining a segment are given by two consecutive values of xv, yv and zv:

(xv(i),yv(i),zv(i))-->(xv(i+1),yv(i+1),zv(i+1)).

For instance, using matrices of size (2,n), the segments can be defined by:

xv=[xi_1 xi_2 ...; xf_1 xf_2...]
yv=[yi_1 yi_2 ...; yf_1 yf_2...]
zv=[zi_1 zi_2 ...; zf_1 zf_2...]

and the segments are (xi_k,yi_k,zi_k)-->(xf_k,yf_k,zf_k).

Examples

// 2D example
x=2*%pi*(0:9)/10;
xv=[sin(x);9*sin(x)];
yv=[cos(x);9*cos(x)];
plot2d([-10,10],[-10,10],[-1,-1],"022")
xsegs(xv,yv,1:10)
// 2D example
plot2d([-10,10],[-10,10],[-1,-1],"022")
xsegs([9, -9],[9 , -9]) // Draw the line from X(9,9) to Y(-9, -9)
xsegs([5, -2],[4 , -1]) // Draw the line from X(5,4) to Y(-2, -1)
// 3D example
clf();
a=gca();
a.view="3d";
f=gcf();
f.color_map=rainbow(120);
alpha=2*%pi*(0:119)/40;
xv=[sin(alpha)/2;sin(alpha)/3];
yv=[cos(alpha)/2;cos(alpha)/3];
zv=[alpha/8;alpha/8];
e=xsegs(xv,yv,zv,1:120);
// Now adjust the data_bounds
a.data_bounds = [min(xv) min(yv) min(zv); ...
                 max(xv) max(yv) max(zv)];
// We can add an arrow to each segs
e.arrow_size = 0.4;

History

VersionDescription
2025.0.0 Function returns the created handle(s).
Report an issue
<< xrects geometric_shapes handle >>

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:
Thu Oct 24 11:13:10 CEST 2024