This topic describes the coordinate system of drawings and their diagram elements.

NOV diagram uses orthogonal coordinate systems. This means that although the DOM visuals support any affine coordinate system, in NOV diagram all coordinate system transformations preserve the orthogonality of any pair of orthogonal vectors.

In NOV diagram coordinate systems are having the orientation of the screen coordinate system, in which X coordinates increase to the right, and Y coordinates increase to the bottom of the screen.

Following is an overview about the most widely used coordinate systems in NOV diagram:

**Drawing Coordinates**

Drawing coordinates are associated with the coordinate system of the drawing view and the drawing element (i.e. drawing visual transformation is the identity transform). The NPage LocalToParent and ParentToLocal methods help transform points between the page and drawing coordinates.

**Page Coordinates**

The page coordinates are associated with the coordinate system of the page. You often use the page coordinates position 2D shapes belonging to the page and specify the location of 1D shapes begin and end points.

**Shape Coordinates**

The shape coordinates are associated with the shape. The geometry commands points and coordinates are always specified in shape coordinates. Different shape points often have an associated “relative” property, which specifies whether that point is shape “absolute” or “relative” coordinates. To transform a point from shape “relative” to shape “absolute” coordinates the point X and Y coordinates need to be multiplied by the shape Width and Height. The shape API often provides methods that perform this scaling for you.

**Shape Parent Coordinates**

Shape parent coordinates are associated with the coordinate system of the shape parent. Because a shape can belong to a page or a composite shape (in most cases a group), this coordinate system is dependent on the shape location in the DDOM hierarchy. The shape Pin point, and begin and end points are expressed in this coordinate system.

**Text Block coordinates**

Each shape text block has its own coordinate system that is a child coordinate system of the shape coordinate system. This allows for the text block inside the shape to have different rotation and position inside its owner shape.