# Synopsis

PDX_MSGT gdx_GetCurvePlanarity(long option, MDA_PTR db_ptr, double tolerance, PDX_BOOL *planar, PDX_BOOL *xy_planar, double *zt, double plane_normal[3])

# Purpose

Determine the planarity of a GDX curve entity

# Description

Determines the planarity of a GDX curve entity. The GDX arc, conic, polyline, NURB, parametric spline, and composite curve entities are checked for planarity. If the curve is planar, determines if it is in the XY plane, determines the plane normal and for XY planar the Z translation, otherwise the plane translation to origin( the zt in plane_normal[0]*x + plane_normal[1]*y + plane_normal[2]*z - zt = 0.0). Note: If an entity is colinear and in the XY plane, the planar flag will be PDX_FALSE and the xy_planar flag will be PDX_TRUE since a unique plane can not be defined, but a valid plane is the XY plane.

# Input

## option

Not used

## db_ptr

The database pointer for the GDX entity

## tolerance

The in plane tolerance

# Output

## planar

### PDX_TRUE

The curve is planar.

### PDX_FALSE

The curve is not planar

## xy_planar

### PDX_TRUE

The curve is in an XY plane

### PDX_FALSE

The curve is not in an XY plane

## zt

The Z translation for an XY planar GDX curve or the plane to origin translation for planar and not XY planar

## plane_normal

The XYZ normal to the plane of the curve if planar

# Tolerances

NORMAL_MAG_TOL

# Return

          GDX_NOERR
          Low level error return
          .fi