void cvxAuxFrameSetDirXYZOrgBuddy
(
int idx_in,    /* I: VDATA */
int idXFld,    /* I: x field */
int idYFld,    /* I: y field */
int idZFld,    /* I: z field */
int idOrgFld   /* I: origin field */
)
/*
DESCRIPTION:
Set buddy field of Aux Frame.
*/
________________________________________________________________________________

void cvxAuxFrameShow
(
int idData,      /* I: id of data container  */
int entField,    /* I: id of entity field, to store selected entities */
int matField     /* I: id of matrix field, to store matrix data for aux frame */
)
/*
DESCRIPTION:
Show or hide Aux Frame by the input init values.
Aux frame is displayed when idData equals to the id of data container.
Aux frame is hidden when idData equals to -1.
*/
________________________________________________________________________________

int cvxDatumDispModeGet
(
int idDatum,                 /* I: id of datum entity */
evxDatumDispMode *DispMode   /* O: display mode of datum entity */
)
/*
DESCRIPTION:
Get display mode of the specified datum.

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

void cvxDatumDispModeSet
(
int idDatum,                 /* I: id of datum entity */
evxDatumDispMode DispMode    /* I: display mode of datum entity */
)
/*
DESCRIPTION:
Set display mode of the specified datum.
*/
________________________________________________________________________________

void cvxDatumLocalVis
(
int iVisible      /* I: visible flag of local datum */
)
/*
DESCRIPTION:
Set visible of the local datum.
*/
________________________________________________________________________________

void cvxDispColorGet
(
evxDispAttrib Type,   /* I: display attribute type */
evxColor *Color       /* O: color id */
)
/*
DESCRIPTION:
Gets the default point/wireframe/face color.

Face colors may be defined over a broader range of RGB components than
can be represented by the evxColor type.  If the default face color is
not one of the standard colors, this function outputs the nearest
evxColor value that approximates it.  See also cvxDispRgbGet().
*/
________________________________________________________________________________

void cvxDispColorSet
(
evxDispAttrib Type,   /* I: display attribute type */
evxColor Color       /* I: color id to use as default */
)
/*
DESCRIPTION:
Sets the default point/wireframe/face color.

See also cvxDispRgbSet().
*/
________________________________________________________________________________

void cvxDispDataUpdate(void)
/*
DESCRIPTION:
Calling this function during a command will cause the data
used to display part faces and edges to update/regenerate
at the end of the command.
*/
________________________________________________________________________________

int cvxDispGetLights
(
int *Count,         /* O: number of light sources */
svxLight **Lights   /* O: list of light sources */
)
/*
DESCRIPTION:
Gets a list of light sources associated with the active part or assembly.

This function allocates memory for the list of light sources.
This memory MUST be deallocated by the calling procedure.

Example:

   int i;
   int Count=0;
   svxLight *Lights=NULL;

   cvxLightGetAll(&Count, &Lights);
   for (i=0; i < Count; i++) {Light[i]...}
   cvxMemFree((void**)&Lights);

Return 1 if error, else 0.
*/
________________________________________________________________________________

void cvxDispModeGet
(
evxDispMode *Mode      /* O: active display mode */
)
/*
DESCRIPTION:
Outputs the active display mode.
*/
________________________________________________________________________________

void cvxDispModeSet
(
evxDispMode Mode      /* I: display mode */
)
/*
DESCRIPTION:
Sets the active display mode.
*/
________________________________________________________________________________

void cvxDispRedraw (void)
/*
DESCRIPTION:
Initiates a screen redraw if display update is not disabled 
and if a redraw is not going to be forced at the end of the
current operation.  

Active inputs (i.e. picks and previews) are not redrawn.  If 
you desire a redraw that includes redisplay of active inputs,
use cvxCmdSend("$CdRedrawAll").
*/
________________________________________________________________________________

void cvxDispRgbGet
(
evxDispAttrib Type,  /* I: display attribute type */
svxColor *Rgb        /* O: default color RGB components */
)
/*
DESCRIPTION:
Gets the RGB components of the specified default point/wireframe/face
color.

See also cvxDispColorGet().
*/
________________________________________________________________________________

void cvxDispRgbSet
(
evxDispAttrib Type,  /* I: display attribute type */
const svxColor *Rgb  /* I: color RGB components to use as default */
)
/*
DESCRIPTION:
Sets the default point/wireframe/face color from RGB components.

Note that only faces support the full range of possible RGB colors.
Points and wireframe entities can have only the colors corresponding
to those predefined by the evxColor type.  If "Type" is VX_DISP_POINT
or VX_DISP_LINE, this function finds the evxColor that is closest to
the given RGB components and uses that standard color for the
specified default.

See also cvxDispColorSet().
*/
________________________________________________________________________________

int cvxDispSetLights
(
int Count,         /* I: number of light sources */
svxLight *Lights   /* I: list of light sources */
)
/*
DESCRIPTION:
Set light sources associated with the active part or assembly.
New light sources will replace the existing ones.

Return 1 if error, else 0.
*/
________________________________________________________________________________

