# Direction Create

### o1, o2, o3

A direction can be defined indicating explicitly the coordinates of a node where the direction passes. For each direction family, there is a direction passing through the origin node and as nodes are equivalent, it follows that for any node, there is a direction of any family passing through there.

When the lattice is primitive or vectors are primitive, coordinates o1, o2, o3 are enough to identify any cell node. By default, a crystallographic direction passes through the origin, with node coordinates equal to 0, 0, 0, respectively.

```Example: <direction ... o1="0" o2="0" o3="0"/> (default)
Allowed values: integer (optional, coupled)
```

### o4

When the lattice is centered and vectors are conventional, the coordinates o1, o2, o3 indicate the node in the lower-left corner of the cell where the direction passes. A fourth coordinate o4 is needed to point the centered node where the direction passes. By default, o4 is 000, so no change is introduced. When the cell lattice is primitive P or the vectors defining the node are primitive, that is the only possible value for o4. For I, C, F, R centered lattices, o4 can also take the values:
```I: 111
C: 110
F: 110, 101, 011
R: 211, 122
```
corresponding to the numerators of the inner node coordinates, (1/2 1/2 1/2) for I lattices, (1/2 1/2 0) for C lattices, (0 1/2 1/2) (1/2 0 1/2) (1/2 1/2 0) for F lattices and (1/3 2/3 2/3) (2/3 1/3 1/3) for R lattices.
```Example: <direction ... o4="000"/> (default)
Allowed values: 000, 111, 110 101, 011, 211, 122 (optional)
```

### data

The geometric data defining a line direction must be entered in order to make the direction completely independent from its reference objects. This is accomplished with attributes begin_x, begin_y, begin_z, and end_x, end_y, end_z, defining the coordinates of the two end points.
```Example: <direction ... begin_x="0.0" begin_y="0.0" begin_z="0.0"
end_x="1.0" end_y="1.0" end_z="1.0"/>
Allowed values: real (optional, coupled)
```