**XYF** is a data directory which
contains examples of XYF files, a simple format
for recording points and faces in 2D space.

An **XYF** file assumes first the existence of an **XY** file,
which lists the (X,Y) coordinates of points. Then the **XYF**
file is used to define faces by listing the indices of a sequence of
points in the **XY** file that form the boundary of the face.
It is not necessary to repeat the first point at the end.

The XYF format does not require a particular order for each face
(such as **TRIANGULATION_ORDER3** or **QUAD_MESH** formats)
nor does it require that each face have the same order. However,
it does require that all the node indices for a face can be listed on
a single text line.

Since the XYF file includes point indexes, this raises the issue of whether to use 0 or 1-based indexing. For now, the issue is left open. A program reading an XYF file presumably also has access to the XY file. The index base can be inferred from the presence or absence of an index with value 0, or the presence or absence of an index value equal to the number of points.

```
# Four points.
#
0.0 0.0
0.0 1.0
1.0 1.0
1.0 0.0
```

```
# Indices of vertices to connect for the faces of two triangles.
#
1 4 2
3 2 4
```

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

TRIANGULATION_ORDER3, a data directory which contains examples of TRIANGULATION_ORDER3 files, a description of a linear triangulation of a set of 2D points, using a pair of files to list the node coordinates and the 3 nodes that make up each triangle;

TRIANGULATION_ORDER6, a data directory which contains examples of TRIANGULATION_ORDER6 files, a description of a quadratic triangulation of a set of 2D points, using a pair of files to list the node coordinates and the 6 nodes that make up each triangle.

XY, a data directory which contains examples of XY files, a simple 2D graphics point format;

XY_IO, a C++ library which reads and writes files in the XY, XYL and XYF formats.

XYF_DISPLAY_OPENGL, a C++ program which reads XYF information defining points and faces in 2D, and displays an image using OpenGL.

XYL, a data directory which contains examples of XYL files, a simple 2D graphics point and line format;

XYZF, a data directory which contains examples of XYZF files, a simple 3D graphics point and face format;

ANNULUS is a set of 65 points and 48 quadrilateral faces.

- annulus.xy the coordinates.
- annulus.xyf the face information.
- annulus.png a PNG image.

HEXAGONAL is a set of 105 points and 14 hexagons.

- hexagonal.xy the coordinates.
- hexagonal.xyf the face information.
- hexagonal.png a PNG image.

LAKE is a set of 621 points and 974 triangles.

POINTS is a set of 4 points and 2 triangles.

- points.xy the coordinates.
- points.xyf the face information.
- points.png a PNG image.

SQUARES is a set of 30 points and 20 squares.

- squares.xy the coordinates.
- squares.xyf the face information.
- squares.png a PNG image.

You can go up one level to the DATA page.