| #### D.13.4.4 splitPolygon Procedure from library `polymake.lib` (see polymake_lib). Usage: splitPolygon (markings); markings list Assume: markings is a list of integer vectors representing lattice points in the plane which we consider as the marked points of the convex lattice polytope spanned by them Purpose: split the marked points in the vertices, the points on the facets which are not vertices, and the interior points Return: list, L consisting of three lists L[1] : represents the vertices the polygon ordered clockwise L[1][i][1] = intvec, the coordinates of the ith vertex L[1][i][2] = int, the position of L[1][i][1] in markings L[2][i] : represents the lattice points on the facet of the polygon with endpoints L[1][i] and L[1][i+1] (i considered modulo size(L[1])) L[2][i][j][1] = intvec, the coordinates of the jth lattice point on that facet L[2][i][j][2] = int, the position of L[2][i][j][1] in markings L[3] : represents the interior lattice points of the polygon L[3][i][1] = intvec, coordinates of ith interior point L[3][i][2] = int, the position of L[3][i][1] in markings Example:
    LIB "polymake.lib";
    // the lattice polygon spanned by the points (0,0), (3,0) and (0,3)
    // with all integer points as markings
    list polygon=intvec(1,1),intvec(3,0),intvec(2,0),intvec(1,0),
    intvec(0,0),intvec(2,1),intvec(0,1),intvec(1,2),
    intvec(0,2),intvec(0,3);
    // split the polygon in its vertices, its facets and its interior points
    list sp=splitPolygon(polygon);
    // the vertices
    sp[1];
    ==> [1]:
    ==>    [1]:
    ==>       3,0
    ==>    [2]:
    ==>       2
    ==> [2]:
    ==>    [1]:
    ==>       0,0
    ==>    [2]:
    ==>       5
    ==> [3]:
    ==>    [1]:
    ==>       0,3
    ==>    [2]:
    ==>       10
    // the points on facets which are not vertices
    sp[2];
    ==> [1]:
    ==>    [1]:
    ==>       [1]:
    ==>          2,0
    ==>       [2]:
    ==>          3
    ==>    [2]:
    ==>       [1]:
    ==>          1,0
    ==>       [2]:
    ==>          4
    ==> [2]:
    ==>    [1]:
    ==>       [1]:
    ==>          0,1
    ==>       [2]:
    ==>          7
    ==>    [2]:
    ==>       [1]:
    ==>          0,2
    ==>       [2]:
    ==>          9
    ==> [3]:
    ==>    [1]:
    ==>       [1]:
    ==>          1,2
    ==>       [2]:
    ==>          8
    ==>    [2]:
    ==>       [1]:
    ==>          2,1
    ==>       [2]:
    ==>          6
    // the interior points
    sp[3];
    ==> [1]:
    ==>    [1]:
    ==>       1,1
    ==>    [2]:
    ==>       1

User manual for Singular version 4.3.2, 2023, generated by texi2html.