void cvxDispState
(
int Option,         /* I: 0 to disable display/UI update; 1 to re-enable display/UI update;
                     2 to re-enable AND refresh the display/UI */
vxDispState State /* I/O: storage for display states */
)
/*
DESCRIPTION:
This function should ALWAYS be called in pairs to disable display/UI update (Option=0)
and then to re-enable it (Option=1). The first call to disable display/UI update records
current display settings in "State", then disables them. The second call uses the settings
previously recorded in "State" to re-enable display/UI update.

NOTE - If this function is being used to re-enable display/UI update after an error 
occurred in application code, always use "Option = 1". In this case "Option = 2" could
cause further errors by attempting to refresh the display from an erroneous database.
*/
________________________________________________________________________________

void cvxDispSwitch
(
evxDispItem Item,   /* I: display/gui item */
int isOn            /* I: 0=OFF, 1=ON */
)
/*
DESCRIPTION:
Switches OFF automatic display update of the specified GUI item
when "isOn=0".  Switches it back ON when "isOn=1".

Each call to this function with "isOn=0" MUST be paired with 
a subsequent call to this same function with the same "Item" 
setting and "isOn=1" in order to restore the setting to 
its original state.  This is CRITICAL for the ZW3D display to 
function properly after your application is done.

By default, display update is ON, so this function should ALWAYS
be called first with "isOn=0" followed by a call with "isOn=1".
*/
________________________________________________________________________________

void cvxDispSwitchGet
(
evxDispItem Item,   /* I: display/gui item */
int *isOn         /* O: 0=OFF, 1=ON */
)
/*
DESCRIPTION:
Outputs the state of a switch set using cvxDispSwitch().
If "Item = VX_DISP_ALL", "isOn" is output as zero unless
VX_DISP_SCREEN, VX_DISP_PREVIEW and VX_DISP_FORMS are all ON.
*/
________________________________________________________________________________

int cvxDispWindowRectGet
(
const int includeFrame,    /*I: 1, Include window frame; 0, Exclude window frame */
const int isGlobal,        /*I: 1, Get the global coordinates; 0, Get the client coordinates */
int* x,                    /*O: top left X. If don't get this value, set it nullptr. */
int* y,                    /*O: top left Y. If don't get this value, set it nullptr. */
int* h,                    /*O: active display window's height. If don't get this value, set it nullptr. */
int* w                     /*O: active display window's weight. If don't get this value, set it nullptr. */
)
/*
DESCRIPTION:
   Get the global or client coordinates of the active display window.
RETURN:
   1 if function fails;
   0 if function succeeds.
*/
________________________________________________________________________________

void cvxDispZoomAll
(
int Redraw      /* I: 1 to redraw after zoom all; else 0 */
)
/*
DESCRIPTION:
Sets active view to encompass all visible geometry.
*/
________________________________________________________________________________

void cvxDispZoomAllIncludeDim
(
int Redraw      /* I: 1 to redraw after zoom all; else 0 */
)
/*
DESCRIPTION:
Sets active view to encompass all visible geometry including dimensions.
*/
________________________________________________________________________________

void cvxDispZoomAt
(
const svxPoint point,   /* I: point to zoom at */
const float factor      /* I: the factor to zoom at, mostly to be 0.8 */
)
/*
DESCRIPTION:
   Zoom at a specifical location on the active view using the zoom factor.
*/
________________________________________________________________________________

int cvxDispZoomIn
(
int ZoomIn,                           /* I: 1 to zoom-in, 0 to zoom-out */
const svxPoint2f StartPoint,          /* I: start point */
const svxPoint2f EndPoint             /* I: end point */
)
/*
DESCRIPTION:
Window zoom in or out.
StartPoint and endpoint are on the diagonal of the rectangle.

NOTE:
Because this function has an internal call to the "cvxDispRedraw()" function,
it must be called on the main thread.

Return 1 if error, else 0.
*/
________________________________________________________________________________

int cvxDispZoomLimits(void)
/*
DESCRIPTION:
Set active view to construction limits of target object.

Return 1 if error, else 0.
*/
________________________________________________________________________________

void cvxMoveSetAuxFrameElem
(
int iElem      /* I: Set which element to show in AuxFrame */
)
/*
DESCRIPTION:
Show element of AuxFrame. Set 0 to show all(except QuadrantArea).
Otherwise add below for "iElem":
AUXFRAME_X_AXIS   0x1
AUXFRAME_Y_AXIS   0x2
AUXFRAME_Z_AXIS   0x4
AUXFRAME_XY_QUA   0x8
AUXFRAME_YZ_QUA   0x10
AUXFRAME_ZX_QUA   0x20
AUXFRAME_ORIGIN   0x40
AUXFRAME_XY_AREA  0x80
AUXFRAME_YZ_AREA  0x100
AUXFRAME_ZX_AREA  0x200
*/
________________________________________________________________________________

void cvxVisDispStatusGet
(
evxVisualDispItem Item,      /* I : visual display Item */
int *isOn    /* O : on = 1, off = 0 */
)
/*
DESCRIPTION:
Get the current display status of specified visual display item .
*/
________________________________________________________________________________