# edge_indices

## `edge_indices(n, closed=False)`

Returns matrix of edge indices

Given an ordered polyline, this returns the edge indeces in a similar way to how the face indeces of a triangle mesh are given.

Parameters:

Name Type Description Default
`n` `int`

Number of vertices in polyline

required
`closed` `boolean, optional (default False)`

Matrix of triangle indices

`False`

Returns:

Name Type Description
`EC` `numpy int array`

Matrix of edge indeces

edges.

#### Notes

Examples:

``````# Ordered in V
from gpytoolbox import edge_indices
EC = edge_indices(V.shape[0],closed=False)
# Now we can use EC as the face indices for input to other functions
``````
Source code in `src/gpytoolbox/edge_indices.py`
 ``` 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45``` ``````def edge_indices(n,closed=False): """Returns matrix of edge indices Given an ordered polyline, this returns the edge indeces in a similar way to how the face indeces of a triangle mesh are given. Parameters ---------- n : int Number of vertices in polyline closed : boolean, optional (default False) Matrix of triangle indices Returns ------- EC : numpy int array Matrix of edge indeces See Also -------- edges. Notes ----- Examples -------- ```python # Ordered in V from gpytoolbox import edge_indices EC = edge_indices(V.shape[0],closed=False) # Now we can use EC as the face indices for input to other functions ``` """ # Note: the "order='F'" in all the reshapes is to mimic scanning order from # Matlab, otherwise it does the reverse order (rows first) if closed: return np.reshape(np.concatenate((np.linspace(0,n-1,n,dtype=int), np.linspace(1,n-1,n-1,dtype=int),np.array([0]))),(-1, 2),order='F') else: return np.reshape(np.concatenate((np.linspace(0,n-2,n-1,dtype=int), np.linspace(1,n-1,n-1,dtype=int))),(-1, 2),order='F') ``````