# 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

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 46 47 48 49``` ``````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 -------- Notes ----- Examples -------- TO-DO """ # Given an ordered polyline, this returns the edge indeces in a similar way # to how the face indeces of a triangle mesh are given. # Inputs: # n integer number of vertices # Optional: # closed boolean with whether to close the path or not # Outputs: # EC #n-1 (#n if closed) by 2 matrix of edge indeces # 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') ``````