/*
uf_camtext.h
* File description:
*
* This file contains the Open C API interface to text geometry in CAM.
* Text geometry includes drafting note and drafting label objects.
*
* The CAM text geometry routines in this file enable you to:
* . Append entities to CAM geometry
* . Get CAM geometry items
* . Delete CAM geometry
* . Get the item entity
* . Delete a sigle item from CAM geometry
*
******************************************************************************/
#ifndef UF_CAMTEXT_H_INCLUDED
#define UF_CAMTEXT_H_INCLUDED
#include <uf.h>
#include <uf_defs.h>
#include <uf_param_indices.h>
#include <libufun_cam_exports.h>
/*
**************************************************************************
*************************** Definitions ***************************
**************************************************************************
*/
/*
**************************************************************************
*************************** Structures ***************************
**************************************************************************
*/
/*
* An object which is used to access a CAM geometry.
*/
typedef void *UF_CAMTEXT_item_t;
/*
* The following information shows the objects using the Text geometry.
* An error code is returned by the functions if a wrong type
* of objects uses the text geometry.
*
* Mill text geometry Group:
* Text Geometry
*
* Planar Text Operation:
* Text Geometry
*
* Surface Contouring with Text drive method Operation:
* Text Geometry
*
*/
/*
**************************************************************************
****************** Functions Relating to Geometry *****************
**************************************************************************
*/
/***************************************************************************
*
* Appends a list of geometry entities to the object .
*
* The allowed types of entities are drafting note and drafting label objects.
* If the entity list contains any invalid entities, an error code is returned
* and no geometry entity is appended.
*
* Environment: Internal and External
*
* See Also:
* History: Released in NX2.0
********************************************************************** */
extern UFUN_CAMEXPORT int UF_CAMTEXT_append_items
(
tag_t object_tag, /* <I> the parent object of the
geometry */
int count, /* <I> the count of geometry entities */
tag_t *entity_list /* <I> the list of geometry entities */
);
/***************************************************************************
*
* Gets all the text geometry items from the object.
*
* Environment: Internal and External
*
* See Also:
* History: Released in NX2.0
********************************************************************** */
extern UFUN_CAMEXPORT int UF_CAMTEXT_ask_items
(
tag_t object_tag, /* <I> the parent object of the
geometry */
int *count, /* <O> the count of geometry items */
UF_CAMTEXT_item_t **items /* <OF> the list of geometry items
it must be freed using UF_free */
);
/***************************************************************************
*
* Deletes all the text geometry items from the object.
*
* Environment: Internal and External
*
* See Also:
* History: Released in NX2.0
***************************************************************************/
extern UFUN_CAMEXPORT int UF_CAMTEXT_delete_geometry
(
tag_t object_tag /* <I> the parent object of the
geometry */
);
/***************************************************************************
*
* Gets the geometry entity of the item.
*
* Environment: Internal and External
*
* See Also:
* History: Released in NX2.0
********************************************************************** */
extern UFUN_CAMEXPORT int UF_CAMTEXT_ask_item_entity
(
UF_CAMTEXT_item_t item, /* <I> the geometry item */
tag_t *entity /* <O> the item entity */
);
/***************************************************************************
*
* Deletes one text geometry item from the object.
*
* Environment: Internal and External
*
* See Also:
* History: Released in NX2.0
********************************************************************** */
extern UFUN_CAMEXPORT int UF_CAMTEXT_delete_item
(
tag_t object_tag, /* <I> the parent object of the
geometry */
UF_CAMTEXT_item_t item /* <I> the item to be deleted */
);
#undef EXPORTLIBRARY
#endif /* UF_CAMTEXT_H_INCLUDED */