Attr2IritObject

(attribut.c:1506)

Prototype:

  IPObjectStruct *Attr2IritObject(const IPAttributeStruct *Attr)


Description:

Routine to convert an attribute to an IRIT object.

Parameters:

Attr: To convert to an IRIT object.


Returned Value:

IPObjectStruct *: Created irit object.


Keywords:

attributes


AttrCopyOneAttribute

(attribut.c:1575)

Prototype:

  IPAttributeStruct *AttrCopyOneAttribute(const IPAttributeStruct *Src)


Description:

Routine to copy one attribute. This routine also exists in miscatt3.c without object handling. The routine in miscatt3.c will be linked in iff no object handling is used (i.e. this file is not linked in).

Parameters:

Src: Attribute to duplicate.


Returned Value:

IPAttributeStruct *: Duplicated attribute.


See Also:

AttrCopyAttributes2 AttrCopyOneAttribute2

Keywords:

attributes


AttrCopyOneAttribute2

(attribut.c:1602)

Prototype:

  IPAttributeStruct *AttrCopyOneAttribute2(const IPAttributeStruct *Src,
                                           int AllAttr)


Description:

Routine to copy one attribute. This routine also exists in miscatt3.c without object handling. The routine in miscatt3.c will be linked in iff no object handling is used (i.e. this file is not linked in).

Parameters:

Src: Attribute to duplicate.
AllAttr: If FALSE, attributes prefixed with '_' are not copied. If TRUE, all attributes are copied.


Returned Value:

IPAttributeStruct *: Duplicated attribute.


See Also:

AttrCopyAttributes2 AttrCopyOneAttribute

Keywords:

attributes


AttrDbg

(iritprs2.c:789)

Prototype:

  void AttrDbg(const IPAttributeStruct *Attr)


Description:

Routine to dump to stderr the attributes of the attribute list, for debug.

Parameters:

Attr: Attributes to put out.


Returned Value:

void


See Also:

IPPutAttributes

Keywords:

attributes debugging.


AttrFindObjsWithAttr

(attribut.c:1947)

Prototype:

  IPObjectStruct const * const *AttrFindObjsWithAttr(
                                               const IPObjectStruct *PObjs,
                                               const char *AttrName,
                                               const IPObjectStruct *AttrVal,
                                               int LeavesOnly,
                                               int Negate)


Description:

Searches the given hierarchy of objects, PObjs, for object that contains an attribute named AttrName. If AttrVal is not NULL, an additional test is made to verify the desired attribute value. Only support attribute value comparisons of numeric and string values.

Parameters:

PObjs: A hierarchy of objects to scan and search for matched attributes. PObjs is modified in no way.
AttrName: Attribute name to search in the object of the hierarchy.
AttrVal: Optional (can be NULL) attribute value to verify for similarity as well.
LeavesOnly: RUE to search only leaves, FALSE to also consider sub-lists.
Negate: If TRUE, returns all objects that do not posses the attributes (or the attribute value).


Returned Value:

IPObjectStruct const * const *: A Vector holding references on the original objects in PObjs that possess the sought attribute name (and possibly attribute value), or NULL if none found. Allocated dynamically.


Keywords:




AttrFreeObjectAttribute

(attribut.c:1384)

Prototype:

  void AttrFreeObjectAttribute(const IPObjectStruct *PObj, const char *Name)


Description:

Free one or all attributes of an object PObj and its descendants.

Parameters:

PObj: Object to free attributes from.
Name: Name of attribute to delete, or all attributes if NULL.


Returned Value:

void


See Also:

AttrFreeOneAttribute AttrFreeAttributes

Keywords:




AttrGetMAttribCount

(iritvrml.c:377)

Prototype:

  int AttrGetMAttribCount(IPAttributeStruct *Attr)


Description:

Routine to return a count of values in multi-attribute.

Parameters:

Attr: Attribute list to search for requested attribute.


Returned Value:

int: Count of the values actually present in attribute.


See Also:

AttrGetMRealAttrib AttrGetMAttribCount

Keywords:

attributes


AttrGetMIntAttrib

(iritvrml.c:416)

Prototype:

  int AttrGetMIntAttrib(IPAttributeStruct *Attrs, char *Name, int N, int **PV)


Description:

Routine to return a multi-integer attribute. Note, that when N is zero, PV is an address of a pointer that will receive allocated array, otherwise PV is regarded as just a pointer to the first value in the client provided array. If N is greater then actual count of values in the attribute, last value is replicated.

Parameters:

Attrs: Attribute list to search for requested attribute.
Name: Name of requested attribute.
N: Count of values in PV array, or zero.
PV: Address of the pointer to the first array value, or pointer itself.


Returned Value:

int: Count of the values actually present in MAttribute.


See Also:

AttrIDSetIntAttrib AttrSetPtrAttrib AttrGetPtrAttrib AttrGetRealAttrib AttrIDSetStrAttrib AttrGetStrAttrib) AttrSetRealAttrib AttrGetMRealAttrib AttrGetMAttribCount

Keywords:

attributes


AttrGetMRealAttrib

(iritvrml.c:522)

Prototype:

  int AttrGetMRealAttrib(IPAttributeStruct *Attrs,
                         IPAttrIDType AttrID,
                         int N,
                         IrtRType **PV)


Description:

Routine to return a multi-real attribute. Note, that when N is zero, PV is an address of a pointer that will recieve allocated array, otherwise PV is regarded as just a pointer to the first value in the client provided array. If N is greater then actual count of values in the attribute, last value is replicated.

Parameters:

Attrs: Attribute list to search for requested attribute.
AttrID: ID of requested attribute.
N: Count of values in PV array, or zero.
PV: Address of the pointer to the first array value, or pointer itself.


Returned Value:

int: Count of the values actually present in MAttribute.


See Also:

AttrIDSetIntAttrib AttrSetPtrAttrib AttrGetPtrAttrib AttrGetRealAttrib AttrIDSetStrAttrib AttrGetStrAttrib AttrSetRealAttrib AttrGetMIntAttrib AttrGetMAttribCount

Keywords:

attributes


AttrGetObjAttrib

(attribut.c:1322)

Prototype:

  IPObjectStruct *AttrGetObjAttrib(const IPAttributeStruct *Attrs,
                                   const char *Name)


Description:

Routine to get an object attribute.

Parameters:

Attrs: Attribute list to search for requested attribute.
Name: Name of requested attribute.


Returned Value:

IPObjectStruct *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib2

Keywords:

attributes


AttrGetObjAttrib2

(attribut.c:1356)

Prototype:

  IPObjectStruct *AttrGetObjAttrib2(const IPAttributeStruct *Attrs,
                                    IPAttrNumType AttribNum)


Description:

Routine to get an object attribute.

Parameters:

Attrs: Attribute list to search for requested attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

IPObjectStruct *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib

Keywords:

attributes


AttrGetObjectColor

(attribut.c:79)

Prototype:

  int AttrGetObjectColor(const IPObjectStruct *PObj)


Description:

Routine to return the color of an object.

Parameters:

PObj: For which we would like to know the color of.


Returned Value:

int: Color of PObj or IP_ATTR_NO_COLOR if no color set.


See Also:

AttrSetObjectColor AttrSetObjectRGBColor AttrGetObjectRGBColor AttrGetObjectWidth AttrSetObjectWidth AttrSetObjectRealAttrib AttrSetObjectRealPtrAttrib

Keywords:

attributes color


AttrGetObjectGeomAttr

(attribut.c:1461)

Prototype:

  IPAttributeStruct *AttrGetObjectGeomAttr(const IPObjectStruct *PObj)


Description:

Returns the attribute slot of the geometry entity in PObj, if any.

Parameters:

PObj: Object to get its geometric entity attribute slot.


Returned Value:

IPAttributeStruct *: The attribute slot, or NULL if not found/failed.


See Also:

AttrGetObjectColor AttrSetObjectRGBColor AttrGetObjectRGBColor AttrGetObjectWidth AttrSetObjectWidth AttrSetObjectIntAttrib

Keywords:

attributes color


AttrGetObjectIntAttrib

(attribut.c:306)

Prototype:

  int AttrGetObjectIntAttrib(const IPObjectStruct *PObj, const char *Name)


Description:

Routine to get an integer attribute from an object.

Parameters:

PObj: Object from which to get an ingeter attribute.
Name: Name of integer attribute.


Returned Value:

int: Found attribute, or IP_ATTR_BAD_INT if not found.


See Also:

AttrSetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectIntAttrib2

Keywords:

attributes


AttrGetObjectIntAttrib2

(attribut.c:334)

Prototype:

  int AttrGetObjectIntAttrib2(const IPObjectStruct *PObj,
                              IPAttrNumType AttribNum)


Description:

Routine to get an integer attribute from an object.

Parameters:

PObj: Object from which to get an ingeter attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

int: Found attribute, or IP_ATTR_BAD_INT if not found.


See Also:

AttrSetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectIntAttrib

Keywords:

attributes


AttrGetObjectObjAttrib

(attribut.c:1266)

Prototype:

  IPObjectStruct *AttrGetObjectObjAttrib(const IPObjectStruct *PObj,
                                         const char *Name)


Description:

Routine to get an object attribute from an object.

Parameters:

PObj: Object from which to get a object attribute.
Name: Name of object attribute.


Returned Value:

IPObjectStruct *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjAttrib AttrGetObjectObjAttrib2

Keywords:

attributes


AttrGetObjectObjAttrib2

(attribut.c:1294)

Prototype:

  IPObjectStruct *AttrGetObjectObjAttrib2(const IPObjectStruct *PObj,
                                          IPAttrNumType AttribNum)


Description:

Routine to get an object attribute from an object.

Parameters:

PObj: Object from which to get a object attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

IPObjectStruct *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjAttrib AttrGetObjectObjAttrib

Keywords:

attributes


AttrGetObjectPtrAttrib

(attribut.c:430)

Prototype:

  VoidPtr AttrGetObjectPtrAttrib(const IPObjectStruct *PObj, const char *Name)


Description:

Routine to get a pointer attribute from an object.

Parameters:

PObj: Object from which to get a pointer attribute.
Name: Name of pointer attribute.


Returned Value:

VoidPtr: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrGetObjectPtrAttrib2

Keywords:

attributes


AttrGetObjectPtrAttrib2

(attribut.c:459)

Prototype:

  VoidPtr AttrGetObjectPtrAttrib2(const IPObjectStruct *PObj,
                                  IPAttrNumType AttribNum)


Description:

Routine to get a pointer attribute from an object.

Parameters:

PObj: Object from which to get a pointer attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

VoidPtr: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrGetObjectPtrAttrib

Keywords:

attributes


AttrGetObjectRGBColor

(attribut.c:136)

Prototype:

  int AttrGetObjectRGBColor(const IPObjectStruct *PObj,
                            int *Red,
                            int *Green,
                            int *Blue)


Description:

Routine to return the RGB color of an object.

Parameters:

PObj: Object to get its RGB color.
Red, Green, Blue: Component of color to initialize.


Returned Value:

int: TRUE if PObj does have an RGB color attribute, FALSE otherwise.


See Also:

AttrSetObjectColor AttrGetObjectColor AttrSetObjectRGBColor AttrGetObjectWidth AttrSetObjectWidth AttrSetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRGBColor2

Keywords:

attributes color rgb


AttrGetObjectRGBColor2

(attribut.c:165)

Prototype:

  int AttrGetObjectRGBColor2(const IPObjectStruct *PObj,
                             const char *Name,
                             int *Red,
                             int *Green,
                             int *Blue)


Description:

Routine to return the RGB color of an object.

Parameters:

PObj: Object to get its RGB color.
Name: Name of the attribute, if NULL default is taken.
Red, Green, Blue: Component of color to initialize.


Returned Value:

int: TRUE if PObj does have an RGB color attribute, FALSE otherwise.


See Also:

AttrSetObjectColor AttrGetObjectColor AttrSetObjectRGBColor AttrGetObjectWidth AttrSetObjectWidth AttrSetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRGBColor

Keywords:

attributes color rgb


AttrGetObjectRealAttrib

(attribut.c:676)

Prototype:

  IrtRType AttrGetObjectRealAttrib(const IPObjectStruct *PObj, const char *Name)


Description:

Routine to get a real attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
Name: Name of real attribute.


Returned Value:

IrtRType: Found attribute, or IP_ATTR_BAD_REAL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectRealAttrib2

Keywords:

attributes


AttrGetObjectRealAttrib2

(attribut.c:704)

Prototype:

  IrtRType AttrGetObjectRealAttrib2(const IPObjectStruct *PObj,
                                    IPAttrNumType AttribNum)


Description:

Routine to get a real attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

IrtRType: Found attribute, or IP_ATTR_BAD_REAL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectRealAttrib

Keywords:

attributes


AttrGetObjectRealPtrAttrib

(attribut.c:805)

Prototype:

  IrtRType *AttrGetObjectRealPtrAttrib(const IPObjectStruct *PObj,
                                       const char *Name)


Description:

Routine to get a real attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
Name: Name of real attribute.


Returned Value:

IrtRType *: Found attribute, or IP_ATTR_BAD_REAL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib2 AttrGetObjectRealPtrAttrib2 AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectRealAttrib2

Keywords:

attributes


AttrGetObjectRealPtrAttrib2

(attribut.c:833)

Prototype:

  IrtRType *AttrGetObjectRealPtrAttrib2(const IPObjectStruct *PObj,
                                        IPAttrNumType AttribNum)


Description:

Routine to get a real attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

IrtRType *: Found attribute, or IP_ATTR_BAD_REAL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectRealAttrib

Keywords:

attributes


AttrGetObjectRefPtrAttrib

(attribut.c:556)

Prototype:

  VoidPtr AttrGetObjectRefPtrAttrib(const IPObjectStruct *PObj, const char *Name)


Description:

Routine to get a pointer reference attribute from an object.

Parameters:

PObj: Object from which to get a pointer reference attribute.
Name: Name of pointer attribute.


Returned Value:

VoidPtr: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib2

Keywords:

attributes


AttrGetObjectRefPtrAttrib2

(attribut.c:585)

Prototype:

  VoidPtr AttrGetObjectRefPtrAttrib2(const IPObjectStruct *PObj,
                                     IPAttrNumType AttribNum)


Description:

Routine to get a pointer reference attribute from an object.

Parameters:

PObj: Object from which to get a pointer reference attribute.
AttribNum: Unique ID derived from name of requested attribute.


Returned Value:

VoidPtr: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib

Keywords:

attributes


AttrGetObjectStrAttrib

(attribut.c:1046)

Prototype:

  const char *AttrGetObjectStrAttrib(const IPObjectStruct *PObj,
                                     const char *Name)


Description:

Routine to get a string attribute from an object.

Parameters:

PObj: Object from which to get a string attribute.
Name: Name of string attribute.


Returned Value:

const char *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectStrAttrib2

Keywords:

attributes


AttrGetObjectStrAttrib2

(attribut.c:1074)

Prototype:

  const char *AttrGetObjectStrAttrib2(const IPObjectStruct *PObj,
                                      IPAttrNumType AttribNum)


Description:

Routine to get a string attribute from an object.

Parameters:

PObj: Object from which to get a string attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

const char *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectStrAttrib

Keywords:

attributes


AttrGetObjectUVAttrib

(attribut.c:926)

Prototype:

  float *AttrGetObjectUVAttrib(const IPObjectStruct *PObj, const char *Name)


Description:

Routine to get a UV attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
Name: Name of real attribute.


Returned Value:

float *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib2

Keywords:

attributes


AttrGetObjectUVAttrib2

(attribut.c:954)

Prototype:

  float *AttrGetObjectUVAttrib2(const IPObjectStruct *PObj,
                                IPAttrNumType AttribNum)


Description:

Routine to get a UV attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
AttribNum: nique ID derived from name of requested attribute.


Returned Value:

float *: Found attribute, or NULL if not found.


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib

Keywords:

attributes


AttrGetObjectWidth

(attribut.c:215)

Prototype:

  IrtRType AttrGetObjectWidth(const IPObjectStruct *PObj)


Description:

Routine to return the width of an object.

Parameters:

PObj: For which we would like to know the width of.


Returned Value:

IrtRType: Width of PObj or IP_ATTR_NO_WIDTH if no width set.


See Also:

AttrSetObjectColor AttrGetObjectColor AttrSetObjectRGBColor AttrGetObjectRGBColor AttrSetObjectWidth AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib

Keywords:

attributes width


AttrIDFreeObjectAttribute

(attribute_id.c:828)

Prototype:

  void AttrIDFreeObjectAttribute(const IPObjectStruct *PObj, IPAttrIDType ID)


Description:

Free one attributes of an object PObj and its descendants, by ID.

Parameters:

PObj: Object to free attributes from. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute to delete.


Returned Value:

void


See Also:

AttrFreeOneAttribute AttrFreeAttributes

Keywords:




AttrIDGetIndexColor

(attribute_id.c:60)

Prototype:

  void AttrIDGetIndexColor(int Color, int *Red, int *Green, int *Blue)


Description:

Routine to fetch one of 16 basic colors based on its index.

Parameters:

Color: Index of color between 0 and 15.
Red, Green, Blue: Component of RGB color.


Returned Value:

void


See Also:

AttrIDSetColor AttrIDGetColor AttrSetIntAttrib AttrSetObjectRGBColor

Keywords:

attributes color rgb


AttrIDGetObjAttrib

(attribute_id.c:798)

Prototype:

  IPObjectStruct *AttrIDGetObjAttrib(const IPAttributeStruct *Attrs,
                                     IPAttrIDType ID)


Description:

Routine to get an object attribute.

Parameters:

Attrs: Attribute list to search for requested attribute.
ID: ID of requested attribute.


Returned Value:

IPObjectStruct *: Found attribute, or NULL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDGetObjectColor

(attribute_id.c:87)

Prototype:

  int AttrIDGetObjectColor(const IPObjectStruct *PObj)


Description:

Routine to return the color of an object.

Parameters:

PObj: For which we would like to know the color of.


Returned Value:

int: Color of PObj or IP_ATTR_NO_COLOR if no color set.


See Also:

AttrIDSetObjectColor AttrIDSetObjectRGBColor AttrIDGetObjectRGBColor AttrIDGetObjectWidth AttrIDSetObjectWidth AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetColor

Keywords:

attributes color


AttrIDGetObjectIntAttrib

(attribute_id.c:283)

Prototype:

  int AttrIDGetObjectIntAttrib(const IPObjectStruct *PObj, IPAttrIDType ID)


Description:

Routine to get an integer attribute from an object.

Parameters:

PObj: Object from which to get an ingeter attribute.
ID: ID of integer attribute.


Returned Value:

int: Found attribute, or IP_ATTR_BAD_INT if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDGetObjectObjAttrib

(attribute_id.c:769)

Prototype:

  IPObjectStruct *AttrIDGetObjectObjAttrib(const IPObjectStruct *PObj,
                                           IPAttrIDType ID)


Description:

Routine to get an object attribute from an object.

Parameters:

PObj: Object from which to get a object attribute.
ID: ID of object attribute.


Returned Value:

IPObjectStruct *: Found attribute, or NULL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectStrAttrib AttrIDSetObjAttrib AttrIDGetObjAttrib

Keywords:

attributes


AttrIDGetObjectPtrAttrib

(attribute_id.c:345)

Prototype:

  VoidPtr AttrIDGetObjectPtrAttrib(const IPObjectStruct *PObj, IPAttrIDType ID)


Description:

Routine to get a pointer attribute from an object.

Parameters:

PObj: Object from which to get a pointer attribute.
ID: ID of pointer attribute.


Returned Value:

VoidPtr: Found attribute, or NULL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDSetObjectRealAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectStrAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDSetObjectRefPtrAttrib AttrIDGetObjectRefPtrAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectObjAttrib

Keywords:

attributes


AttrIDGetObjectRGBColor

(attribute_id.c:144)

Prototype:

  int AttrIDGetObjectRGBColor(const IPObjectStruct *PObj,
                              int *Red,
                              int *Green,
                              int *Blue)


Description:

Routine to return the RGB color of an object. Examines "rgb" attributes.

Parameters:

PObj: Object to get its RGB color.
Red, Green, Blue: Component of color to initialize.


Returned Value:

int: TRUE if PObj does have an RGB color attribute, FALSE otherwise.


See Also:

AttrIDSetObjectColor AttrIDGetObjectColor AttrIDSetObjectRGBColor AttrIDGetObjectWidth AttrIDSetObjectWidth AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetRGBColor

Keywords:

attributes color rgb


AttrIDGetObjectRGBColor2

(attribute_id.c:172)

Prototype:

  int AttrIDGetObjectRGBColor2(const IPObjectStruct *PObj,
                               int *Red,
                               int *Green,
                               int *Blue)


Description:

Routine to return the RGB color of an object. Examines "rgb" and "color" attributes.

Parameters:

PObj: Object to get its RGB color.
Red, Green, Blue: Component of color to initialize.


Returned Value:

int: TRUE if PObj does have an RGB color attribute, FALSE otherwise.


See Also:

AttrIDSetObjectColor AttrIDGetObjectColor AttrIDSetObjectRGBColor AttrIDGetObjectWidth AttrIDSetObjectWidth AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetRGBColor

Keywords:

attributes color rgb


AttrIDGetObjectRealAttrib

(attribute_id.c:470)

Prototype:

  IrtRType AttrIDGetObjectRealAttrib(const IPObjectStruct *PObj,
                                     IPAttrIDType ID)


Description:

Routine to get a real attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
ID: ID of real attribute.


Returned Value:

IrtRType: Found attribute, or IP_ATTR_BAD_REAL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectStrAttrib

Keywords:

attributes


AttrIDGetObjectRealPtrAttrib

(attribute_id.c:534)

Prototype:

  IrtRType *AttrIDGetObjectRealPtrAttrib(const IPObjectStruct *PObj,
                                         IPAttrIDType ID)


Description:

Routine to get a real attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
ID: ID of real attribute.


Returned Value:

IrtRType *: Found attribute, or IP_ATTR_BAD_REAL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectStrAttrib

Keywords:

attributes


AttrIDGetObjectRefPtrAttrib

(attribute_id.c:408)

Prototype:

  VoidPtr AttrIDGetObjectRefPtrAttrib(const IPObjectStruct *PObj,
                                      IPAttrIDType ID)


Description:

Routine to get a pointer reference attribute from an object.

Parameters:

PObj: Object from which to get a pointer reference attribute.
ID: ID of pointer attribute.


Returned Value:

VoidPtr: Found attribute, or NULL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDSetObjectRealAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectStrAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDSetObjectRefPtrAttrib AttrIDGetObjectRefPtrAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectObjAttrib

Keywords:

attributes


AttrIDGetObjectStrAttrib

(attribute_id.c:656)

Prototype:

  const char *AttrIDGetObjectStrAttrib(const IPObjectStruct *PObj,
                                       IPAttrIDType ID)


Description:

Routine to get a string attribute from an object.

Parameters:

PObj: Object from which to get a string attribute.
ID: ID of attribute.


Returned Value:

const char *: Found attribute, or NULL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectStrAttrib AttrIDGetObjAttrib

Keywords:

attributes


AttrIDGetObjectUVAttrib

(attribute_id.c:594)

Prototype:

  float *AttrIDGetObjectUVAttrib(const IPObjectStruct *PObj, IPAttrIDType ID)


Description:

Routine to get a UV attribute from an object.

Parameters:

PObj: Object from which to get a real attribute.
ID: ID of real attribute.


Returned Value:

float *: Found attribute, or NULL if not found.


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDSetObjectUVAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDGetObjectWidth

(attribute_id.c:223)

Prototype:

  IrtRType AttrIDGetObjectWidth(const IPObjectStruct *PObj)


Description:

Routine to return the width of an object.

Parameters:

PObj: For which we would like to know the width of.


Returned Value:

IrtRType: Width of PObj or IP_ATTR_NO_WIDTH if no width set.


See Also:

AttrIDSetObjectColor AttrIDGetObjectColor AttrIDSetObjectRGBColor AttrIDGetObjectRGBColor AttrIDSetObjectWidth AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDSetWidth

Keywords:

attributes width


AttrIDPropagateAttr

(attribute_id.c:859)

Prototype:

  void AttrIDPropagateAttr(const IPObjectStruct *PObj, IPAttrIDType AttrID)


Description:

Propagate attributes from list objects down into their elements. Non propagatable attributes are accumulated or ignored as follows: "animation" is accumulated. "invisible" is ignored.

Parameters:

PObj: To propagate down Attr attributes.
AttrID: ID of attribute to propagate or NULL to propagate all attributes.


Returned Value:

void


Keywords:

attributes files parser


AttrIDSetObjAttrib

(attribute_id.c:725)

Prototype:

  void AttrIDSetObjAttrib(IPAttributeStruct **Attrs,
                          IPAttrIDType ID,
                          IPObjectStruct *Data,
                          int CopyData)


Description:

Routine to set an object attribute.

Parameters:

Attrs: Attribute list where to place new attribute.
ID: ID of the newly introduced attribute.
Data: Pointer attribute to save.
CopyData: If TRUE, object Data is duplicated first.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectObjAttrib

Keywords:

attributes


AttrIDSetObjectColor

(attribute_id.c:38)

Prototype:

  void AttrIDSetObjectColor(const IPObjectStruct *PObj, int Color)


Description:

Routine to set the color of an object.

Parameters:

PObj: Object to set its color to Color. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Color: New color for PObj.


Returned Value:

void


See Also:

AttrIDGetObjectColor AttrIDSetObjectRGBColor AttrIDGetObjectRGBColor AttrIDGetObjectWidth AttrIDSetObjectWidth AttrIDSetObjectIntAttrib AttrIDSetColor

Keywords:

attributes color


AttrIDSetObjectIntAttrib

(attribute_id.c:255)

Prototype:

  void AttrIDSetObjectIntAttrib(const IPObjectStruct *PObj,
                                IPAttrIDType ID,
                                int Data)


Description:

Routine to set an integer attribute for an object.

Parameters:

PObj: To add an integer attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrIDGetObjectIntAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDSetObjectObjAttrib

(attribute_id.c:691)

Prototype:

  void AttrIDSetObjectObjAttrib(const IPObjectStruct *PObj,
                                IPAttrIDType ID,
                                IPObjectStruct *Data,
                                int CopyData)


Description:

Routine to set an object attribute for an object.

Parameters:

PObj: To add an object attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.
CopyData: f TRUE, Data object is duplicated first.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectStrAttrib AttrIDGetObjAttrib

Keywords:

attributes


AttrIDSetObjectPtrAttrib

(attribute_id.c:317)

Prototype:

  void AttrIDSetObjectPtrAttrib(const IPObjectStruct *PObj,
                                IPAttrIDType ID,
                                VoidPtr Data)


Description:

Routine to set a pointer attribute for an object.

Parameters:

PObj: To add a pointer attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDSetObjectRealAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRefPtrAttrib AttrIDGetObjectRefPtrAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDSetObjectRGBColor

(attribute_id.c:117)

Prototype:

  void AttrIDSetObjectRGBColor(const IPObjectStruct *PObj,
                               int Red,
                               int Green,
                               int Blue)


Description:

Routine to set the RGB color of an object.

Parameters:

PObj: Object to set its RGB color. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Red, Green, Blue: Component of color.


Returned Value:

void


See Also:

AttrIDSetObjectColor AttrIDGetObjectColor AttrIDGetObjectRGBColor AttrIDGetObjectWidth AttrIDSetObjectWidth AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDSetRGBColor

Keywords:

attributes color rgb


AttrIDSetObjectRealAttrib

(attribute_id.c:441)

Prototype:

  void AttrIDSetObjectRealAttrib(const IPObjectStruct *PObj,
                                 IPAttrIDType ID,
                                 IrtRType Data)


Description:

Routine to set a real attribute for an object.

Parameters:

PObj: To add a real attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectStrAttrib

Keywords:

attributes


AttrIDSetObjectRealPtrAttrib

(attribute_id.c:505)

Prototype:

  void AttrIDSetObjectRealPtrAttrib(const IPObjectStruct *PObj,
                                    IPAttrIDType ID,
                                    IrtRType *Data,
                                    int DataLen)


Description:

Routine to set a real * attribute for an object.

Parameters:

PObj: To add a real * attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.
DataLen: If positive allocates and copies that many reals from Data. Otherwise, Data (of length -DataLen) is used directly.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectStrAttrib AttrIDGetObjectStrAttrib AttrIDGetObjAttrib

Keywords:

attributes


AttrIDSetObjectRefPtrAttrib

(attribute_id.c:379)

Prototype:

  void AttrIDSetObjectRefPtrAttrib(const IPObjectStruct *PObj,
                                   IPAttrIDType ID,
                                   VoidPtr Data)


Description:

Routine to set a pointer reference attribute for an object.

Parameters:

PObj: To add a pointer reference attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDSetObjectRealAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRefPtrAttrib AttrIDGetObjectRefPtrAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDSetObjectStrAttrib

(attribute_id.c:627)

Prototype:

  void AttrIDSetObjectStrAttrib(const IPObjectStruct *PObj,
                                IPAttrIDType ID,
                                const char *Data)


Description:

Routine to set a string attribute for an object.

Parameters:

PObj: To add a string attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDSetObjectUVAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDSetObjectPtrAttrib AttrIDGetObjectStrAttrib AttrIDGetObjectObjAttrib AttrIDGetObjectRealAttrib AttrIDGetObjAttrib

Keywords:

attributes


AttrIDSetObjectUVAttrib

(attribute_id.c:567)

Prototype:

  void AttrIDSetObjectUVAttrib(const IPObjectStruct *PObj,
                               IPAttrIDType ID,
                               IrtRType U,
                               IrtRType V)


Description:

Routine to set a UV attribute for an object.

Parameters:

PObj: To add a real attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
ID: ID of attribute.
U, V: Content of attribute.


Returned Value:

void


See Also:

AttrIDSetObjectIntAttrib AttrIDGetObjectIntAttrib AttrIDGetObjectPtrAttrib AttrIDGetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDGetObjectRealPtrAttrib AttrIDGetObjectStrAttrib AttrIDSetObjectObjAttrib AttrIDSetObjAttrib AttrIDGetObjectObjAttrib AttrIDGetObjAttrib AttrIDGetObjectUVAttrib AttrIDSetObjectPtrAttrib AttrIDSetObjectStrAttrib

Keywords:

attributes


AttrIDSetObjectWidth

(attribute_id.c:199)

Prototype:

  void AttrIDSetObjectWidth(const IPObjectStruct *PObj, IrtRType Width)


Description:

Routine to set the width of an object.

Parameters:

PObj: Object to set its width to Width. Note the semantics that the object itself is noty modified and is considered const - only its attributes are affected.
Width: New width for PObj.


Returned Value:

void


See Also:

AttrIDSetObjectColor AttrIDGetObjectColor AttrIDSetObjectRGBColor AttrIDGetObjectRGBColor AttrIDGetObjectWidth AttrIDSetObjectRealAttrib AttrIDSetObjectRealPtrAttrib AttrIDSetWidth

Keywords:

attributes width


AttrPropagateAttr

(attribut.c:1674)

Prototype:

  void AttrPropagateAttr(const IPObjectStruct *PObj, const char *AttrName)


Description:

Propagate attributes from list objects down into their elements. Non propagatable attributes are accumulated or ignored as follows: "animation" is accumulated. "invisible" is ignored.

Parameters:

PObj: To propagate down Attr attributes.
AttrName: Name of attribute to propagate or NULL to propagate all attributes.


Returned Value:

void


Keywords:

attributes files parser


AttrPropagateRGB2Vrtx

(attribut.c:1870)

Prototype:

  void AttrPropagateRGB2Vrtx(const IPObjectStruct *PObj)


Description:

Propagates "RGB" attributes from a poly objects down into the vertices, in place.

Parameters:

PObj: To propagate down "RGB" attributes.


Returned Value:

void


Keywords:

attributes files parser


AttrSetObjAttrib

(attribut.c:1176)

Prototype:

  void AttrSetObjAttrib(IPAttributeStruct **Attrs,
                        const char *Name,
                        IPObjectStruct *Data,
                        int CopyData)


Description:

Routine to set an object attribute.

Parameters:

Attrs: Attribute list where to place new attribute.
Name: Name of the newly introduced attribute.
Data: Pointer attribute to save.
CopyData: If TRUE, object Data is duplicated first.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjAttrib2

Keywords:

attributes


AttrSetObjAttrib2

(attribut.c:1223)

Prototype:

  void AttrSetObjAttrib2(IPAttributeStruct **Attrs,
                         IPAttrNumType AttribNum,
                         IPObjectStruct *Data,
                         int CopyData)


Description:

Routine to set an object attribute.

Parameters:

Attrs: Attribute list where to place new attribute.
AttribNum: Unique ID derived from name of requested attribute.
Data: Pointer attribute to save.
CopyData: If TRUE, object Data is duplicated first.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjAttrib

Keywords:

attributes


AttrSetObjectColor

(attribut.c:55)

Prototype:

  void AttrSetObjectColor(const IPObjectStruct *PObj, int Color)


Description:

Routine to set the color of an object.

Parameters:

PObj: Object to set its color to Color. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Color: New color for PObj.


Returned Value:

void


See Also:

AttrGetObjectColor AttrSetObjectRGBColor AttrGetObjectRGBColor AttrGetObjectWidth AttrSetObjectWidth AttrSetObjectIntAttrib AttrIDSetColor

Keywords:

attributes color


AttrSetObjectIntAttrib

(attribut.c:247)

Prototype:

  void AttrSetObjectIntAttrib(const IPObjectStruct *PObj,
                              const char *Name,
                              int Data)


Description:

Routine to set an integer attribute for an object.

Parameters:

PObj: To add an integer attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectIntAttrib2

Keywords:

attributes


AttrSetObjectIntAttrib2

(attribut.c:279)

Prototype:

  void AttrSetObjectIntAttrib2(const IPObjectStruct *PObj,
                               IPAttrNumType AttribNum,
                               int Data)


Description:

Routine to set an integer attribute for an object.

Parameters:

PObj: To add an integer attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectIntAttrib

Keywords:

attributes


AttrSetObjectObjAttrib

(attribut.c:1108)

Prototype:

  void AttrSetObjectObjAttrib(const IPObjectStruct *PObj,
                              const char *Name,
                              IPObjectStruct *Data,
                              int CopyData)


Description:

Routine to set an object attribute for an object.

Parameters:

PObj: To add an object attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.
CopyData: f TRUE, Data object is duplicated first.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectObjAttrib2

Keywords:

attributes


AttrSetObjectObjAttrib2

(attribut.c:1143)

Prototype:

  void AttrSetObjectObjAttrib2(const IPObjectStruct *PObj,
                               IPAttrNumType AttribNum,
                               IPObjectStruct *Data,
                               int CopyData)


Description:

Routine to set an object attribute for an object.

Parameters:

PObj: To add an object attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.
CopyData: If TRUE, Data object is duplicated first.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectObjAttrib

Keywords:

attributes


AttrSetObjectPtrAttrib

(attribut.c:368)

Prototype:

  void AttrSetObjectPtrAttrib(const IPObjectStruct *PObj,
                              const char *Name,
                              VoidPtr Data)


Description:

Routine to set a pointer attribute for an object.

Parameters:

PObj: To add a pointer attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrSetObjectPtrAttrib2

Keywords:

attributes


AttrSetObjectPtrAttrib2

(attribut.c:402)

Prototype:

  void AttrSetObjectPtrAttrib2(const IPObjectStruct *PObj,
                               IPAttrNumType AttribNum,
                               VoidPtr Data)


Description:

Routine to set a pointer attribute for an object.

Parameters:

PObj: To add a pointer attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrSetObjectPtrAttrib

Keywords:

attributes


AttrSetObjectRGBColor

(attribut.c:109)

Prototype:

  void AttrSetObjectRGBColor(const IPObjectStruct *PObj,
                             int Red,
                             int Green,
                             int Blue)


Description:

Routine to set the RGB color of an object.

Parameters:

PObj: Object to set its RGB color. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Red, Green, Blue: Component of color.


Returned Value:

void


See Also:

AttrSetObjectColor AttrGetObjectColor AttrGetObjectRGBColor AttrGetObjectWidth AttrSetObjectWidth AttrSetObjectRealAttrib AttrSetObjectRealPtrAttrib

Keywords:

attributes color rgb


AttrSetObjectRealAttrib

(attribut.c:617)

Prototype:

  void AttrSetObjectRealAttrib(const IPObjectStruct *PObj,
                               const char *Name,
                               IrtRType Data)


Description:

Routine to set a real attribute for an object.

Parameters:

PObj: To add a real attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrGetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRealAttrib2

Keywords:

attributes


AttrSetObjectRealAttrib2

(attribut.c:649)

Prototype:

  void AttrSetObjectRealAttrib2(const IPObjectStruct *PObj,
                                IPAttrNumType AttribNum,
                                IrtRType Data)


Description:

Routine to set a real attribute for an object.

Parameters:

PObj: To add a real attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrGetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRealAttrib

Keywords:

attributes


AttrSetObjectRealPtrAttrib

(attribut.c:740)

Prototype:

  void AttrSetObjectRealPtrAttrib(const IPObjectStruct *PObj,
                                  const char *Name,
                                  IrtRType *Data,
                                  int DataLen)


Description:

Routine to set a real * attribute for an object.

Parameters:

PObj: To add a real * attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.
DataLen: If positive allocates and copies that many reals from Data. Otherwise, Data (of length -DataLen) is used directly.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrGetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib2 AttrGetObjectRealPtrAttrib2 AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRealAttrib2

Keywords:

attributes


AttrSetObjectRealPtrAttrib2

(attribut.c:776)

Prototype:

  void AttrSetObjectRealPtrAttrib2(const IPObjectStruct *PObj,
                                   IPAttrNumType AttribNum,
                                   IrtRType *Data,
                                   int DataLen)


Description:

Routine to set a real * attribute for an object.

Parameters:

PObj: To add a real * attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.
DataLen: If positive allocates and copies that many reals from Data. Otherwise, Data (of length -DataLen) is used directly.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrGetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRealAttrib

Keywords:

attributes


AttrSetObjectRefPtrAttrib

(attribut.c:493)

Prototype:

  void AttrSetObjectRefPtrAttrib(const IPObjectStruct *PObj,
                                 const char *Name,
                                 VoidPtr Data)


Description:

Routine to set a pointer reference attribute for an object.

Parameters:

PObj: To add a pointer reference attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrSetObjectRefPtrAttrib2

Keywords:

attributes


AttrSetObjectRefPtrAttrib2

(attribut.c:527)

Prototype:

  void AttrSetObjectRefPtrAttrib2(const IPObjectStruct *PObj,
                                  IPAttrNumType AttribNum,
                                  VoidPtr Data)


Description:

Routine to set a pointer reference attribute for an object.

Parameters:

PObj: To add a pointer reference attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrSetObjectStrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectRefPtrAttrib AttrGetObjectRefPtrAttrib AttrSetObjectRefPtrAttrib

Keywords:

attributes


AttrSetObjectStrAttrib

(attribut.c:986)

Prototype:

  void AttrSetObjectStrAttrib(const IPObjectStruct *PObj,
                              const char *Name,
                              const char *Data)


Description:

Routine to set a string attribute for an object.

Parameters:

PObj: To add a string attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectStrAttrib2

Keywords:

attributes


AttrSetObjectStrAttrib2

(attribut.c:1018)

Prototype:

  void AttrSetObjectStrAttrib2(const IPObjectStruct *PObj,
                               IPAttrNumType AttribNum,
                               const char *Data)


Description:

Routine to set a string attribute for an object.

Parameters:

PObj: To add a string attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
Data: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrSetObjectRealAttrib AttrGetObjectRealAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrSetObjectUVAttrib AttrGetObjectUVAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrSetObjectStrAttrib

Keywords:

attributes


AttrSetObjectUVAttrib

(attribut.c:866)

Prototype:

  void AttrSetObjectUVAttrib(const IPObjectStruct *PObj,
                             const char *Name,
                             IrtRType U,
                             IrtRType V)


Description:

Routine to set a UV attribute for an object.

Parameters:

PObj: To add a UV attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Name: Name of attribute.
U, V: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrGetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectUVAttrib AttrSetObjectUVAttrib2

Keywords:

attributes


AttrSetObjectUVAttrib2

(attribut.c:899)

Prototype:

  void AttrSetObjectUVAttrib2(const IPObjectStruct *PObj,
                              IPAttrNumType AttribNum,
                              IrtRType U,
                              IrtRType V)


Description:

Routine to set a UV attribute for an object.

Parameters:

PObj: To add a UV attribute for. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
AttribNum: nique ID derived from name of requested attribute.
U, V: Content of attribute.


Returned Value:

void


See Also:

AttrSetObjectIntAttrib AttrGetObjectIntAttrib AttrSetObjectPtrAttrib AttrGetObjectPtrAttrib AttrGetObjectRealAttrib AttrSetObjectStrAttrib AttrSetObjectRealPtrAttrib AttrGetObjectRealPtrAttrib AttrGetObjectStrAttrib AttrSetObjectObjAttrib AttrSetObjAttrib AttrGetObjectObjAttrib AttrGetObjAttrib AttrGetObjectUVAttrib AttrSetObjectUVAttrib

Keywords:

attributes


AttrSetObjectWidth

(attribut.c:191)

Prototype:

  void AttrSetObjectWidth(const IPObjectStruct *PObj, IrtRType Width)


Description:

Routine to set the width of an object.

Parameters:

PObj: Object to set its width to Width. Note the semantics that the object itself is not modified and is considered const - only its attributes are affected.
Width: New width for PObj.


Returned Value:

void


See Also:

AttrSetObjectColor AttrGetObjectColor AttrSetObjectRGBColor AttrGetObjectRGBColor AttrGetObjectWidth AttrSetObjectRealAttrib AttrSetObjectRealPtrAttrib

Keywords:

attributes width


BspCrvReadFromFile

(bsp_read.c:34)

Prototype:

  CagdCrvStruct *BspCrvReadFromFile(const char *FileName,
                                    char **ErrStr,
                                    int *ErrLine)


Description:

Reads from a file B-spline curve(s). If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the B-spline curve from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdCrvStruct *: The read curve, or NULL if an error occurred.


Keywords:

files read


BspCrvReadFromFile2

(bsp_read.c:99)

Prototype:

  CagdCrvStruct *BspCrvReadFromFile2(int Handler,
                                     CagdBType NameWasRead,
                                     char **ErrStr,
                                     int *ErrLine)


Description:

Reads from a file a B-spline curve. If NameWasRead is TRUE, it is assumed prefix "[CURVE BSPLINE" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of curve. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: RUE if "[CURVE BSPLINE" has been read, FALSE otherwise.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdCrvStruct *: The read curve, or NULL if an error occurred.


Keywords:

files read stream


BspCrvWriteToFile

(bsp_wrt.c:39)

Prototype:

  int BspCrvWriteToFile(const CagdCrvStruct *Crvs,
                        const char *FileName,
                        int Indent,
                        const char *Comment,
                        char **ErrStr)


Description:

Writes Bspline curve(s) list into file. Returns TRUE if succesful, FALSE otherwise. If Comment is NULL, no comment is wrriten, if "" only internal comment is written.

Parameters:

Crvs: To write to file FileName.
FileName: Name of file to open so we can write Crvs in.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


BspCrvWriteToFile2

(bsp_wrt.c:83)

Prototype:

  int BspCrvWriteToFile2(const CagdCrvStruct *Crvs,
                         int Handler,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Writes B-spline curve(s) list into file. Returns TRUE if successful, FALSE otherwise. The file descriptor is not closed. If Comment is NULL, no comment is written, if "" only internal comment is written.

Parameters:

Crvs: To write to open stream.
Handler: A handler to the open stream.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


BspSrfReadFromFile

(bsp_read.c:283)

Prototype:

  CagdSrfStruct *BspSrfReadFromFile(const char *FileName,
                                    char **ErrStr,
                                    int *ErrLine)


Description:

Reads from a file B-spline surface(s). If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the Bspline surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdSrfStruct *: The read surface, or NULL if an error occurred.


Keywords:

files read


BspSrfReadFromFile2

(bsp_read.c:348)

Prototype:

  CagdSrfStruct *BspSrfReadFromFile2(int Handler,
                                     CagdBType NameWasRead,
                                     char **ErrStr,
                                     int *ErrLine)


Description:

Reads from a file a B-spline surface. If NameWasRead is TRUE, it is assumed prefix "[SURFACE BSPLINE" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: TRUE if "[SURFACE BSPLINE" has been read, FALSE otherwise.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdSrfStruct *: The read surface, or NULL if an error occurred.


Keywords:

files read stream


BspSrfWriteToFile

(bsp_wrt.c:187)

Prototype:

  int BspSrfWriteToFile(const CagdSrfStruct *Srfs,
                        const char *FileName,
                        int Indent,
                        const char *Comment,
                        char **ErrStr)


Description:

Writes Bspline surface(s) list into file. Returns TRUE if succesful, FALSE otherwise. If Comment is NULL, no comment is wrriten, if "" only internal comment is written.

Parameters:

Srfs: To write to file FileName.
FileName: Name of file to open so we can write Srfs in.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


BspSrfWriteToFile2

(bsp_wrt.c:231)

Prototype:

  int BspSrfWriteToFile2(const CagdSrfStruct *Srfs,
                         int Handler,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Writes Bspline surface(s) list into file. Returns TRUE if succesful, FALSE otherwise. The file descriptor is not closed. If Comment is NULL, no comment is wrriten, if "" only internal comment is written.

Parameters:

Srfs: To write to open stream.
Handler: A handler to the open stream.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


BzrCrvReadFromFile

(bzr_read.c:34)

Prototype:

  CagdCrvStruct *BzrCrvReadFromFile(const char *FileName,
                                    char **ErrStr,
                                    int *ErrLine)


Description:

Reads from a file Bezier curve(s). If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the Bezier curve from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdCrvStruct *: The read curve, or NULL if an error occurred.


Keywords:

files read


BzrCrvReadFromFile2

(bzr_read.c:99)

Prototype:

  CagdCrvStruct *BzrCrvReadFromFile2(int Handler,
                                     CagdBType NameWasRead,
                                     char **ErrStr,
                                     int *ErrLine)


Description:

Reads from a file a Bezier curve. If NameWasRead is TRUE, it is assumed prefix "[CURVE BEZIER" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of curve. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: TRUE if "[CURVE BEZIER" has been read, FALSE otherwise.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdCrvStruct *: The read curve, or NULL if an error occurred.


Keywords:

files read stream


BzrCrvWriteToFile

(bzr_wrt.c:39)

Prototype:

  int BzrCrvWriteToFile(const CagdCrvStruct *Crvs,
                        const char *FileName,
                        int Indent,
                        const char *Comment,
                        char **ErrStr)


Description:

Writes Bezier curve(s) list into file. Returns TRUE if succesful, FALSE otherwise. If Comment is NULL, no comment is wrriten, if "" only internal comment is written.

Parameters:

Crvs: To write to file FileName.
FileName: Name of file to open so we can write Crvs in.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


BzrCrvWriteToFile2

(bzr_wrt.c:83)

Prototype:

  int BzrCrvWriteToFile2(const CagdCrvStruct *Crvs,
                         int Handler,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Writes Bezier curve(s) list into file. Returns TRUE if successful, FALSE otherwise. The file descriptor is not closed. If Comment is NULL, no comment is written, if "" only internal comment is written.

Parameters:

Crvs: To write to open stream.
Handler: A handler to the open stream.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


BzrSrfReadFromFile

(bzr_read.c:233)

Prototype:

  CagdSrfStruct *BzrSrfReadFromFile(const char *FileName,
                                    char **ErrStr,
                                    int *ErrLine)


Description:

Reads from a file Bezier surface(s). If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the Bezier surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdSrfStruct *: The read surface, or NULL if an error occurred.


Keywords:

files read


BzrSrfReadFromFile2

(bzr_read.c:298)

Prototype:

  CagdSrfStruct *BzrSrfReadFromFile2(int Handler,
                                     CagdBType NameWasRead,
                                     char **ErrStr,
                                     int *ErrLine)


Description:

Reads from a file a Bezier surface. If NameWasRead is TRUE, it is assumed prefix "[SURFACE BEZIER" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: RUE if "[SURFACE BEZIER" has been read, FALSE otherwise.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdSrfStruct *: The read surface, or NULL if an error occurred.


Keywords:

files read stream


BzrSrfWriteToFile

(bzr_wrt.c:180)

Prototype:

  int BzrSrfWriteToFile(const CagdSrfStruct *Srfs,
                        const char *FileName,
                        int Indent,
                        const char *Comment,
                        char **ErrStr)


Description:

Writes Bezier surface(s) list into file. Returns TRUE if succesful, FALSE otherwise. If Comment is NULL, no comment is wrriten, if "" only internal comment is written.

Parameters:

Srfs: To write to file FileName.
FileName: Name of file to open so we can write Srfs in.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


BzrSrfWriteToFile2

(bzr_wrt.c:224)

Prototype:

  int BzrSrfWriteToFile2(const CagdSrfStruct *Srfs,
                         int Handler,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Writes Bezier surface(s) list into file. Returns TRUE if successful, FALSE otherwise. The file descriptor is not closed. If Comment is NULL, no comment is written, if "" only internal comment is written.

Parameters:

Srfs: To write to open stream.
Handler: A handler to the open stream.
Indent: Primary indentation. All information will be written from the column specified by Indent.
Comment: Optional, to describe the geometry.
ErrStr: If an error occurs, to describe the error.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


CagdCrvReadFromFile

(cagdread.c:31)

Prototype:

  CagdCrvStruct *CagdCrvReadFromFile(const char *FileName,
                                     char **ErrStr,
                                     int *ErrLine)


Description:

Reads from a file curve(s). If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the curve from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdCrvStruct *: The read curve, or NULL if an error occurred.


Keywords:

files read


CagdCrvReadFromFile2

(cagdread.c:170)

Prototype:

  CagdCrvStruct *CagdCrvReadFromFile2(int Handler, char **ErrStr, int *ErrLine)


Description:

Reads from a stream a curve. It is assumed prefix "[CURVE" has already been read. This is useful for a global parser which invokes this routine to read from a stream several times as a parent controller. For exactly this reason, the given stream descriptor is NOT closed in the end. If error is found in reading the stream, ErrStr is set to a string describing it and ErrLine to line it occurred in stream relative to beginning of curve. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in stream of the error, if occurred.


Returned Value:

CagdCrvStruct *: The read curve, or NULL if an error occurred.


Keywords:

files read stream


CagdCrvWriteToFile

(cagd_wrt.c:34)

Prototype:

  int CagdCrvWriteToFile(const CagdCrvStruct *Crvs,
                         const char *FileName,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Generic routine to write curve(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Crvs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


CagdCrvWriteToFile2

(cagd_wrt.c:75)

Prototype:

  int CagdCrvWriteToFile2(const CagdCrvStruct *Crvs,
                          int Handler,
                          int Indent,
                          const char *Comment,
                          char **ErrStr)


Description:

Generic routine to write curve(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Crvs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


CagdCrvWriteToFile3

(cagd_wrt.c:116)

Prototype:

  int CagdCrvWriteToFile3(const CagdCrvStruct *Crvs,
                          FILE *f,
                          int Indent,
                          const char *Comment,
                          char **ErrStr)


Description:

Generic routine to write curve(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Crvs: To be saved in file f.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


CagdSrfReadFromFile

(cagdread.c:99)

Prototype:

  CagdSrfStruct *CagdSrfReadFromFile(const char *FileName,
                                     char **ErrStr,
                                     int *ErrLine)


Description:

Reads from a file surface(s). If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

CagdSrfStruct *: The read surface, or NULL if an error occurred.


Keywords:

files read


CagdSrfReadFromFile2

(cagdread.c:231)

Prototype:

  CagdSrfStruct *CagdSrfReadFromFile2(int Handler, char **ErrStr, int *ErrLine)


Description:

Reads from a stream a surface. It is assumed prefix "[SURFACE" has already been read. This is useful for a global parser which invokes this routine to read from a stream several times as a parent controller. For exactly this reason, the given stream descriptor is NOT closed in the end. If error is found in reading the stream, ErrStr is set to a string describing it and ErrLine to line it occurred in stream relative to beginning of surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in stream of the error, if occurred.


Returned Value:

CagdSrfStruct *: The read surface, or NULL if an error occurred.


Keywords:

files read stream


CagdSrfWriteToFile

(cagd_wrt.c:148)

Prototype:

  int CagdSrfWriteToFile(const CagdSrfStruct *Srfs,
                         const char *FileName,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Generic routine to write surface(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Srfs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


CagdSrfWriteToFile2

(cagd_wrt.c:189)

Prototype:

  int CagdSrfWriteToFile2(const CagdSrfStruct *Srfs,
                          int Handler,
                          int Indent,
                          const char *Comment,
                          char **ErrStr)


Description:

Generic routine to write surface(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Srfs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write stream


CagdSrfWriteToFile3

(cagd_wrt.c:230)

Prototype:

  int CagdSrfWriteToFile3(const CagdSrfStruct *Srfs,
                          FILE *f,
                          int Indent,
                          const char *Comment,
                          char **ErrStr)


Description:

Generic routine to write surface(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Srfs: To be saved in file f.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


IPAllocObject

(allocate.c:324)

Prototype:

  IPObjectStruct *IPAllocObject(const char *Name,
                                IPObjStructType ObjType,
                                IPObjectStruct *Pnext)


Description:

Allocates one Object Structure.

Parameters:

Name: Name to assign to the newly allocated object.
ObjType: bject type of newly allocated object.
Pnext: Reference to initialize the Pnext slot of the allocated object.


Returned Value:

IPObjectStruct *: A new allocated object structure.


Keywords:

allocation


IPAllocPolygon

(allocate.c:293)

Prototype:

  IPPolygonStruct *IPAllocPolygon(IrtBType Tags,
                                  IPVertexStruct *V,
                                  IPPolygonStruct *Pnext)


Description:

Allocates one Polygon Structure.

Parameters:

Tags: Tags to initialize the Tags slot of allocated polygon.
V: Reference to initialize the PVertex slot of allocated polygon.
Pnext: Reference to initialize the Pnext slot of allocated polygon.


Returned Value:

IPPolygonStruct *: A new allocated polygon structure.


Keywords:

allocation


IPAllocVertex

(allocate.c:265)

Prototype:

  IPVertexStruct *IPAllocVertex(IrtBType Tags,
                                IPPolygonStruct *PAdj,
                                IPVertexStruct *Pnext)


Description:

Allocates one Vertex Structure.

Parameters:

Tags: Tags to initialize the Tags slot of allocated vertex.
PAdj: PAdj to initialize the PAdj slot of allocated vertex.
Pnext: Reference to initialize the Pnext slot of the allocated vertex.


Returned Value:

IPVertexStruct *: A new allocated vertex structure.


Keywords:

allocation


IPAllocVertex2

(allocate.c:236)

Prototype:

  IPVertexStruct *IPAllocVertex2(IPVertexStruct *Pnext)


Description:

Allocates one Vertex Structure.

Parameters:

Pnext: Reference to initialize the Pnext slot of the allocated vertex.


Returned Value:

IPVertexStruct *: A new allocated vertex structure.


Keywords:

allocation


IPAppendListObjects

(linklist.c:515)

Prototype:

  IPObjectStruct *IPAppendListObjects(IPObjectStruct *ListObj1,
                                      IPObjectStruct *ListObj2)


Description:

Appends two lists.

Parameters:

ListObj1, ListObj2: The two list objects to append.


Returned Value:

IPObjectStruct *: A combined list.


See Also:

IPAppendObjLists IPObjLnkListToListObject

Keywords:




IPAppendObjLists

(linklist.c:482)

Prototype:

  IPObjectStruct *IPAppendObjLists(IPObjectStruct *OList1,
                                   IPObjectStruct *OList2)


Description:

Appends two object lists together.

Parameters:

OList1, OList2: Two lists to append.


Returned Value:

IPObjectStruct *: Appended list.


See Also:

IPAppendListObjects IPObjLnkListToListObject

Keywords:

linked lists


IPAppendPolyLists

(linklist.c:406)

Prototype:

  IPPolygonStruct *IPAppendPolyLists(IPPolygonStruct *PList1,
                                     IPPolygonStruct *PList2)


Description:

Appends two poly lists together.

Parameters:

PList1, PList2: Two lists to append.


Returned Value:

IPPolygonStruct *: Appended list.


Keywords:

linked lists


IPAppendVrtxLists

(linklist.c:332)

Prototype:

  IPVertexStruct *IPAppendVrtxLists(IPVertexStruct *VList1,
                                    IPVertexStruct *VList2)


Description:

Appends two vertex lists together.

Parameters:

VList1, VList2: Two lists to append.


Returned Value:

IPVertexStruct *: Appended list.


Keywords:

linked lists


IPCagdPlgns2IritPlgns

(ip_cnvrt.c:196)

Prototype:

  IPPolygonStruct *IPCagdPlgns2IritPlgns(CagdPolygonStruct *Polys,
                                         CagdBType ComputeUV)


Description:

Routine to convert a cagd polygon (triangle) into irit polygon. Old cagd polygons are freed!

Parameters:

Polys: Polygons in cagd library format to convert.
ComputeUV: Do we have UV values as well, at the vertices?


Returned Value:

IPPolygonStruct *: Same polygons in IRIT format.


See Also:

IPCagdPllns2IritPllns IPIritPlgns2CagdPlgns

Keywords:




IPCagdPllns2IritPllns

(ip_cnvrt.c:55)

Prototype:

  IPPolygonStruct *IPCagdPllns2IritPllns(CagdPolylineStruct *Polys)


Description:

Routine to convert a cagd polyline to irit polyline. Old cagd polylines are freed!

Parameters:

Polys: Polygons in cagd_lib form to be converted in IRIT form, in place.


Returned Value:

IPPolygonStruct *: Same polylines in IRIT format.


See Also:

IPCagdPlgns2IritPlgns CagdCnvrtPolyline2LinBspCrv

Keywords:




IPCloseStream

(iritprs1.c:525)

Prototype:

  void IPCloseStream(int Handler, int Free)


Description:

Close a data file for read/write.

Parameters:

Handler: A handler to the open stream.
Free: If TRUE, release content.


Returned Value:

void


Keywords:

files stream parser


IPClosedPolysToOpen

(ip_cnvrt.c:2415)

Prototype:

  void IPClosedPolysToOpen(IPPolygonStruct *Pls)


Description:

Forces the given list of polygons to have open list of vertices

Parameters:

Pls: Polygons to process, in place.


Returned Value:

void


See Also:

IPOpenPolysToClosed GMVrtxListToCircOrLin

Keywords:




IPCnvDataToIrit

(cnv2irit.c:123)

Prototype:

  void IPCnvDataToIrit(const IPObjectStruct *PObjects)


Description:

Converts the given Objects to .irt style. Output goes to the function IPCnvPrintFunc which echos the lines, one at a time.

Parameters:

PObjects: To convert to .irt style.


Returned Value:

void


See Also:

IPCnvSetPrintFunc IPCnvSetDelimitChar IPCnvDataToIritOneObject

Keywords:




IPCnvDataToIritAttribs

(cnv2irit.c:592)

Prototype:

  void IPCnvDataToIritAttribs(const char *Indent,
                              const char *ObjName,
                              const IPAttributeStruct *Attr)


Description:

Converts attributes PObject to .irt style

Parameters:

Indent: Level of indentation, as white spaces string.
ObjName: Name of object these attributes are for.
Attr: Attributes to convert to irit scripting format.


Returned Value:

void


See Also:

IPCnvDataToIrit IPCnvSetPrintFunc

Keywords:




IPCnvDataToIritOneObject

(cnv2irit.c:333)

Prototype:

  void IPCnvDataToIritOneObject(const char *Indent,
                                const IPObjectStruct *PObj,
                                int Level)


Description:

Converts one object PObject to .irt style

Parameters:

Indent: Level of indentation, as white spaces string
PObj: Object to convert to .irt style.
Level: Nesting level of this object.


Returned Value:

void


See Also:

IPCnvDataToIrit IPCnvSetPrintFunc

Keywords:




IPCnvEstimateBndryVrtxPlaneNrml

(cnv2irit.c:1755)

Prototype:

  int IPCnvEstimateBndryVrtxPlaneNrml(const IPPolyVrtxArrayStruct *PVIdx,
                                      int BndryVrtxIdx,
                                      IrtVecType PlaneNrml)


Description:

Estimate, for a boundry vertex, the plane of the boundary.

Parameters:

PVIdx: A mesh to search in.
BndryVrtxIdx: oundary vertex index to estimate the boundary plane here.
PlaneNrml: Where to save the computed boundary plane normal.


Returned Value:

int: TRUE if successful, FALSE otherwise.


See Also:

IPCnvFindAdjacentPoly IPCnvFindAdjacentEdge IPCnvPolyVrtxNeighbors IPCnvrtIritPolyToPolyVrtxArray IPCnvIsVertexBoundary

Keywords:




IPCnvFindAdjacentEdge

(cnv2irit.c:1850)

Prototype:

  IPVertexStruct *IPCnvFindAdjacentEdge(const IPPolyVrtxArrayStruct *PVIdx,
                                        int ThisPolyIdx,
                                        int FirstVertexIndex,
                                        int SecondVertexIndex)


Description:

Find out the adjacent edge of the given edge defined by vertices (FirstVertexIndex, SecondVertexIndex). The edge in the found polygon is assumed to be revised as (SecondVertexIndex, FirstVertexIndex).

Parameters:

PVIdx: A mesh to search the adjacent edge in.
ThisPolyIdx: If negative ignored. Otherwise, allow unoriented meshes and researches for the edge in the adjacent poly.
FirstVertexIndex, SecondVertexIndex: The edge to search its adjacent edge.


Returned Value:

IPVertexStruct *: Pointer to the adjacent edge, or NULL if error.


See Also:

IPCnvFindAdjacentPoly IPCnvPolyVrtxNeighbors IPCnvIsVertexBoundary IPCnvrtIritPolyToPolyVrtxArray

Keywords:




IPCnvFindAdjacentPoly

(cnv2irit.c:1925)

Prototype:

  IPPolygonStruct *IPCnvFindAdjacentPoly(const IPPolyVrtxArrayStruct *PVIdx,
                                         const IPVertexStruct *V,
                                         const IPVertexStruct *VNext)
  


Description:

Find out the adjacent polygon that use the edge (V, V -> Pnext). The edge in this polygon will be (V -> Pnext, V).

Parameters:

PVIdx: Data structure of original mesh.
V, VNext: The edge is defined from V to VNext.


Returned Value:

IPPolygonStruct *: Pointer to the adjacent polygon.


See Also:

IPCnvFindAdjacentEdge IPCnvPolyVrtxNeighbors IPCnvIsVertexBoundary IPCnvrtIritPolyToPolyVrtxArray

Keywords:




IPCnvIsVertexBoundary

(cnv2irit.c:1701)

Prototype:

  int IPCnvIsVertexBoundary(const IPPolyVrtxArrayStruct *PVIdx, int VertexIndex)


Description:

Find out if the given vertex is a boundary vertex. A boundary vertex is a vertex that does not have polygons completely around it, forming a closed ring.

Parameters:

PVIdx: A mesh to search the adjacent edge in.
VertexIndex: The vertex index to examine if a boundary vertex.


Returned Value:

int: TRUE if examined vertex is a boundary vertex, FALSE otherwise.


See Also:

IPCnvFindAdjacentPoly IPCnvFindAdjacentEdge IPCnvPolyVrtxNeighbors IPCnvrtIritPolyToPolyVrtxArray IPCnvEstimateBndryVrtxPlaneNrml

Keywords:




IPCnvPolyVrtxNeighbors

(cnv2irit.c:1548)

Prototype:

  int *IPCnvPolyVrtxNeighbors(const IPPolyVrtxArrayStruct *PVIdx,
                              int VIdx,
                              int Ring)


Description:

Given a vertex and a mesh in IPPolyVrtxArrayStruct format, find neighbors up to the prescribed maximal distance/ring.

Parameters:

PVIdx: The input mesh to look at. Assumed that was constructed using IPCnvrtIritPolyToPolyVrtxArray with CalcPPolys TRUE.
VIdx: The index of the source vertex, zero based.
Ring: maximal topological distance from VIdx.


Returned Value:

int *: A -1 terminated vector holding the indices of neighboring vertices to VIdx, with topological distance of up to Ring.


See Also:

IPCnvrtIritPolyToPolyVrtxArray IPCnvFindAdjacentEdge IPCnvFindAdjacentEdge IPCnvIsVertexBoundary

Keywords:




IPCnvSetCompactList

(cnv2irit.c:236)

Prototype:

  int IPCnvSetCompactList(int CompactList)


Description:

Sets the way list objects are dumped - TRUE for a single list, FALSE for separated objects that are grouped into a list at the end.

Parameters:

CompactList: TRUE for compact list, FALSE for separate entities..


Returned Value:

int: Old state of compact list dump.


See Also:

IPCnvDataToIrit

Keywords:

files


IPCnvSetDelimitChar

(cnv2irit.c:206)

Prototype:

  char IPCnvSetDelimitChar(char Delimit)


Description:

Sets the delimiting chararacter. Typically ';' but can be ':' as well.

Parameters:

Delimit: The character to consider as an expression delimiting char.


Returned Value:

char: Old delimiting character.


See Also:

IPCnvDataToIrit

Keywords:

files


IPCnvSetDumpAssignName

(cnv2irit.c:265)

Prototype:

  int IPCnvSetDumpAssignName(int DumpAssignName)


Description:

If TRUE objects are dumped with an assignment to their own name. Otherwise, just the geometry is dumped with no assignment.

Parameters:

DumpAssignName: TRUE to dump assignment, FALSE for no assignment.


Returned Value:

int: Old state of dump assignments.


See Also:

IPCnvDataToIrit

Keywords:

files


IPCnvSetLeastSquaresFit

(cnv2irit.c:179)

Prototype:

  int IPCnvSetLeastSquaresFit(int MinLenFit, int Percent, IrtRType MaxError)


Description:

Fits using least squares, a new curve to the input curve with only Percent percents control points. A curve with be least squares fitted if it has more than MinLenFit control points.

Parameters:

MinLenFit: Minimum number of control point to attempt a fit.
Percent: Percent of number of control points to fit to.
MaxError: maximum allowed error (in maximum norm).


Returned Value:

int: Old percent value.


See Also:

IPCnvDataToIrit

Keywords:




IPCnvSetPrintFunc

(cnv2irit.c:146)

Prototype:

  IPPrintFuncType IPCnvSetPrintFunc(IPPrintFuncType CnvPrintFunc)


Description:

Sets the printing function to call if needs to redirect printing of dat to irt conversions. Called (indirectly) by IPCnvDataToIrit.

Parameters:

CnvPrintFunc: A function that gets a single string it should print.


Returned Value:

IPPrintFuncType: Old value of this state.


See Also:

IPCnvDataToIrit

Keywords:

files


IPCnvrtIritPolyToPolyVrtxArray

(cnv2irit.c:1980)

Prototype:

  IPPolyVrtxArrayStruct *IPCnvrtIritPolyToPolyVrtxArray(const IPObjectStruct
                                                                          *PObj,
                                                        int CalcPPolys,
                                                        int AttribMask)


Description:

Process a given polygonal model into a vertex list with each polygon having indices into the vertex list. All list are zero based.

Parameters:

PObj: A polygonal mesh to convert to PolyIdx structure.
CalcPPolys: TRUE if a polygon pointer list is to be calculated, FALSE otherwise.
AttribMask: Sets what attributes to consider when comparing for identical vertices - Bit 0 - normals should be identical in identical vertices. Bit 1 - uvvals should be identical in identical vertices. Bit 2 - rgb should be identical in identical vertices.


Returned Value:

IPPolyVrtxArrayStruct *: The polygonal mesh as PolyIdx struct.


See Also:

IPCnvFindAdjacentEdge IPCnvFindAdjacentPoly IPCnvPolyVrtxNeighbors IPCnvIsVertexBoundary

Keywords:




IPCoerceBezierToBspline

(coerce.c:232)

Prototype:

  IPObjectStruct *IPCoerceBezierToBspline(const IPObjectStruct *PObj)


Description:

Converts a Bezier freeform into a Bspline freeform.

Parameters:

PObj: Bezier geometry to convert to Bspline geometry.


Returned Value:

IPObjectStruct *: Same geometry as PObj but as Bspline.


Keywords:




IPCoerceBezierToPower

(coerce.c:154)

Prototype:

  IPObjectStruct *IPCoerceBezierToPower(const IPObjectStruct *PObj)


Description:

Converts a Bezier freeform into a power freeform.

Parameters:

PObj: Bezier geometry to convert to power geometry.


Returned Value:

IPObjectStruct *: Same geometry as PObj but in power basis.


Keywords:




IPCoerceBsplineToBezier

(coerce.c:283)

Prototype:

  IPObjectStruct *IPCoerceBsplineToBezier(const IPObjectStruct *PObj)


Description:

Convert a Bspline freeform into list of Bezier freeforms.

Parameters:

PObj: A Bspline geometry to convert to a Bezier geometry.


Returned Value:

IPObjectStruct *: A Bezier geometry representing same geometry as PObj.


Keywords:




IPCoerceCommonSpace

(coerce.c:85)

Prototype:

  CagdPointType IPCoerceCommonSpace(IPObjectStruct *PtObjList,
                                    CagdPointType Type)


Description:

Given a set of points, returns the list's common denominator that spans the space of all the points, taking into account type Type.

Parameters:

PtObjList: List of points.
Type: Point type that we must span its space as well.


Returned Value:

CagdPointType: Point type that spans the space of point type Type as well as all points in PtObjList.


Keywords:

coercion


IPCoerceGregoryToBezier

(coerce.c:127)

Prototype:

  IPObjectStruct *IPCoerceGregoryToBezier(const IPObjectStruct *PObj)


Description:

Converts a Gregory freeform into a Bezier freeform.

Parameters:

PObj: Gregory geometry to convert to Bezier geometry.


Returned Value:

IPObjectStruct *: Same geometry as PObj but in Gregory basis.


Keywords:




IPCoerceObjectPtTypeTo

(coerce.c:601)

Prototype:

  IPObjectStruct *IPCoerceObjectPtTypeTo(const IPObjectStruct *PObj, int NewType)


Description:

Coerces an object to a new object. Also about point types coercions. Points, vectors, control points and planes can always be coerced between themselves using this routine by specifying the new object type desired such as IP_OBJ_PLANE or control point type like CAGD_PT_E4_TYPE. Control points of curves and surfaces may be coerced to a new type by prescribing the needed point type as NewType, such as CAGD_PT_P2_TYPE.

Parameters:

PObj: Object to coerce.
NewType: New type which can be object type like IP_OBJ_VECTOR or point type like E2.


Returned Value:

IPObjectStruct *: Newly coerced object.


See Also:

IPCoerceObjectTo

Keywords:

coercion


IPCoerceObjectTo

(coerce.c:850)

Prototype:

  IPObjectStruct *IPCoerceObjectTo(const IPObjectStruct *PObj, int NewType)


Description:

Coerce an object to a new object.

Parameters:

PObj: Object to coerce.
NewType: New type for PObj.


Returned Value:

IPObjectStruct *: The newly coerced object.


See Also:

IPCoerceObjectPtTypeTo

Keywords:




IPCoercePowerToBezier

(coerce.c:193)

Prototype:

  IPObjectStruct *IPCoercePowerToBezier(const IPObjectStruct *PObj)


Description:

Converts a power freeform into a Bezier freeform.

Parameters:

PObj: Power geometry to convert to Bezier geometry.


Returned Value:

IPObjectStruct *: Same geometry as PObj but in Bezier form.


Keywords:




IPCoercePtsListTo

(coerce.c:552)

Prototype:

  CagdPointType IPCoercePtsListTo(IPObjectStruct *PtObjList, CagdPointType Type)


Description:

Coerces a list of objects to Type.

Parameters:

PtObjList: Coerce points/vectors/control points in this list to Type.
Type: A minimum space type to coerce to in PtObjList.


Returned Value:

CagdPointType: The coercion type actually took place with in PtObjList.


Keywords:

coercion


IPCoerceTrimmedSrfToTrimmedBezier

(coerce.c:416)

Prototype:

  IPObjectStruct *IPCoerceTrimmedSrfToTrimmedBezier(const IPObjectStruct *PObj)


Description:

Convert a Bspline freeform into list of Bezier freeforms.

Parameters:

PObj: A Bspline geometry to convert to a Bezier geometry.


Returned Value:

IPObjectStruct *: A Bezier geometry representing same geometry as PObj.


Keywords:




IPCoerceTrimmedSrfToUnTrimmedBezier

(coerce.c:472)

Prototype:

  IPObjectStruct *IPCoerceTrimmedSrfToUnTrimmedBezier(const IPObjectStruct *PObj,
                                                      int ComposeE3)


Description:

Convert a trimmed B-spline freeform into untrimmed tensor product Bezier freeforms.

Parameters:

PObj: A B-spline geometry to convert to a Bezier geometry.
ComposeE3: TRUE to compose the tiles into TSrf, FALSE to return the surface tiles in the parametric domain of TSrf.


Returned Value:

IPObjectStruct *: A Bezier geometry representing same geometry as PObj.


Keywords:




IPConcatFreeForm

(iritprs1.c:3310)

Prototype:

  IPObjectStruct *IPConcatFreeForm(IPFreeFormStruct *FreeForms)


Description:

Concatenate all freeform objects in FreeForms into a single list.

Parameters:

FreeForms: Freeform geometry to process.


Returned Value:

IPObjectStruct *: concatenated linked list.


Keywords:

conversion


IPConvertFreeForm

(ff_cnvrt.c:1408)

Prototype:

  IPObjectStruct *IPConvertFreeForm(IPObjectStruct *PObj,
                                    IPFreeformConvStateStruct *State)


Description:

Routine to convert a single freeform geometry to polylines/polygons, in place.

Parameters:

PObj: A Crv/Srf/Trimmed Srf/Trivariate freeform geometry.
State: he way the freeform geometry should be converted.


Returned Value:

IPObjectStruct *: Processed freeform geometry.


See Also:

FFCnvrtSrfsToBicubicBezier

Keywords:

conversion


IPCopyObject

(allocate.c:2264)

Prototype:

  IPObjectStruct *IPCopyObject(IPObjectStruct *Dest,
                               const IPObjectStruct *Src,
                               int CopyAll)


Description:

Routine to create a whole new copy of an object Src into Dest. If Dest is NULL, new object is allocated, otherwise Dest itself is updated to hold the new copy. If CopyAll then all the record is copied, otherwise, only its invariant elements arebeen copied (i.e. no Name/Pnext copying).

Parameters:

Dest: Destination object, possibly NULL.
Src: Source object.
CopyAll: Do we want a complete identical copy?


Returned Value:

IPObjectStruct *: Duplicate of Src, same as Dest if Dest != NULL.


See Also:

IPSetCopyObjectReferenceCount IPCopyObjectAuxInfo

Keywords:

copy


IPCopyObject2

(allocate.c:2295)

Prototype:

  IPObjectStruct *IPCopyObject2(IPObjectStruct *Dest,
                                const IPObjectStruct *Src,
                                int CopyNext,
                                int CopyName)


Description:

Routine to create a whole new copy of an object Src into Dest. If Dest is NULL, new object is allocated, otherwise Dest itself is updated to hold the new copy. If CopyAll then all the record is copied, otherwise, only its invariant elements are been copied (i.e. no Name/Pnext copying).

Parameters:

Dest: Destination object, possibly NULL.
Src: Source object.
CopyNext: Copy the Pnext slot?
CopyName: Copy the name of the object?


Returned Value:

IPObjectStruct *: Duplicate of Src, same as Dest if Dest != NULL.


See Also:

IPSetCopyObjectReferenceCount IPCopyObjectAuxInfo IPCopyObject

Keywords:

copy


IPCopyObjectAuxInfo

(allocate.c:2222)

Prototype:

  void IPCopyObjectAuxInfo(IPObjectStruct *Dest, const IPObjectStruct *Src)


Description:

Copy to the destination object all object auxiliary information such as attributes, dependencies, and bbox.

Parameters:

Dest: Destination of copy process.
Src: Source of copy process.


Returned Value:

void


See Also:

IPCopyObject

Keywords:




IPCopyObjectGeomData

(allocate.c:2345)

Prototype:

  IPObjectStruct *IPCopyObjectGeomData(IPObjectStruct *Dest,
                                       const IPObjectStruct *Src,
                                       int CopyNext,
                                       int CopyName)


Description:

Routine to copy the geometry in Src object to Dest.

Parameters:

Dest: Destination object.
Src: Source object.
CopyNext: Copy the Pnext slot?
CopyName: Copy the name of the object?


Returned Value:

IPObjectStruct *: Reference to Dest.


See Also:

IPSetCopyObjectReferenceCount IPCopyObjectAuxInfo IPCopyObject

Keywords:

copy


IPCopyObjectList

(allocate.c:2474)

Prototype:

  IPObjectStruct *IPCopyObjectList(const IPObjectStruct *PObjs, int CopyAll)


Description:

Routine to create a new copy of an object list.

Parameters:

PObjs: Source objects.
CopyAll: Do we want a complete identical copy?


Returned Value:

IPObjectStruct *: Duplicated list of PObjs.


Keywords:

copy


IPCopyPolygon

(allocate.c:2509)

Prototype:

  IPPolygonStruct *IPCopyPolygon(const IPPolygonStruct *Src)


Description:

Routine to create a new copy of one polygon.

Parameters:

Src: A polygon to copy.


Returned Value:

IPPolygonStruct *: Duplicated polygon.


See Also:

IPCopyPolygonList

Keywords:

copy


IPCopyPolygonList

(allocate.c:2546)

Prototype:

  IPPolygonStruct *IPCopyPolygonList(const IPPolygonStruct *Src)


Description:

Routine to create a new copy of an object polygon list.

Parameters:

Src: A polygon list to copy.


Returned Value:

IPPolygonStruct *: Duplicated list of polygons.


See Also:

IPCopyPolygon

Keywords:

copy


IPCopyVertex

(allocate.c:2582)

Prototype:

  IPVertexStruct *IPCopyVertex(const IPVertexStruct *Src)


Description:

Routine to create a new copy of a polygon vertex.

Parameters:

Src: A vertex to copy.


Returned Value:

IPVertexStruct *: Duplicated vertex.


See Also:

IPCopyVertexList

Keywords:

copy


IPCopyVertexList

(allocate.c:2614)

Prototype:

  IPVertexStruct *IPCopyVertexList(const IPVertexStruct *Src)


Description:

Routine to create a new copy of a polygon vertices list.

Parameters:

Src: A vertex list to copy.


Returned Value:

IPVertexStruct *: Duplicated list of vertices.


See Also:

IPCopyVertex

Keywords:

copy


IPCurve2CtlPoly

(ip_cnvrt.c:471)

Prototype:

  IPPolygonStruct *IPCurve2CtlPoly(const CagdCrvStruct *Crv)


Description:

Routine to convert a single curve's control polygon into a polyline.

Parameters:

Crv: To extract its control polygon as a polyline.


Returned Value:

IPPolygonStruct *: A polyline representing Crv's control polygon.


Keywords:

conversion


IPCurve2Polylines

(ip_cnvrt.c:339)

Prototype:

  IPPolygonStruct *IPCurve2Polylines(const CagdCrvStruct *Crv,
                                     CagdRType TolSamples,
                                     SymbCrvApproxMethodType Method)


Description:

Routine to convert one curve into a polyline with TolSamples samples/tolerance.

Parameters:

Crv: To approximate as a polyline.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve. 2 - TolSamples are set optimally, considering the curve's curvature.


Returned Value:

IPPolygonStruct *: A polyline approximating Crv. Can be more than one polyline if Crv is C0 discont.


See Also:

BspCrv2Polyline BzrCrv2Polyline SymbCrv2Polyline

Keywords:

conversion approximation


IPCurvesToCubicBzrCrvs

(ip_cnvrt.c:1990)

Prototype:

  CagdCrvStruct *IPCurvesToCubicBzrCrvs(CagdCrvStruct *Crvs,
                                        IPPolygonStruct **CtlPolys,
                                        CagdBType DrawCurve,
                                        CagdBType DrawCtlPoly,
                                        CagdRType MaxArcLen)


Description:

Approximates an arbitrary list of curves into cubic Beziers curves.

Parameters:

Crvs: To approximate as cubic Bezier curves.
CtlPolys: If we want control polygons as well (DrawCtlPoly == TRUE) they will be placed herein.
DrawCurve: Do we want to draw the curves?
DrawCtlPoly: Do we want to draw the control polygons?
MaxArcLen: Tolerance for cubic Bezier approximation. See function SymbApproxCrvAsBzrCubics.


Returned Value:

CagdCrvStruct *: The cubic Bezier approximation, or NULL if DrawCurve is FALSE.


Keywords:

conversion approximation


IPDescribeError

(prsr_err.c:133)

Prototype:

  const char *IPDescribeError(IPFatalErrorType ErrorNum)


Description:

Returns a string describing a the given error. Errors can be raised by any member of this user library as well as other users. Raised error will cause an invocation of UserFatalError function which decides how to handle this error. UserFatalError can for example, invoke this routine with the error type, print the appropriate message and quit the program.

Parameters:

ErrorNum: Type of the error that was raised.


Returned Value:

const char *: A string describing the error type.


Keywords:

error handling


IPEPSSaveFile

(irit_ps.c:96)

Prototype:

  int IPEPSSaveFile(IPObjectStruct *PObjects,
                    IrtHmgnMatType CrntMat,
                    IPEPSSaveDfltFileParamsStruct *EPSParams)


Description:

Dumps IRIT object as a (encapsulated) post script file.

Parameters:

PObjects: List of Irit objects to dump as EPS file.
CrntMat: Transformation matrix to apply (if not NULL).
EPSParams: The rest of the ESP file saving parameters.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:




IPEvalFreeForms

(iritprs1.c:1799)

Prototype:

  IPObjectStruct *IPEvalFreeForms(IPObjectStruct *PObj)


Description:

Evaluates the freeforms in the given hierarchy - usually to convert into a polygonal approximation. This function invokes IPProcessFreeForm for the evaluation of the individual freeform entities.

Parameters:

PObj: Object(s) to freeform evaluate, in place.


Returned Value:

IPObjectStruct *: Evaluated hierarchy, in place.


See Also:

IPProcessFreeForm

Keywords:




IPExportObjectToFile

(iritprs2.c:220)

Prototype:

  void IPExportObjectToFile(const char *FName,
                            const IPObjectStruct *PObj,
                            IPStreamFormatType FType)


Description:

Routine to export the data from given object into given file FName, in the designated file format.

Parameters:

FName: Output file name.
PObj: Object to put on output.
FType: File type desired. Can be IP_FILE_ANY, in which case type is derived from the type in FName. See IPStreamFormatType.


Returned Value:

void


Keywords:

files


IPFatalError

(prsr_ftl.c:57)

Prototype:

  void IPFatalError(IPFatalErrorType ErrID)


Description:

Trap Prsr_lib errors right here. Provides a default error handler for the prsr library. Gets an error description using PrsrDescribeError, prints it and exit the program using exit.

Parameters:

ErrID: Error type that was raised.


Returned Value:

void


Keywords:

error handling


IPFlattenForrest

(iritprs1.c:1869)

Prototype:

  IPObjectStruct *IPFlattenForrest(IPObjectStruct *PObjList, int ProcessFF)


Description:

Flattens out a list of trees' hierarchy (a forest) of objects into a linear list, in place.

Parameters:

PObjList: List of object(s) to flatten out.
ProcessFF: If TRUE also process freeforms using IPFlattenTreeprocessFF.


Returned Value:

IPObjectStruct *: Flattened hierarchy; destroyed in place.


See Also:

IPFlattenTree IPFlattenTreeProcessFF

Keywords:




IPFlattenForrest2

(iritprs1.c:1917)

Prototype:

  IPObjectStruct *IPFlattenForrest2(IPObjectStruct *PObj, int ProcessFF)


Description:

Flattens out a list of trees' hierarchy (a forest) of objects into a linear list, in place.

Parameters:

PObj: List of object(s) to flatten out.
ProcessFF: f TRUE, also process freeforms using IPFlattenTreeprocessFF.


Returned Value:

IPObjectStruct *: One object with all objects as one linked list of geometric objects.


Keywords:




IPFlattenInvisibleObjects

(iritprs1.c:1499)

Prototype:

  int IPFlattenInvisibleObjects(int FlattenInvisib)


Description:

Controls the hierarchy flattening of a read object.

Parameters:

FlattenInvisib: If TRUE, list objects will be flattened out to a long linear list. If FALSE, read object will be unchanged.


Returned Value:

int: Old value of flatten state.


Keywords:

files parser


IPFlattenTree

(iritprs1.c:1589)

Prototype:

  IPObjectStruct *IPFlattenTree(IPObjectStruct *PObj)


Description:

Flattens out a tree hierarchy of objects into a linear list, in place.

Parameters:

PObj: Object(s) to flatten out, in place.


Returned Value:

IPObjectStruct *: Flattened hierarchy.


See Also:

IPProcessFreeForm IPEvalFreeForms IPFlattenTreeProcessFF IPFlattenForrest

Keywords:




IPFlattenTreeProcessFF

(iritprs1.c:1639)

Prototype:

  IPObjectStruct *IPFlattenTreeProcessFF(IPObjectStruct *PObj)


Description:

Flattens out a tree hierarchy of objects into a linear list, in place. As a side effect freeform entities are processed by IPProcessFreeForm.

Parameters:

PObj: Object(s) to flatten out, in place.


Returned Value:

IPObjectStruct *: Flattened hierarchy.


See Also:

IPProcessFreeForm IPEvalFreeForms IPFlattenTree IPFlattenForrest

Keywords:




IPForEachObj2

(linklist.c:1377)

Prototype:

  IPObjectStruct *IPForEachObj2(IPObjectStruct *OList,
                                IPForEachObjCallBack CallBack,
                                void *Param)


Description:

Travel on OList (using Pnext) and use the given CallBack with every object. Each given object in OList is replaced with the returned value of CallBack. If CallBack returns NULL, the object is removed from OList (in that case, it's CallBack's responsibility to free the object's memory).

Parameters:

OList: The objects list to travel. OList might be destroyed during the process, therefore it shouldn't be used again. The returned list should be used instead.
CallBack: The function to use with each object of OList.
Param: Parameter which will be given to CallBack with every object.


Returned Value:

IPObjectStruct *: The new list or NULL if the list is empty.


Keywords:




IPForEachPoly

(linklist.c:1292)

Prototype:

  void IPForEachPoly(IPObjectStruct *OList, void (*CallBack) (IPPolygonStruct *))


Description:

Iterates on Irit object list and calls CallBack function on every polygon found, passing it a pointer to the polygon object.

Parameters:

OList: Pointer to the Irit objects' linked list.
CallBack: allback function.


Returned Value:

void


Keywords:




IPForEachPoly2

(linklist.c:1429)

Prototype:

  IPPolygonStruct *IPForEachPoly2(IPPolygonStruct *PlList,
                                  IPForEachPolyCallBack CallBack,
                                  void *Param)


Description:

Travel on PlList (using Pnext) and use the given CallBack with every polygon. Each given polygon in PlList is replaced with the returned value of CallBack. If CallBack returns NULL, the polygon is removed from PlList (in that case, it's CallBack's responsibility to free the polygon's memory).

Parameters:

PlList: The polygons list to travel. PlList might be destroyed during the process, therefore it shouldn't be used again. The returned list should be used instead.
CallBack: The function to use with each polygon of PlList
Param: Parameter which will be given to CallBack with every polygon.


Returned Value:

IPPolygonStruct *: The new list or NULL if the list is empty.


Keywords:




IPForEachVertex

(linklist.c:1328)

Prototype:

  void IPForEachVertex(IPObjectStruct *OList,
                       void (*CallBack) (IPVertexStruct *))


Description:

Iterates on Irit object list and for each vertex in every polygon calls CallBack function passing it a pointer to the vertex object.

Parameters:

OList: Pointer to Irit objects' linked list.
CallBack: allback function.


Returned Value:

void


Keywords:




IPForEachVertex2

(linklist.c:1480)

Prototype:

  IPVertexStruct *IPForEachVertex2(IPVertexStruct *VList,
                                   IPForEachVertexCallBack CallBack,
                                   void *Param)


Description:

Travel on VList (using Pnext) and use the given CallBack with every vertex. Each given vertex in VList is replaced with the returned value of CallBack. If CallBack returns NULL, the vertex is removed from VList (in that case, it's CallBack's responsibility to free the vertex's memory.

Parameters:

VList: The vertex list to travel. VList might be destroyed during the process, therefore it shouldn't be used again. The returned list should be used instead.
CallBack: The function to use with each vertex of VList
Param: Parameter which will be given to CallBack with every polygon.


Returned Value:

IPVertexStruct *: The new list or NULL if the list is empty.


Keywords:




IPFreeForm2CubicBzr

(ff_cnvrt.c:669)

Prototype:

  IPObjectStruct *IPFreeForm2CubicBzr(IPFreeFormStruct *FreeForms,
                                      int Talkative,
                                      int DrawGeom,
                                      int DrawMesh,
                                      int NumOfIsolines[3],
                                      CagdRType TolSamples,
                                      SymbCrvApproxMethodType Method)


Description:

Converts a whole set of geometry to cubic bezier curves, in place.

Parameters:

FreeForms: Crvs/Srfs/Trimmed Srfs/Trivariates read from a file by the irit parser.
Talkative: Do we want some more information printed.
DrawGeom: Do we want to draw the geometry?
DrawMesh: Do we want to draw its control mesh?
NumOfIsolines: umber of isocurves in each parametric direction.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the curve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.


Returned Value:

IPObjectStruct *: Polyline(s) representing the trivariate and its control mesh.


Keywords:




IPFreeForm2Polygons

(ff_cnvrt.c:994)

Prototype:

  IPObjectStruct *IPFreeForm2Polygons(IPFreeFormStruct *FreeForms,
                                      int Talkative,
                                      int FourPerFlat,
                                      IrtRType FineNess,
                                      int ComputeUV,
                                      int ComputeNrml,
                                      int Optimal,
                                      int BBoxGrid)


Description:

Converts a whole set of geometry to polygons, in place.

Parameters:

FreeForms: Crvs/Srfs/Trimmed Srfs/Trivariates read from a file by the irit parser.
Talkative: Do we want some more information printed?
FourPerFlat: See IPSurface2Polygons.
FineNess: See IPSurface2Polygons.
ComputeUV: See IPSurface2Polygons.
ComputeNrml: See IPSurface2Polygons.
Optimal: See IPSurface2Polygons.
BBoxGrid: Do we want bounding box values and grid estimation.


Returned Value:

IPObjectStruct *: Polygon/line(s) representing the geometry and its control mesh. Returns original geometries if not convertible.


See Also:

IPFreeForm2PolysSetCState IPFreeForm2Polylines

Keywords:




IPFreeForm2Polylines

(ff_cnvrt.c:336)

Prototype:

  IPObjectStruct *IPFreeForm2Polylines(IPFreeFormStruct *FreeForms,
                                       int Talkative,
                                       int DrawGeom,
                                       int DrawMesh,
                                       int NumOfIsolines[3],
                                       CagdRType TolSamples,
                                       SymbCrvApproxMethodType Method)


Description:

Converts a whole set of geometry to polylines, in place.

Parameters:

FreeForms: Crvs/Srfs/Trimmed Srfs/Trivariates read from a file by the irit parser.
Talkative: Do we want some more information printed.
DrawGeom: Do we want to draw the geometry?
DrawMesh: Do we want to draw its control mesh?
NumOfIsolines: umber of isocurves in each parametric direction.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the curve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.


Returned Value:

IPObjectStruct *: Polyline(s) representing the trivariate and its control mesh.


See Also:

IPFreeForm2PolysSetCState IPFreeForm2Polygons

Keywords:




IPFreeForm2PolysSetCState

(ff_cnvrt.c:91)

Prototype:

  IPFreeformConvStateStruct IPFreeForm2PolysSetCState(const
                                              IPFreeformConvStateStruct *CState)


Description:

Sets the global tessellation state structure of freeform 2 polys.

Parameters:

CState: New tessellation state to set. Can be NULL to query current state.


Returned Value:

IPFreeformConvStateStruct: original tessellation state.


See Also:

IPFreeForm2Polylines IPFreeForm2Polygons

Keywords:




IPFreeObject

(allocate.c:413)

Prototype:

  void IPFreeObject(IPObjectStruct *O)


Description:

Frees one Object Structure.

Parameters:

O: To free.


Returned Value:

void


Keywords:

allocation


IPFreeObjectBase

(allocate.c:395)

Prototype:

  void IPFreeObjectBase(IPObjectStruct *O)


Description:

Frees one Object Structure.

Parameters:

O: To free.


Returned Value:

void


Keywords:

allocation


IPFreeObjectGeomData

(allocate.c:150)

Prototype:

  void IPFreeObjectGeomData(IPObjectStruct *PObj)


Description:

Routine to free all the slots of a given object, but the name.

Parameters:

PObj: To free all its slots, but the name.


Returned Value:

void


See Also:

IPFreeObjectSlots

Keywords:




IPFreeObjectList

(allocate.c:502)

Prototype:

  void IPFreeObjectList(IPObjectStruct *OFirst)


Description:

Free a list of Object structures.

Parameters:

OFirst: To free.


Returned Value:

void


Keywords:

allocation


IPFreeObjectSlots

(allocate.c:62)

Prototype:

  void IPFreeObjectSlots(IPObjectStruct *PObj)


Description:

Routine to free all the slots of a given object, but the name.

Parameters:

PObj: To free all its slots, but the name.


Returned Value:

void


See Also:

IPFreeObjectGeomData

Keywords:




IPFreePolygon

(allocate.c:374)

Prototype:

  void IPFreePolygon(IPPolygonStruct *P)


Description:

Frees one Polygon Structure.

Parameters:

P: To free.


Returned Value:

void


Keywords:

allocation


IPFreePolygonList

(allocate.c:470)

Prototype:

  void IPFreePolygonList(IPPolygonStruct *PFirst)


Description:

Free a list of Polygon structures.

Parameters:

PFirst: To free.


Returned Value:

void


Keywords:

allocation


IPFreeVertex

(allocate.c:353)

Prototype:

  void IPFreeVertex(IPVertexStruct *V)


Description:

Frees one Vertex Structure.

Parameters:

V: To free.


Returned Value:

void


Keywords:

allocation


IPFreeVertexList

(allocate.c:438)

Prototype:

  void IPFreeVertexList(IPVertexStruct *VFirst)


Description:

Free a, possibly circular, list of Vertex structures.

Parameters:

VFirst: To free.


Returned Value:

void


Keywords:

allocation


IPGenCRVObject

(allocate.c:1196)

Prototype:

  IPObjectStruct *IPGenCRVObject(CagdCrvStruct *Crv)


Description:

Creates one curve object.

Parameters:

Crv: Curves to place in object.


Returned Value:

IPObjectStruct *: A newly created curve object.


Keywords:

allocation


IPGenCTLPTObject

(allocate.c:1693)

Prototype:

  IPObjectStruct *IPGenCTLPTObject(CagdPointType PtType,
                                   const IrtRType *Coords)


Description:

Creates one control point object. Only one of CagdCoords/Coords should be specified.

Parameters:

PtType: Point type of created control point (E2, P3, etc.).
Coords: Coefficients of new control point. Coords[0] is always W.


Returned Value:

IPObjectStruct *: A newly created control point object.


Keywords:

allocation


IPGenCrvObject

(allocate.c:1170)

Prototype:

  IPObjectStruct *IPGenCrvObject(const char *Name,
                                 CagdCrvStruct *Crv,
                                 IPObjectStruct *Pnext)


Description:

Creates one curve object.

Parameters:

Name: Name of polygonal object.
Crv: Curves to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created curve object.


Keywords:

allocation


IPGenCtlPtObject

(allocate.c:1658)

Prototype:

  IPObjectStruct *IPGenCtlPtObject(const char *Name,
                                   CagdPointType PtType,
                                   const IrtRType *Coords,
                                   IPObjectStruct *Pnext)


Description:

Creates one control point object.

Parameters:

Name: Name of polygonal object.
PtType: Point type of created control point (E2, P3, etc.).
Coords: Coefficients of new control point. Coords[0] is always W.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created control point object.


Keywords:

allocation


IPGenINSTNCObject

(allocate.c:1634)

Prototype:

  IPObjectStruct *IPGenINSTNCObject(const char *InstncName,
                                    const IrtHmgnMatType *Mat)


Description:

Creates one instance object.

Parameters:

InstncName: Object name of original.
Mat: Instance matrix, or NULL if none.


Returned Value:

IPObjectStruct *: A newly created instance object.


Keywords:

allocation


IPGenInstncObject

(allocate.c:1604)

Prototype:

  IPObjectStruct *IPGenInstncObject(const char *Name,
                                    const char *InstncName,
                                    const IrtHmgnMatType *Mat,
                                    IPObjectStruct *Pnext)


Description:

Creates one instance object.

Parameters:

Name: Name of polygonal object.
InstncName: Object name of original.
Mat: Instance matrix, or NULL if none.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created instance object.


Keywords:

allocation


IPGenLISTObject

(allocate.c:1953)

Prototype:

  IPObjectStruct *IPGenLISTObject(IPObjectStruct *First)


Description:

Creates one list object.

Parameters:

First: First element in list, if any.


Returned Value:

IPObjectStruct *: A newly created list object.


Keywords:

allocation


IPGenListObject

(allocate.c:1928)

Prototype:

  IPObjectStruct *IPGenListObject(const char *Name,
                                  IPObjectStruct *First,
                                  IPObjectStruct *Pnext)


Description:

Creates one list object.

Parameters:

Name: Name of list object.
First: First element in list, if any.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created list object.


Keywords:

allocation


IPGenMATObject

(allocate.c:2057)

Prototype:

  IPObjectStruct *IPGenMATObject(IrtHmgnMatType Mat)


Description:

Creates one matrix object.

Parameters:

Mat: Matrix to initialize with.


Returned Value:

IPObjectStruct *: A newly created matrix object.


Keywords:

allocation


IPGenMODELObject

(allocate.c:1436)

Prototype:

  IPObjectStruct *IPGenMODELObject(MdlModelStruct *Model)


Description:

Creates one model object.

Parameters:

Model: A model object.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenMULTIVARObject

(allocate.c:1580)

Prototype:

  IPObjectStruct *IPGenMULTIVARObject(MvarMVStruct *MultiVar)


Description:

Creates one multivariate object.

Parameters:

MultiVar: A multivariate object.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenMatObject

(allocate.c:2030)

Prototype:

  IPObjectStruct *IPGenMatObject(const char *Name,
                                 IrtHmgnMatType Mat,
                                 IPObjectStruct *Pnext)


Description:

Creates one matrix object.

Parameters:

Name: Name of polygonal object.
Mat: Matrix to initialize with.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created matrix object.


Keywords:

allocation


IPGenModelObject

(allocate.c:1410)

Prototype:

  IPObjectStruct *IPGenModelObject(const char *Name,
                                   MdlModelStruct *Model,
                                   IPObjectStruct *Pnext)


Description:

Creates one model object.

Parameters:

Name: Name of polygonal object.
Model: A model object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenMultiVarObject

(allocate.c:1554)

Prototype:

  IPObjectStruct *IPGenMultiVarObject(const char *Name,
                                      MvarMVStruct *MultiVar,
                                      IPObjectStruct *Pnext)


Description:

Creates one surface object.

Parameters:

Name: Name of polygonal object.
MultiVar: A multivariate object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenNUMObject

(allocate.c:1739)

Prototype:

  IPObjectStruct *IPGenNUMObject(const IrtRType *R)


Description:

Creates one numeric object.

Parameters:

R: Numeric value to place in object.


Returned Value:

IPObjectStruct *: A newly created numeric object.


Keywords:

allocation


IPGenNUMValObject

(allocate.c:1757)

Prototype:

  IPObjectStruct *IPGenNUMValObject(IrtRType R)


Description:

Creates one numeric object.

Parameters:

R: Numeric value to place in object.


Returned Value:

IPObjectStruct *: A newly created numeric object.


Keywords:

allocation


IPGenNumObject

(allocate.c:1715)

Prototype:

  IPObjectStruct *IPGenNumObject(const char *Name,
                                 const IrtRType *R,
                                 IPObjectStruct *Pnext)


Description:

Creates one numeric object.

Parameters:

Name: Name of polygonal object.
R: Numeric value to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created numeric object.


Keywords:

allocation


IPGenPLANEObject

(allocate.c:2008)

Prototype:

  IPObjectStruct *IPGenPLANEObject(const IrtRType *Plane0,
                                   const IrtRType *Plane1,
                                   const IrtRType *Plane2,
                                   const IrtRType *Plane3)


Description:

Creates one plane object.

Parameters:

Plane0, Plane1, Plane2, Plane3: Coefficients of point.


Returned Value:

IPObjectStruct *: A newly created plane object.


Keywords:

allocation


IPGenPOINTLISTObject

(allocate.c:1148)

Prototype:

  IPObjectStruct *IPGenPOINTLISTObject(IPPolygonStruct *Pl)


Description:

Creates one pointlist object.

Parameters:

Pl: Pointlist(s) to place in object.


Returned Value:

IPObjectStruct *: A newly created polygonal object.


Keywords:

allocation


IPGenPOLYLINEObject

(allocate.c:1101)

Prototype:

  IPObjectStruct *IPGenPOLYLINEObject(IPPolygonStruct *Pl)


Description:

Creates one polyline object.

Parameters:

Pl: Polyline(s) to place in object.


Returned Value:

IPObjectStruct *: A newly created polygonal object.


Keywords:

allocation


IPGenPOLYObject

(allocate.c:1054)

Prototype:

  IPObjectStruct *IPGenPOLYObject(IPPolygonStruct *Pl)


Description:

Creates one polygonal object.

Parameters:

Pl: Polygon(s) to place in object.


Returned Value:

IPObjectStruct *: A newly created polygonal object.


Keywords:

allocation


IPGenPTObject

(allocate.c:1809)

Prototype:

  IPObjectStruct *IPGenPTObject(const IrtRType *Pt0,
                                const IrtRType *Pt1,
                                const IrtRType *Pt2)


Description:

Creates one point object.

Parameters:

Pt0, Pt1, Pt2: Coefficients of point.


Returned Value:

IPObjectStruct *: A newly created point object.


Keywords:

allocation


IPGenPlaneObject

(allocate.c:1978)

Prototype:

  IPObjectStruct *IPGenPlaneObject(const char *Name,
                                   const IrtRType *Plane0,
                                   const IrtRType *Plane1,
                                   const IrtRType *Plane2,
                                   const IrtRType *Plane3,
                                   IPObjectStruct *Pnext)


Description:

Creates one plane object.

Parameters:

Name: Name of polygonal object.
Plane0, Plane1, Plane2, Plane3: Coefficients of point.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created plane object.


Keywords:

allocation


IPGenPointListObject

(allocate.c:1123)

Prototype:

  IPObjectStruct *IPGenPointListObject(const char *Name,
                                       IPPolygonStruct *Pl,
                                       IPObjectStruct *Pnext)


Description:

Creates one pointlist object.

Parameters:

Name: Name of pointlist object.
Pl: Pointlist(s) to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created pointlist object.


Keywords:

allocation


IPGenPolyObject

(allocate.c:1029)

Prototype:

  IPObjectStruct *IPGenPolyObject(const char *Name,
                                  IPPolygonStruct *Pl,
                                  IPObjectStruct *Pnext)


Description:

Creates one polygonal object.

Parameters:

Name: Name of polygonal object.
Pl: Polygon(s) to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created polygonal object.


Keywords:

allocation


IPGenPolylineObject

(allocate.c:1076)

Prototype:

  IPObjectStruct *IPGenPolylineObject(const char *Name,
                                      IPPolygonStruct *Pl,
                                      IPObjectStruct *Pnext)


Description:

Creates one polyline object.

Parameters:

Name: Name of polyline object.
Pl: Polyline(s) to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created polyline object.


Keywords:

allocation


IPGenPtObject

(allocate.c:1781)

Prototype:

  IPObjectStruct *IPGenPtObject(const char *Name,
                                const IrtRType *Pt0,
                                const IrtRType *Pt1,
                                const IrtRType *Pt2,
                                IPObjectStruct *Pnext)


Description:

Creates one point object.

Parameters:

Name: Name of polygonal object.
Pt0, Pt1, Pt2: Coefficients of point.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created point object.


Keywords:

allocation


IPGenRectangle

(ip_cnvrt.c:894)

Prototype:

  IPPolygonStruct *IPGenRectangle(CagdSrf2PlsInfoStrct *TessInfo,
                                  const CagdRType *Pt1,
                                  const CagdRType *Pt2,
                                  const CagdRType *Pt3,
                                  const CagdRType *Pt4,
                                  const CagdRType *Nl1,
                                  const CagdRType *Nl2,
                                  const CagdRType *Nl3,
                                  const CagdRType *Nl4,
                                  const CagdRType *UV1,
                                  const CagdRType *UV2,
                                  const CagdRType *UV3,
                                  const CagdRType *UV4,
                                  CagdBType *GenPoly)


Description:

Call back routine to create one rectangular polygon, given its vertices, and, optionally, normals and uv coordinates.

Parameters:

TessInfo: All auxiliary information/state to tessellate.
Pt1, Pt2, Pt3, Pt4: Euclidean locations of vertices.
Nl1, Nl2, Nl3, Nl4: Optional Normals of vertices (if ComputeNormals).
UV1, UV2, UV3, UV4: Optional UV parametric location of vertices (if ComputeUV).
GenPoly: Returns TRUE if a polygon was generated, FALSE otherwise.


Returned Value:

IPPolygonStruct *: The created polygon. Note if singular, might return a triangle.


See Also:

IPGenTriangle

Keywords:




IPGenSRFObject

(allocate.c:1244)

Prototype:

  IPObjectStruct *IPGenSRFObject(CagdSrfStruct *Srf)


Description:

Creates one surface object.

Parameters:

Srf: Surfaces to place in object.


Returned Value:

IPObjectStruct *: A newly created surface object.


Keywords:

allocation


IPGenSTRObject

(allocate.c:1906)

Prototype:

  IPObjectStruct *IPGenSTRObject(const char *Str)


Description:

Creates one string object.

Parameters:

Str: The string.


Returned Value:

IPObjectStruct *: A newly created strtor object.


Keywords:

allocation


IPGenSrfObject

(allocate.c:1218)

Prototype:

  IPObjectStruct *IPGenSrfObject(const char *Name,
                                 CagdSrfStruct *Srf,
                                 IPObjectStruct *Pnext)


Description:

Creates one surface object.

Parameters:

Name: Name of polygonal object.
Srf: Surfaces to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created surface object.


Keywords:

allocation


IPGenStrObject

(allocate.c:1883)

Prototype:

  IPObjectStruct *IPGenStrObject(const char *Name,
                                 const char *Str,
                                 IPObjectStruct *Pnext)


Description:

Creates one string object.

Parameters:

Name: Name of string object.
Str: The string.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created strtor object.


Keywords:

allocation


IPGenTRIMSRFObject

(allocate.c:1292)

Prototype:

  IPObjectStruct *IPGenTRIMSRFObject(TrimSrfStruct *TrimSrf)


Description:

Creates one trimmed surface object.

Parameters:

TrimSrf: Trimmed surfaces to place in object.


Returned Value:

IPObjectStruct *: A newly created trimmed surface object.


Keywords:

allocation


IPGenTRISRFObject

(allocate.c:1388)

Prototype:

  IPObjectStruct *IPGenTRISRFObject(TrngTriangSrfStruct *TriSrf)


Description:

Creates one triangular surface object.

Parameters:

TriSrf: Triangular Surfaces to place in object.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenTRIVARObject

(allocate.c:1340)

Prototype:

  IPObjectStruct *IPGenTRIVARObject(TrivTVStruct *Triv)


Description:

Creates one trivariate object.

Parameters:

Triv: Trivariates to place in object.


Returned Value:

IPObjectStruct *: A newly created trivariate object.


Keywords:

allocation


IPGenTriSrfObject

(allocate.c:1362)

Prototype:

  IPObjectStruct *IPGenTriSrfObject(const char *Name,
                                    TrngTriangSrfStruct *TriSrf,
                                    IPObjectStruct *Pnext)


Description:

Creates one triangular surface object.

Parameters:

Name: Name of polygonal object.
TriSrf: Triangular Surfaces to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenTriangle

(ip_cnvrt.c:758)

Prototype:

  IPPolygonStruct *IPGenTriangle(CagdSrf2PlsInfoStrct *TessInfo,
                                 const CagdRType *Pt1,
                                 const CagdRType *Pt2,
                                 const CagdRType *Pt3,
                                 const CagdRType *Nl1,
                                 const CagdRType *Nl2,
                                 const CagdRType *Nl3,
                                 const CagdRType *UV1,
                                 const CagdRType *UV2,
                                 const CagdRType *UV3,
                                 CagdBType *GenPoly)


Description:

Call back routine to create one triangular polygon, given its vertices, and, optionally, normals and uv coordinates. Places the constructed polygon in a global polygonal list.

Parameters:

TessInfo: All auxiliary information/state to tessellate.
Pt1, Pt2, Pt3: Euclidean locations of vertices.
Nl1, Nl2, Nl3: Optional Normals of vertices (if ComputeNormals).
UV1, UV2, UV3: Optional UV parametric location of vertices (if ComputeUV).
GenPoly: Returns TRUE if a polygon was generated, FALSE otherwise.


Returned Value:

IPPolygonStruct *: The created triangle.


See Also:

IPGenRectangle

Keywords:




IPGenTrimSrfObject

(allocate.c:1266)

Prototype:

  IPObjectStruct *IPGenTrimSrfObject(const char *Name,
                                     TrimSrfStruct *TrimSrf,
                                     IPObjectStruct *Pnext)


Description:

Creates one trimmed surface object.

Parameters:

Name: Name of polygonal object.
TrimSrf: Trimmed surfaces to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created trimmed surface object.


Keywords:

allocation


IPGenTrivarObject

(allocate.c:1314)

Prototype:

  IPObjectStruct *IPGenTrivarObject(const char *Name,
                                    TrivTVStruct *Triv,
                                    IPObjectStruct *Pnext)


Description:

Creates one trivariate object.

Parameters:

Name: Name of polygonal object.
Triv: Trivariates to place in object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created trivariate object.


Keywords:

allocation


IPGenVECObject

(allocate.c:1861)

Prototype:

  IPObjectStruct *IPGenVECObject(const IrtRType *Vec0,
                                 const IrtRType *Vec1,
                                 const IrtRType *Vec2)


Description:

Creates one vector object.

Parameters:

Vec0, Vec1, Vec2: Coefficients of vector.


Returned Value:

IPObjectStruct *: A newly created vector object.


Keywords:

allocation


IPGenVMODELObject

(allocate.c:1484)

Prototype:

  IPObjectStruct *IPGenVMODELObject(VMdlVModelStruct *VModel)


Description:

Creates one vmodel object.

Parameters:

VModel: A volumetric model object.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenVModelObject

(allocate.c:1458)

Prototype:

  IPObjectStruct *IPGenVModelObject(const char *Name,
                                    VMdlVModelStruct *VModel,
                                    IPObjectStruct *Pnext)


Description:

Creates one vmodel object.

Parameters:

Name: Name of polygonal object.
VModel: A volumetric model object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenVXLVMDLObject

(allocate.c:1532)

Prototype:

  IPObjectStruct *IPGenVXLVMDLObject(VMdlVoxelVModelStruct *VxlVModel)


Description:

Creates one voxel vmodel object.

Parameters:

VxlVModel: A volumetric model object.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGenVecObject

(allocate.c:1833)

Prototype:

  IPObjectStruct *IPGenVecObject(const char *Name,
                                 const IrtRType *Vec0,
                                 const IrtRType *Vec1,
                                 const IrtRType *Vec2,
                                 IPObjectStruct *Pnext)


Description:

Creates one vector object.

Parameters:

Name: Name of polygonal object.
Vec0, Vec1, Vec2: Coefficients of vector.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created vector object.


Keywords:

allocation


IPGenVxlVMdlObject

(allocate.c:1506)

Prototype:

  IPObjectStruct *IPGenVxlVMdlObject(const char *Name,
                                     VMdlVoxelVModelStruct *VxlVModel,
                                     IPObjectStruct *Pnext)


Description:

Creates one voxel vmodel object.

Parameters:

Name: Name of polygonal object.
VxlVModel: A volumetric model object.
Pnext: Entry into the object structure.


Returned Value:

IPObjectStruct *: A newly created triangular surface object.


Keywords:

allocation


IPGetBinObject

(iritprsb.c:312)

Prototype:

  IPObjectStruct *IPGetBinObject(int Handler)


Description:

Routine to read one object from a given binary file, directly. Objects may be recursively defined (as lists), in which case all are read in this single call.

Parameters:

Handler: A handler to the open stream.


Returned Value:

IPObjectStruct *: Read object.


Keywords:

files parser


IPGetDataFiles

(iritprs1.c:803)

Prototype:

  IPObjectStruct *IPGetDataFiles(char const * const *DataFileNames,
                                 int NumOfDataFiles,
                                 int Messages,
                                 int MoreMessages)


Description:

Reads data from a set of files specified by file names. Messages and MoreMessages controls the level of printout. Freeform geometry read in is handed out to a call back function named IPProcessFreeForm before it is returned from this routine. This is done so applications that do not want to deal with freeform shapes will be able to provide a call back that processes the freeform shapes into other geometry such as polygons.

Parameters:

DataFileNames: Array of strings (file names) to process.
NumOfDataFiles: Number of elements in DataFileNames.
Messages: Do we want error messages?
MoreMessages: Do we want informative messages?


Returned Value:

IPObjectStruct *: Objects read from all files, NULL if error.


See Also:

IPProcessFreeForm IPGetDataWFiles

Keywords:

files parser


IPGetDataFromFilehandles

(iritprs1.c:934)

Prototype:

  IPObjectStruct *IPGetDataFromFilehandles(FILE **Files,
                                           int NumOfFiles,
                                           char **Extensions,
                                           int Messages,
                                           int MoreMessages)


Description:

Convenience function for reading input from file handles instead of indirectly from filenames; caller must supply an array of filename extensions (as char * strings) for ascertaining the input files' formats.

Parameters:

Files: Array of file handles to process.
NumOfFiles: Number of elements in Files.
Extensions: Array of file name extensions for the files; used to determine file formats.
Messages: Do we want error messages?
MoreMessages: Do we want informative messages?


Returned Value:

IPObjectStruct *: Objects read from all filehandles.


See Also:

IPGetDataFiles IPGetDataFromFilehandles2

Keywords:

filehandles parser


IPGetDataFromFilehandles2

(iritprs1.c:985)

Prototype:

  IPObjectStruct *IPGetDataFromFilehandles2(FILE **Files,
                                            int NumOfFiles,
                                            IPStreamFormatType *Formats,
                                            int *IsBinaryIndicators,
                                            int Messages,
                                            int MoreMessages)


Description:

Convenience function for reading input from file handles instead of indirectly from filenames; caller must supply an array of file formats and 'IsBinary' indicators.

Parameters:

Files: Array of file handles to process.
NumOfFiles: Number of elements in Files.
Formats: Array of file formats for the files
IsBinaryIndicators: Array of 'IsBinary' indications for the files
Messages: Do we want error messages?
MoreMessages: Do we want informative messages?


Returned Value:

IPObjectStruct *: Objects read from all filehandles.


See Also:

IPGetDataFiles IPGetDataFromFilehandles

Keywords:

filehandles parser


IPGetDataWFiles

(iritprs1.c:867)

Prototype:

  IPObjectStruct *IPGetDataWFiles(wchar_t const * const *DataFileNames,
                                  int NumOfDataFiles,
                                  int Messages,
                                  int MoreMessages)


Description:

Reads data from a set of files specified by file names. Messages and MoreMessages controls the level of printout. Freeform geometry read in is handed out to a call back function named IPProcessFreeForm before it is returned from this routine. This is done so applications that do not want to deal with freeform shapes will be able to provide a call back that processes the freeform shapes into other geometry such as polygons.

Parameters:

DataFileNames: Array of strings (file names) to process.
NumOfDataFiles: Number of elements in DataFileNames.
Messages: Do we want error messages?
MoreMessages: Do we want informative messages?


Returned Value:

IPObjectStruct *: Objects read from all files, NULL if error.


See Also:

IPProcessFreeForm IPGetDataFiles

Keywords:

files parser


IPGetLastObj

(linklist.c:435)

Prototype:

  IPObjectStruct *IPGetLastObj(IPObjectStruct *OList)


Description:

Returns a pointer to last object of a list.

Parameters:

OList: A list of objects.


Returned Value:

IPObjectStruct *: Last object in list OList.


Keywords:

linked lists last element


IPGetLastPoly

(linklist.c:361)

Prototype:

  IPPolygonStruct *IPGetLastPoly(IPPolygonStruct *PList)


Description:

Returns a pointer to last polygon/line of a list.

Parameters:

PList: A list of polygons.


Returned Value:

IPPolygonStruct *: Last polygon in list PList.


Keywords:

linked lists last element


IPGetLastVrtx

(linklist.c:283)

Prototype:

  IPVertexStruct *IPGetLastVrtx(IPVertexStruct *VList)


Description:

Returns a pointer to last vertex of a list.

Parameters:

VList: A list of vertices


Returned Value:

IPVertexStruct *: Last vertex in VList.


Keywords:

linked lists last element


IPGetMatrixFile

(iritprs1.c:3388)

Prototype:

  int IPGetMatrixFile(const char *File,
                      IrtHmgnMatType ViewMat,
                      IrtHmgnMatType ProjMat,
                      int *HasProjMat)


Description:

Gets an IRIT matrix file.

Parameters:

File: File to read the matrix file from.
ViewMat, ProjMat: Matrices to get.
HasProjMat: RUE if has a perspective matrix, FALSE otherwise.


Returned Value:

int: TRUE if (at least) VIEW_MAT was found, FALSE otherwise.


See Also:

IPPutMatrixFile

Keywords:




IPGetObjectByName

(linklist.c:1526)

Prototype:

  IPObjectStruct *IPGetObjectByName(const char *Name,
                                    IPObjectStruct *PObjList,
                                    int TopLevel)


Description:

Searchs for an onbject in given PObjList, named Name.

Parameters:

Name: Of object to find and return a reference of.
PObjList: List of objects to scan.
TopLevel: if TRUE, scan only the top level list.


Returned Value:

IPObjectStruct *: A reference to found object, NULL otherwise.


Keywords:




IPGetObjectTypeAsString

(iritprs2.c:1044)

Prototype:

  const char *IPGetObjectTypeAsString(const IPObjectStruct *PObj)


Description:

Gets a string description of the object type.

Parameters:

PObj: Object to get a string description on.


Returned Value:

const char *: A string describing PObj.


See Also:

IPGetObjectTypeAsString2

Keywords:




IPGetObjectTypeAsString2

(iritprs2.c:1068)

Prototype:

  const char *IPGetObjectTypeAsString2(IPObjStructType ObjType)


Description:

Gets a string description of the object type.

Parameters:

ObjType: Object type to get a string description on.


Returned Value:

const char *: A string describing ObjType.


See Also:

IPGetObjectTypeAsString

Keywords:




IPGetObjects

(iritprs1.c:1136)

Prototype:

  IPObjectStruct *IPGetObjects(int Handler)


Description:

Routine to read the data from a given file. Returns NULL if EOF was reached or error occurred.

Parameters:

Handler: A handler to the open stream.


Returned Value:

IPObjectStruct *: Read object, or NULL if failed.


See Also:

IPSetPolyListCirc IPSetFlattenObjects IPSetReadOneObject PTransformInstances.

Keywords:

files parser


IPGetPrevObj

(linklist.c:455)

Prototype:

  IPObjectStruct *IPGetPrevObj(IPObjectStruct *OList, IPObjectStruct *O)


Description:

Returns a pointer to previous object in OList to O.

Parameters:

OList: A list of objects.
O: For which the previous object in OList is pursuit.


Returned Value:

IPObjectStruct *: Previous object to O in OList if found, NULL otherwise.


Keywords:

previous element linked lists


IPGetPrevPoly

(linklist.c:382)

Prototype:

  IPPolygonStruct *IPGetPrevPoly(IPPolygonStruct *PList,
                                 IPPolygonStruct *P)


Description:

Returns a pointer to previous polygon in PList to P.

Parameters:

PList: A list of polygons.
P: For which the previous polygon in PList is pursuit.


Returned Value:

IPPolygonStruct *: Previous polygon to P in PList if found, NULL otherwise.


Keywords:

previous element linked lists


IPGetPrevVrtx

(linklist.c:303)

Prototype:

  IPVertexStruct *IPGetPrevVrtx(IPVertexStruct *VList, IPVertexStruct *V)


Description:

Returns a pointer to previous vertex in VList to V.

Parameters:

VList: A list of vertices.
V: For which the previous vertex in VList is pursuit.


Returned Value:

IPVertexStruct *: Previous vertex to V in VList if found, NULL otherwise.


Keywords:

previous element linked lists


IPGetPrspMat

(prsrgeom.c:73)

Prototype:

  IrtHmgnMatType *IPGetPrspMat(int *WasPrspMat)


Description:

Fetches the current perspective matrix.

Parameters:

WasPrspMat: TRUE if parser until now detected a perspective matrix.


Returned Value:

IrtHmgnMatType *: A reference to the matrix.


See Also:

IPGetViewMat

Keywords:




IPGetRealNumber

(iritprs1.c:3428)

Prototype:

  int IPGetRealNumber(const char *StrNum, IrtRType *RealNum)


Description:

Fetchs a real number fro ma given string.

Parameters:

StrNum: A string representing a real number.
RealNum: The fetched real number.


Returned Value:

int: TRUE if number was parsed correctly, FALSE otherwise.


Keywords:

files


IPGetViewMat

(prsrgeom.c:50)

Prototype:

  IrtHmgnMatType *IPGetViewMat(int *WasViewMat)


Description:

Fetches the current view matrix.

Parameters:

WasViewMat: TRUE if parser until now detected a view matrix.


Returned Value:

IrtHmgnMatType *: A reference to the matrix.


See Also:

IPGetPrspMat

Keywords:




IPHasError

(prsr_err.c:190)

Prototype:

  int IPHasError(const char **ErrorDesc)


Description:

Returns TRUE if an error was signaled and set ErrorDesc to its value.

Parameters:

ErrorDesc: Where to place the error description if was one.


Returned Value:

int: TRUE if there was an error, FALSE otherwise.


Keywords:

error handling


IPHierarchyObjToLinkedList

(linklist.c:957)

Prototype:

  void *IPHierarchyObjToLinkedList(const IPObjectStruct *HObj,
                                   IPObjStructType ObjType)


Description:

Copy and collect all objects in HObj that are of type ObjType.

Parameters:

HObj: Hierarchy object to process.
ObjType: ype of objects to fetch.


Returned Value:

void *: Linked list of (copies) of input data of type ObjType (i.e. curves), NULL if error.


See Also:

IPObjLnkListToListObject IPLnkListToListObject IPListObjToLinkedList2 IPListObjToLinkedList IPHierarchyObjToVector

Keywords:




IPHierarchyObjToVector

(linklist.c:1093)

Prototype:

  int IPHierarchyObjToVector(const IPObjectStruct *HObj,
                             IPObjStructType ObjType,
                             void ***Vec,
                             int ElmntSize)


Description:

Referencing (not copying) all objects in HObj that are of type ObjType.

Parameters:

HObj: Hierarchy object to process.
ObjType: ype of objects to fetch.
Vec: Vector of referenced types ObjType. Will be allocated/resized dynamically and on the fly as needed.
ElmntSize: ne element size of ObjType element in Vec.


Returned Value:

int: Number of elements referenced in resulting vector. If Zero, *Vec will be set to NULL.


See Also:

IPObjLnkListToListObject IPLnkListToListObject IPListObjToLinkedList2 IPListObjToLinkedList IPHierarchyObjToLinkedList

Keywords:




IPIgesLoadFile

(igs_irit.c:283)

Prototype:

  IPObjectStruct *IPIgesLoadFile(const char *IgesFileName,
                                 const IPIgesLoadDfltFileParamsStruct *Params)


Description:

Read IGES 5.0 files into IRIT data.

Parameters:

IgesFileName: Name of IGES file.
Params: Parameters to control the way the IGES file is loaded. ClipTrimmedSrf- TRUE to clip trimming surface to the size of the trimming curves. DumpAll - TRUE to dump all entities, including auxiliary entities used by other entities. IgnoreGrouping - TRUE to ignore any instance grouping. ApproxCoversion - TRUE to make an approximated conversion (of trimming curves with numerous samples. InverseProjCrvOnSrfs - TRUE to back project E3 trimming curves to the UV surface space. Disable for debugging only. Messages - 1 for error messages, 2 to include warning messages, 3 to include informative messages. 4 to include dump of IRIT objects.


Returned Value:

IPObjectStruct *: Read IGES DATA or NULL if error.


See Also:

IPIgesSaveFile IPIgesLoadFileSetDefaultParameters

Keywords:




IPIgesLoadFileSetDefaultParameters

(iritprs1.c:1262)

Prototype:

  void IPIgesLoadFileSetDefaultParameters(int ClipTrimmedSrf,
                                          int DumpAll,
                                          int IgnoreGrouping,
                                          int ApproxCoversion,
                                          int InverseProjCrvOnSrfs,
                                          int Messages)


Description:

Sets default loading parameters for Iges files.

Parameters:

ClipTrimmedSrf: TRUE to clip trimming surface to their trimming curves.
DumpAll: TRUE to dump all entities, including auxiliary entities used by other entities.
IgnoreGrouping: TRUE to ignore any instance grouping.
ApproxCoversion: RUE to support approximated geometry conversion (i.e. trimming curves).
InverseProjCrvOnSrfs: TRUE to back project Euclidean trimming curves on the UV domain of the surfaces. Slow but typically necessary. Disable for debugging mostly.
Messages: 1 for error messages, 2 to include warning messages, 3 to include informative messages. 4 to include dump of IRIT objects.


Returned Value:

void


See Also:

IPGetObjects IPIgesLoadFile

Keywords:




IPIgesSaveEucTrimCrvs

(irit_igs.c:305)

Prototype:

  int IPIgesSaveEucTrimCrvs(int SaveEucTrimCrvs)


Description:

Sets the state of the IGES file save.

Parameters:

SaveEucTrimCrvs: TRUE to save Euclidean trimming curves as well.


Returned Value:

int: Old state of saving Euclidean trimming curves.


See Also:

IPIgesSaveFile

Keywords:




IPIgesSaveFile

(irit_igs.c:173)

Prototype:

  int IPIgesSaveFile(const IPObjectStruct *PObject,
                     IrtHmgnMatType CrntViewMat,
                     const char *IgesFileName,
                     int Messages)


Description:

Dumps IRIT object as IGES 5.0 file.

Parameters:

PObject: IritObject to dump as IGES 5.0 file.
CrntViewMat: The current viewing matrix to apply to the object.
IgesFileName: Name of IGES file.
Messages: TRUE for warning messages.


Returned Value:

int: TRUE if successful, FALSE otherwise.


See Also:

IPIgesLoadFile IPIgesSaveEucTrimCrvs

Keywords:




IPInputUnGetC

(iritprs1.c:2523)

Prototype:

  void IPInputUnGetC(int Handler, char c)


Description:

Routine to unget a single character from input stream.

Parameters:

Handler: A handler to the open stream.
c: Character to unget.


Returned Value:

void


Keywords:

files parser


IPIritPlgns2CagdPlgns

(ip_cnvrt.c:128)

Prototype:

  CagdPolygonStruct *IPIritPlgns2CagdPlgns(IPPolygonStruct *Polys)


Description:

Routine to convert a irit polygons to cagd polygons. Old irit polygons are freed!

Parameters:

Polys: Polygons in irit form to be converted in cagd_lib form, in place.


Returned Value:

CagdPolygonStruct *: Same polylines in CAGD format.


See Also:

IPCagdPlgns2IritPlgns CagdCnvrtPolyline2LinBspCrv

Keywords:




IPLinkedListToObjList

(linklist.c:672)

Prototype:

  IPObjectStruct *IPLinkedListToObjList(const IPObjectStruct *LnkList)


Description:

Convert a linked list of similar objects to a list object.

Parameters:

LnkList: Linked list to process.


Returned Value:

IPObjectStruct *: A list object holding the linked list as separated individual objects.


See Also:

IPObjLnkListToListObject IPLnkListToListObject IPHierarchyObjToLinkedList

Keywords:




IPListObjToLinkedList

(linklist.c:833)

Prototype:

  void *IPListObjToLinkedList(const IPObjectStruct *LObjs)


Description:

Convert a list object of similar objects to a linked list of these objs.

Parameters:

LObjs: List object to process.


Returned Value:

void *: Linked list of (copies) of input data, NULL if error.


See Also:

IPObjLnkListToListObject IPLnkListToListObject IPListObjToLinkedList2 IPHierarchyObjToLinkedList

Keywords:




IPListObjToLinkedList2

(linklist.c:765)

Prototype:

  IPObjectStruct *IPListObjToLinkedList2(const IPObjectStruct *LObjs)


Description:

Convert a list object of similar objects to a linked list of these objs.

Parameters:

LObjs: List object to process.


Returned Value:

IPObjectStruct *: Linked list of (copies) of input data, NULL if error.


See Also:

IPObjLnkListToListObject IPLnkListToListObject IPListObjToLinkedList IPHierarchyObjToLinkedList

Keywords:




IPListObjectAppend

(allocate.c:677)

Prototype:

  void IPListObjectAppend(IPObjectStruct *PObj, IPObjectStruct *PObjItem)


Description:

Insert an object PObjItem as last into a list object, PObj.

Parameters:

PObj: A list object to insert PObjItem into.
PObjItem: Element to insert last into the list object PObj.


Returned Value:

void


See Also:

IPListObjectLength IPListObjectFind IPListObjectInsert IPListObjectDelete IPListObjectGet IPListObjectAppendList

Keywords:

lists append


IPListObjectAppendList

(allocate.c:706)

Prototype:

  void IPListObjectAppendList(IPObjectStruct *PObj,
                              IPObjectStruct *PObjNew)


Description:

Insert the objects in list object PObjNewList as last into a list object, PObj.

Parameters:

PObj: A list object to insert the objects in PObjItem into, in place.
PObjNew: list object to move its objects into PObj. In place (PObjNew will be freed by this function once operation is complete).


Returned Value:

void


See Also:

IPListObjectLength IPListObjectFind IPListObjectInsert IPListObjectDelete IPListObjectGet IPListObjectAppend

Keywords:

lists append


IPListObjectDelete

(allocate.c:740)

Prototype:

  IPObjectStruct *IPListObjectDelete(IPObjectStruct *PObj,
                                     int Index,
                                     int FreeItem)


Description:

Delete an object at index Index from list of objects, PObj.

Parameters:

PObj: A list of objects to delete item Index.
Index: Index where item should be deleted.
FreeItem: If TRUE, Item is also freed, if FALSE only deleted from list.


Returned Value:

IPObjectStruct *: The removed object if not FreeItem, NULL otherwise.


See Also:

IPListObjectLength IPListObjectFind IPListObjectInsert IPListObjectAppend IPListObjectGet IPListObjectDelete2

Keywords:

lists insert delete


IPListObjectDelete2

(allocate.c:790)

Prototype:

  void IPListObjectDelete2(IPObjectStruct *PObj,
                           IPObjectStruct *PObjToDel,
                           int FreeItem)


Description:

Delete an object at index Index from list of objects, PObj.

Parameters:

PObj: A list object to delete PObjToDel from.
PObjToDel: bject to delete from list object PObj.
FreeItem: If TRUE, Item is also freed, if FALSE only deleted from list.


Returned Value:

void


See Also:

IPListObjectLength IPListObjectFind IPListObjectInsert IPListObjectAppend IPListObjectGet IPListObjectDelete

Keywords:

lists insert delete


IPListObjectFind

(allocate.c:566)

Prototype:

  int IPListObjectFind(const IPObjectStruct *PObjList,
                       const IPObjectStruct *PObj)


Description:

Returns TRUE if PObj is an object in list PObjList or in a sublist of PObjList, recursively.

Parameters:

PObjList: To search for PObj in.
PObj: The element to search in PObjList.


Returned Value:

int: TRUE if PObj was found in PObjList, FALSE otherwise.


See Also:

IPListObjectLength IPListObjectInsert IPListObjectAppend IPListObjectDelete IPListObjectGet

Keywords:

linked lists find


IPListObjectGet

(allocate.c:823)

Prototype:

  IPObjectStruct *IPListObjectGet(const IPObjectStruct *PObj, int Index)


Description:

Returns the object number Index in list of PObjList object.

Parameters:

PObj: A list object to extract one object from.
Index: Index of object to extract from PObj.


Returned Value:

IPObjectStruct *: Index object in list PObj, or NULL if no such thing.


See Also:

IPListObjectLength IPListObjectFind IPListObjectInsert IPListObjectAppend IPListObjectDelete

Keywords:

lists find


IPListObjectInsert

(allocate.c:607)

Prototype:

  void IPListObjectInsert(IPObjectStruct *PObj,
                          int Index,
                          IPObjectStruct *PObjItem)


Description:

Insert an object PObjItem at index Index into a list of objects, PObj. Overwriting existing item if was any.

Parameters:

PObj: A list of objects to insert PObjItem into.
Index: Index where PObjItem should enter PObj.
PObjItem: Element to insert into the list PObj.


Returned Value:

void


See Also:

IPListObjectInsert2 IPListObjectLength IPListObjectFind IPListObjectAppend IPListObjectDelete IPListObjectGet

Keywords:

lists insert


IPListObjectInsert2

(allocate.c:644)

Prototype:

  void IPListObjectInsert2(IPObjectStruct *PObj,
                           int Index,
                           IPObjectStruct *PObjItem)


Description:

Insert an object PObjItem at index Index into a list of objects, PObj. Same as IPListObjectInsert, but make sure to first make space in the list at index Index, by moving all items above or equal to index Index one position up, expanding the length of the list by one.

Parameters:

PObj: A list of objects to insert PObjItem into.
Index: Index where PObjItem should enter PObj.
PObjItem: Element to insert into the list PObj.


Returned Value:

void


See Also:

IPListObjectInsert IPListObjectLength IPListObjectFind IPListObjectAppend IPListObjectDelete IPListObjectGet

Keywords:

lists insert


IPListObjectLength

(allocate.c:530)

Prototype:

  int IPListObjectLength(const IPObjectStruct *PObj)


Description:

Returns the length of a list, given a list of objects.

Parameters:

PObj: A list of objects to find its length.


Returned Value:

int: Resulting length of list PObj.


See Also:

IPListObjectFind IPListObjectInsert IPListObjectAppend IPListObjectDelete IPListObjectGet

Keywords:

linked lists length


IPLnkListToListObject

(linklist.c:599)

Prototype:

  IPObjectStruct *IPLnkListToListObject(VoidPtr LnkList,
                                        IPObjStructType ObjType)


Description:

Converts a linked list into one list object, in place.

Parameters:

LnkList: Linked list to convert. We assume the Pnext pointer is the first entry in the structure.
ObjType: Type of objects we have in the linked list.


Returned Value:

IPObjectStruct *: A list object holding all items in linked list.


See Also:

IPAppendListObjects IPObjLnkListToListObject IPLinkedListToObjList IPHierarchyObjToLinkedList

Keywords:




IPMapObjectInPlace

(ff_cnvrt.c:1575)

Prototype:

  void IPMapObjectInPlace(IPObjectStruct *PObj, IrtHmgnMatType Mat, void *AuxData)


Description:

Maps the object according to the given matrix, in place.

Parameters:

PObj: Object to map, in place, according to Mat.
Mat: Transformation matrix.
AuxData: Optional auxiliary data - not used.


Returned Value:

void


Keywords:




IPMshCnvrtIrit2Mesh

(irit_msh.c:2839)

Prototype:

  int IPMshCnvrtIrit2Mesh(const IPObjectStruct *PObj,
                          IPMshDataStruct *MeshData,
                          int Messages,
                          int *UVWSamples,
                          IrtRType Eps,
                          CagdBType MixedElements,
                          CagdBType Quads)


Description:

Dumps IRIT object into the mesh data struct.

Parameters:

PObj: IritObject to convert to Mesh data struct.
MeshData: Mesh data struct.
Messages: TRUE for warning messages.
UVWSamples: Number of UVWSamples to sample, in UVW. At least 2.
Eps: Tolerance of equality.
MixedElements: RUE for mixing elements, FALSE otherwise.
Quads: TRUE for dividing surfaces to quads, FALSE for dividing surfaces to two triangles per quad


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:




IPMshFreeMesh

(irit_msh.c:2725)

Prototype:

  void IPMshFreeMesh(IPMshDataStruct *MeshData)


Description:

Frees all memory allocations of mesh data struct

Parameters:

MeshData: Mesh data struct.


Returned Value:

void


Keywords:




IPMshSaveFile

(irit_msh.c:3048)

Prototype:

  int IPMshSaveFile(const IPObjectStruct *PObj,
                    const char *MSHFileName,
                    int Messages,
                    int *UVWSamples,
                    IrtRType Eps,
                    CagdBType MixedElements,
                    CagdBType Quads)


Description:

Dumps IRIT object as a MSH file.

Parameters:

PObj: IritObject to dump as MSH file.
MSHFileName: Name of MSH file, "-" or NULL for stdout.
Messages: TRUE for warning messages.
UVWSamples: Number of UVWSamples to sample, in UVW. At least 2.
Eps: Tolerance of equality.
MixedElements: RUE for mixing elements, FALSE otherwise.
Quads: TRUE for dividing surfaces to quads, FALSE for dividing surfaces to two triangles per quad


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:




IPNCGCode2Geometry

(irit_cnc.c:1181)

Prototype:

  IPObjectStruct *IPNCGCode2Geometry(VoidPtr IPNCGCodes)


Description:

Convert the given stream of G Code toolpath to IRIT geometry. Every linear motion is considered one polyline as long as it is either G0 or G1. Free-air motion (G0) is marked with attribute "freemotion". "ToolNum", "SpindleSpeed" and "SpindleSpeed" attributes are saved on every vertex. As a side effect, computes the length (Len slot) of each G Code motion, and a curve representation (Crv slot).

Parameters:

IPNCGCodes: Current GCodes' stream.


Returned Value:

IPObjectStruct *: The toolpath in IRIT form.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserNumSteps IPNCGCodeParserFree IPNCGCodeLength IPNCGCodeBBox

Keywords:




IPNCGCodeBBox

(irit_cnc.c:1452)

Prototype:

  GMBBBboxStruct *IPNCGCodeBBox(VoidPtr IPNCGCodes, int IgnoreG0Fast)


Description:

Computes a bounding box over the coordinates found in the G Code stream.

Parameters:

IPNCGCodes: Current GCodes' stream.
IgnoreG0Fast: If TRUE, ignore motions with G0's in bbox computaton.


Returned Value:

GMBBBboxStruct *: The computed bbox returned in a static memory area.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeLength IPNCGCodeParserNumSteps IPNCGCodeParserFree

Keywords:




IPNCGCodeFastSpeedUpFactor

(irit_cnc.c:2438)

Prototype:

  IrtRType IPNCGCodeFastSpeedUpFactor(VoidPtr IPNCGCodes, IrtRType NewFactor)


Description:

Controls the speed of the simulation as a multiplicative time facotr.

Parameters:

IPNCGCodes: G Code sequence to traverse.
NewFactor: New Speed multiplicative factor to employ.


Returned Value:

IrtRType: Old value of the simulation multiplicative time factor.


Keywords:




IPNCGCodeGenToolGeom

(irit_cnc.c:2071)

Prototype:

  CagdSrfStruct *IPNCGCodeGenToolGeom(IPNCGCToolType ToolType,
                                      IrtRType Diameter,
                                      IrtRType Height,
                                      IrtRType TorusRadius,
                                      CagdCrvStruct **ToolProfile,
                                      CagdSrfStruct **ToolBottom)


Description:

create tool geometry from tool's parameters, assuming not a general tool in which case this function returns NULL. Tool is created at a canonical position (origin) and orientation (+Z),

Parameters:

ToolType: One of flat, ball, or Torus end.
Diameter: Of tool main cylinder.
Height: Of constructed tool entire geometry. Height must be larger than diameter.
TorusRadius: nly of a Torus end tool - minor radius of torus rounding. TorusRadius must be smaller than Diameter/2.
ToolProfile: 2D profile cross section curve of the constructed tool in the XZ plane (+Z only). This profile is symmetric with respect to the Z axis, spanning both -X and +X sides and only holds the bottom visible part of the tool (to be used in Z-buffer further processing).
ToolBottom: The bottom part of the tool that will cut material, in the same canonical position.


Returned Value:

CagdSrfStruct *: Geometry of the constructed tool, NULL if failed.


See Also:

IPNCGCodeTraverseStep

Keywords:




IPNCGCodeHasABC

(irit_cnc.c:2416)

Prototype:

  int IPNCGCodeHasABC(VoidPtr IPNCGCodes)


Description:

Returns if we found ABC orientation GCodes in teh stream.

Parameters:

IPNCGCodes: G Code sequence to traverse.


Returned Value:

int: TRUE if has ABC, FALSE otehrwise.


Keywords:




IPNCGCodeLength

(irit_cnc.c:1390)

Prototype:

  IrtRType IPNCGCodeLength(VoidPtr IPNCGCodes, IrtRType *FastLength)


Description:

Computes the accumulated arc length of the given stream of G Code toolpath, in cutting speed motion. Assumes IPNCGCode2Geometry was invoked on this stream to compute each G code individual arc length.

Parameters:

IPNCGCodes: Current GCodes' stream.
FastLength: Accumulate fast motion length here, if non NULL.


Returned Value:

IrtRType: Computed arc length.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeBBox IPNCGCode2Geometry IPNCGCodeParserNumSteps IPNCGCodeParserFree

Keywords:




IPNCGCodeLoadFile

(irit_cnc.c:165)

Prototype:

  IPObjectStruct *IPNCGCodeLoadFile(const char *NCGCODEFileName,
                                    const IPGcodeLoadDfltFileParamsStruct
                                                                        *Params)


Description:

Reads in a G-code CN file and return it as Irit geometry.

Parameters:

NCGCODEFileName: G-Code file to read in.
Params: Loading parameters. ArcCentersRelative - TRUE for arc center in relative coordinates with respect to arc starting location, FALSE if in absolute coordinates. Messages - TRUE, for more messages.


Returned Value:

IPObjectStruct *: Read data or NULL if error.


See Also:

IPNCGCodeLoadFileSetDefaultParameters

Keywords:




IPNCGCodeLoadFileSetDefaultParameters

(iritprs1.c:1358)

Prototype:

  void IPNCGCodeLoadFileSetDefaultParameters(int ArcCentersRelative,
                                             int Messages)


Description:

Sets default loading parameters for GCode NC files.

Parameters:

ArcCentersRelative: TRUE for arc center in relative coordinates with respect to arc starting location, FALSE if in absolute coordinates.
Messages: TRUE, for more messages.


Returned Value:

void


See Also:

IPGetObjects IPNCGCodeLoadFile

Keywords:




IPNCGCodeParserDone

(irit_cnc.c:742)

Prototype:

  int IPNCGCodeParserDone(VoidPtr IPNCGCodes)


Description:

Complete the reading of a new stream of G code.

Parameters:

IPNCGCodes: Current GCodes' stream.


Returned Value:

int: TRUE if successful, FALSE otherwise.


See Also:

IPNCGCodeParserFree IPNCGCodeParserParseLine IPNCGCodeParserInit IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserNumSteps IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeParserFree

(irit_cnc.c:975)

Prototype:

  void IPNCGCodeParserFree(VoidPtr IPNCGCodes)


Description:

Free a processed stream of G codes.

Parameters:

IPNCGCodes: G codes' stream to free.


Returned Value:

void


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserNumSteps IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeParserGetNext

(irit_cnc.c:916)

Prototype:

  IPNCGCodeLineStruct *IPNCGCodeParserGetNext(VoidPtr IPNCGCodes)


Description:

Returns the next GCode line in the parsed stream IPNCGCodes.

Parameters:

IPNCGCodes: Current GCodes' stream.


Returned Value:

IPNCGCodeLineStruct *: The next GCode parsed state in the stream. NULL if end of stream.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserFree IPNCGCodeParserNumSteps IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeParserGetPrev

(irit_cnc.c:946)

Prototype:

  IPNCGCodeLineStruct *IPNCGCodeParserGetPrev(VoidPtr IPNCGCodes)


Description:

Returns the previous GCode line in the parsed stream IPNCGCodes.

Parameters:

IPNCGCodes: Current GCodes' stream.


Returned Value:

IPNCGCodeLineStruct *: The previous GCode parsed state in the stream. NULL if beginning of stream.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserNumSteps IPNCGCodeParserFree

Keywords:




IPNCGCodeParserInit

(irit_cnc.c:241)

Prototype:

  VoidPtr IPNCGCodeParserInit(int ArcCentersRelative,
                              IrtRType DefFeedRate,
                              IrtRType DefSpindleSpeed,
                              int DefToolNumber,
                              int ReverseZDir,
                              int CoerceEndPoints,
                              IPNCGCodeParserErrorFuncType ErrorFunc)


Description:

Initialize a new stream of G code to process.

Parameters:

ArcCentersRelative: TRUE if arc centers (G2/G3) are relative to arc starting location, FALSE if centers are absolute.
DefFeedRate: Default feed rate to use if none found. In units per second.
DefSpindleSpeed: Default spindle speed if none found, in RPM.
DefToolNumber: Default tool number to use if none found.
ReverseZDir: TRUE to reverse Z values. If FALSE, +Z points up and toward the machining tool.
CoerceEndPoints: TRUE to force visiting of precise G code end points or (if FALSE) traverse by arclen (may skip end pts).
ErrorFunc: Call back function in case of errors. Can be NULL to fully ignore errors.


Returned Value:

VoidPtr: A handle on the G code stream to process.


See Also:

IPNCGCodeParserDone IPNCGCodeParserParseLine IPNCGCodeParserFree IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserNumSteps IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeParserNumSteps

(irit_cnc.c:855)

Prototype:

  int IPNCGCodeParserNumSteps(VoidPtr IPNCGCodes)


Description:

Returns the number of GCode steps in the parsed stream IPNCGCodes.

Parameters:

IPNCGCodes: Current GCodes' stream.


Returned Value:

int: Number of GCode steps in IPNCGCodes.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserFree IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeParserParseLine

(irit_cnc.c:466)

Prototype:

  VoidPtr IPNCGCodeParserParseLine(VoidPtr IPNCGCodes,
                                   const char *NextLine,
                                   int LineNum)


Description:

Process one GCode line as specified by NextLine.

Parameters:

IPNCGCodes: Current GCodes' stream.
NextLine: Next GCode line to process.
LineNum: Line number in the file this line was read from.


Returned Value:

VoidPtr: A handle on the G code stream to process


See Also:

IPNCGCodeParserInit IPNCGCodeParserDone IPNCGCodeParserFree IPNCGCodeParserNumSteps IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeParserSetStep

(irit_cnc.c:884)

Prototype:

  IPNCGCodeLineStruct *IPNCGCodeParserSetStep(VoidPtr IPNCGCodes,
                                              int NewStep)


Description:

Sets the current GCode step in the parsed stream IPNCGCodes.

Parameters:

IPNCGCodes: Current GCodes' stream.
NewStep: The new current step to set to.


Returned Value:

IPNCGCodeLineStruct *: This step's GCode parsed state in the stream. NULL if outside the range of stream.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserFree IPNCGCodeParserGetNext IPNCGCodeParserNumSteps IPNCGCodeParserGetPrev

Keywords:




IPNCGCodeResetFeedRates

(irit_cnc.c:2389)

Prototype:

  void IPNCGCodeResetFeedRates(VoidPtr IPNCGCodes)


Description:

Reset the feedrates to original inputfile values.

Parameters:

IPNCGCodes: G Code sequence to traverse.


Returned Value:

void


Keywords:




IPNCGCodeSave2File

(irit_cnc.c:2316)

Prototype:

  int IPNCGCodeSave2File(VoidPtr IPNCGCodes, const char *FName)


Description:

Save the given G code sequence into a file.

Parameters:

IPNCGCodes: Current GCodes' stream.
FName: File name to save the G Codes into, "-" for stdout.


Returned Value:

int: TRUE if successful, false otherwise.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeLength IPNCGCodeParserNumSteps IPNCGCodeParserFree

Keywords:




IPNCGCodeSaveFile

(iritwcnc.c:102)

Prototype:

  int IPNCGCodeSaveFile(const IPObjectStruct *PObj,
                        IrtHmgnMatType CrntViewMat,
                        const char *NCGCODEFileName,
                        int Messages,
                        int Units,
                        int OutputType)


Description:

Dumps IRIT object as an NCGCode file.

Parameters:

PObj: IritObject to dump as NCGCODE file.
CrntViewMat: The current viewing matrix to apply to the object.
NCGCODEFileName: Name of NCGCODE file, "-" or NULL for stdout.
Messages: TRUE for warning messages.
Units: 0 for inches, 1 for Milimeters.
OutputType: 0 for CNC machining, 1 for CNC laser, 2 for AM printer.


Returned Value:

int: TRUE if successful, FALSE otherwise.


See Also:

IPNCGCodeSaveFileSetTol

Keywords:




IPNCGCodeTraverseInit

(irit_cnc.c:1532)

Prototype:

  IrtRType IPNCGCodeTraverseInit(VoidPtr IPNCGCodes,
                                 IrtRType InitTime,
                                 IrtRType FastSpeedUpFactor,
                                 IrtRType TriggerArcLen)


Description:

Init a request to traverse this sequence of G Code.

Parameters:

IPNCGCodes: G Code sequence to traverse.
InitTime: Initial time of animation.
FastSpeedUpFactor: Speedup multiplier for fast G0 motion.
TriggerArcLen: A minimal arc length to accumulate to create triggers every such arc length, or non-positive value to ignore.


Returned Value:

IrtRType: Total arc-length of cutting speed motion


See Also:

IPNCGCodeLength IPNCGCodeTraverseTime IPNCGCodeTraverseTriggerAAL

Keywords:




IPNCGCodeTraverseLines

(irit_cnc.c:2363)

Prototype:

  const char *IPNCGCodeTraverseLines(VoidPtr IPNCGCodes, int Restart)


Description:

Traverses the given G code sequence as strings.

Parameters:

IPNCGCodes: Current GCodes' stream.
Restart: TRUE to init the traversal process.


Returned Value:

const char *: Next line, NULL if done.


See Also:

IPNCGCodeParserInit IPNCGCodeParserParseLine IPNCGCodeParserSetStep IPNCGCodeParserGetNext IPNCGCodeLength IPNCGCodeParserNumSteps IPNCGCodeParserFree

Keywords:




IPNCGCodeTraverseStep

(irit_cnc.c:1914)

Prototype:

  IrtRType IPNCGCodeTraverseStep(VoidPtr IPNCGCodes,
                                 IrtRType Step,
                                 IrtRType *NewRealTime,
                                 IrtPtType NewToolPosition,
                                 IPNCGCodeLineStruct **NewGC)


Description:

Advance the animated tool motion along this sequence of G Code by Step.

Parameters:

IPNCGCodes: G Code sequence to traverse.
Step: Delta position step to add/subtract from current pos. Can be negative to subtract and go backward.
NewRealTime: New real time of new position is returned here with respect to starting time (that is 0.0).
NewToolPosition: The traversed tool position is saved here.
NewGC: GCode info at NewToolPosition.


Returned Value:

IrtRType: New arc-length of cutting speed motion so far. -1.0 is returned if we completed the traversal, -2.0 is returned if we when back to the start point.


See Also:

IPNCGCodeLength IPNCGCodeTraverseInit IPNCGCodeTraverseTime IPNCGCodeTraverseTriggerAAL

Keywords:




IPNCGCodeTraverseTime

(irit_cnc.c:1725)

Prototype:

  IrtRType IPNCGCodeTraverseTime(VoidPtr IPNCGCodes,
                                 IrtRType Dt,
                                 IrtRType *NewRealTime,
                                 IrtPtType NewToolPosition,
                                 IrtPtType NewToolOrientation,
                                 IPNCGCodeLineStruct **NewGC)


Description:

Advance the animated tool motion along this sequence of G Code to Time.

Parameters:

IPNCGCodes: G Code sequence to traverse.
Dt: Delta time step to add/subtract from current time. Can be negative to subtract and go backward.
NewRealTime: New real time of new position is returned here with respect to starting time (that is 0.0).
NewToolPosition: The traversed tool position is saved here.
NewToolOrientation: If multi-axis tool path the orientation (ABC GCodes) will be saved here.
NewGC: GCode info at NewToolPosition/NewToolOrientation.


Returned Value:

IrtRType: New arc-length of cutting speed motion so far. -1.0 is returned if we completed the traversal, -2.0 is returned if we when back to the start point. -3.0 is returned if we have an empty GCode file.


See Also:

IPNCGCodeLength IPNCGCodeTraverseInit IPNCGCodeTraverseStep IPNCGCodeTraverseTriggerAAL

Keywords:




IPNCGCodeTraverseTriggerAAL

(irit_cnc.c:1583)

Prototype:

  int IPNCGCodeTraverseTriggerAAL(VoidPtr IPNCGCodes,
                                  IPNCGCodeEvalMRRFuncType EvalMRR,
                                  VoidPtr MRRData)


Description:

Handle accumulations of arc-length (AAL). Tests and generates triggers every prescribed arc length. If a trigger is generated and EvalMRR is not NULL, this function is invoked to evaluate the material removal rate in this arc length interval. EvalMRR should return a 1.0 if the feed rate is appropriate and return a multiplicative factor to modify the feed rate if not.

Parameters:

IPNCGCodes: G Code sequence to traverse.
EvalMRR: Function to invoke to compute the material removal rate in this arclen interval, or NULL to ignore. This function should return 1.0 if feedrate is fine or a multiplicative factor to modify the feedrate otherwise.
MRRData: A pointer to pass to EWvalMRR as its single parameter.


Returned Value:

int: TRUE if generated a trigger, FALSE otherwise.


See Also:

IPNCGCodeLength IPNCGCodeTraverseInit IPNCGCodeTraverseStep IPNCGCodeTraverseTime

Keywords:




IPNCGCodeUpdateGCodeIndexCBFunc

(irit_cnc.c:1644)

Prototype:

  IPNCGCodeIndexUpdateFuncType IPNCGCodeUpdateGCodeIndexCBFunc(
                                             VoidPtr IPNCGCodes,
                                             IPNCGCodeIndexUpdateFuncType Func,
                                             void *Data)


Description:

Sets a call back function to be invoked on every G code index change in the simulation.

Parameters:

IPNCGCodes: G Code sequence to traverse.
Func: New call back function to use or NULL to disable.
Data: Optional call back data to transfer. Can be NULL.


Returned Value:

IPNCGCodeIndexUpdateFuncType: Old call back function.


See Also:

IPNCGCodeTraverseInit

Keywords:




IPOBJLoadFile

(obj_irit.c:397)

Prototype:

  IPObjectStruct *IPOBJLoadFile(const char *OBJFileName,
                                const IPOBJLoadDfltFileParamsStruct *Params)


Description:

Read an OBJ file into IRIT data structure.

Parameters:

OBJFileName: Name of OBJ file. NULL means standard input.
Params: Loading parameters. WarningMsgs - Weather to display warning messages or not. WhiteDiffuseTexture - When material has texture and RGB (0,0,0) give it RGB (1,1,1). IgnoreFullTransp - Full transparency of material is ignored. ForceSmoothing - If the s statement isn't given use smoothing for all the polygons.


Returned Value:

IPObjectStruct *: Read OBJ DATA or NULL if error.


See Also:

IPOBJSaveFile IPOBJLoadFileSetDefaultParameters

Keywords:




IPOBJLoadFileSetDefaultParameters

(iritprs1.c:1330)

Prototype:

  void IPOBJLoadFileSetDefaultParameters(int WarningMsgs,
                                         int WhiteDiffuseTexture,
                                         int IgnoreFullTransp,
                                         int ForceSmoothing)


Description:

Sets default loading parameters for OBJ files.

Parameters:

WarningMsgs: Weather to display warning messages or not.
WhiteDiffuseTexture: hen material has texture and RGB (0,0,0) give it RGB (1,1,1).
IgnoreFullTransp: Full transparency of material is ignored.
ForceSmoothing: If the s statement isn't given use smoothing for all the polygons.


Returned Value:

void


See Also:

IPGetObjects IPOBJLoadFile

Keywords:




IPOBJSaveFile

(irit_obj.c:137)

Prototype:

  int IPOBJSaveFile(const IPObjectStruct *PObj,
                    const char *OBJFileName,
                    int WarningMsgs,
                    int CnvxTriangPolys,
                    int UniqueVertices)


Description:

Convert IRIT data structure to an OBJ file.

Parameters:

PObj: IRIT data structure to convert.
OBJFileName: Name of OBJ file to write the result to.
WarningMsgs: Whether to display warning messages or not.
CnvxTriangPolys: to ignore, 1 for convex polygons, 2 for triangles only. Employed only for input that is polygonal.
UniqueVertices: f true, don't gather identical vertices to one vector. Each polygon uses its own vertices.


Returned Value:

int: TRUE if succeeded.


See Also:

IPOBJLoadFile

Keywords:




IPODAddDependencyToObj

(obj_dpnd.c:160)

Prototype:

  void IPODAddDependencyToObj(IPODObjectDpndncyStruct **ObjDpnd, char *DpndName)


Description:

Adds a new object name DpndName as a dependent on this object. This function will properly initialize a NULL ObjDpnd if found one.

Parameters:

ObjDpnd: Object to update dependency on object named DpndName.
DpndName: Name of dependency object. May be NULL.


Returned Value:

void


See Also:

IPODAddParameterToObj

Keywords:




IPODAddParameterToObj

(obj_dpnd.c:124)

Prototype:

  void IPODAddParameterToObj(IPODObjectDpndncyStruct **ObjDpnd, char *ParamName)


Description:

Adds a new object name ParamName as a parameter of this object. This function will properly initialize a NULL ObjDpnd if found one.

Parameters:

ObjDpnd: Object to update object named ParamName as a parameter of of this object. May be NULL
ParamName: Name of parameter object.


Returned Value:

void


See Also:

IPODAddDepaendencyToObj

Keywords:




IPODCopyDependencies

(obj_dpnd.c:341)

Prototype:

  IPODObjectDpndncyStruct *IPODCopyDependencies(IPODObjectDpndncyStruct *Dpnds)


Description:

Copy the dependency structure Dpnds.

Parameters:

Dpnds: Structure to duplicate.


Returned Value:

IPODObjectDpndncyStruct *: Duplicated structure.


See Also:

IPODCopyParametersOfObj IPODCopyDependenciesOfObj

Keywords:




IPODCopyDependenciesOfObj

(obj_dpnd.c:313)

Prototype:

  IPODDependsStruct *IPODCopyDependenciesOfObj(IPODDependsStruct *ObjDepends)


Description:

Copy the dependency list of this objects (list of other objects depending on this one).

Parameters:

ObjDepends: List of dependencies to copy.


Returned Value:

IPODDependsStruct *: Copies list of dependencies.


See Also:

IPODCopyDependencies IPODCopyParametersOfObj

Keywords:




IPODCopyParametersOfObj

(obj_dpnd.c:284)

Prototype:

  IPODParamsStruct *IPODCopyParametersOfObj(IPODParamsStruct *ObjParams)


Description:

Copy the parameter list dependencies (list of objects this object depends upon).

Parameters:

ObjParams: List of parameters to copy.


Returned Value:

IPODParamsStruct *: Copies list of parameters.


See Also:

IPODCopyDependencies IPODCopyDependenciesOfObj

Keywords:




IPODDelDependencyFromObj

(obj_dpnd.c:241)

Prototype:

  void IPODDelDependencyFromObj(IPODObjectDpndncyStruct *ObjDpnd,
                                char *DpndName)


Description:

Removes dependency of object named DpndName on this object.

Parameters:

ObjDpnd: Dependency structure of this object.
DpndName: Dependency object name to remove.


Returned Value:

void


See Also:

IPODDelParameterFromObj

Keywords:




IPODDelParameterFromObj

(obj_dpnd.c:196)

Prototype:

  void IPODDelParameterFromObj(IPODObjectDpndncyStruct *ObjDpnd,
                               char *ParamName)


Description:

Removes a parameter this object depends upon from this object's dependency structure.

Parameters:

ObjDpnd: Dependency structure of this object.
ParamName: Parameter object name to remove.


Returned Value:

void


See Also:

IPODDelDependencyFromObj

Keywords:




IPODEvalOneObject

(obj_dpnd.c:493)

Prototype:

  void IPODEvalOneObject(IPObjectStruct *PObj)


Description:

Reevaluate this object, based upon its dependency's EvalExpr.

Parameters:

PObj: To reevaluate.


Returned Value:

void


See Also:

IPODUpdateAllDependencies

Keywords:




IPODFreeDependencies

(obj_dpnd.c:442)

Prototype:

  void IPODFreeDependencies(IPODObjectDpndncyStruct *Dpnds)


Description:

Free the dependency structure Dpnds.

Parameters:

Dpnds: Structure to free.


Returned Value:

void


See Also:

IPODFreeParametersOfObj IPODFreeDependenciesOfObj

Keywords:




IPODFreeDependenciesOfObj

(obj_dpnd.c:411)

Prototype:

  void IPODFreeDependenciesOfObj(IPODDependsStruct *ObjDepends)


Description:

Free the dependency list of this objects (list of other objects depending on this one).

Parameters:

ObjDepends: List of dependencies to free.


Returned Value:

void


See Also:

IPODFreeParametersOfObj IPODFreeDependencies

Keywords:




IPODFreeParametersOfObj

(obj_dpnd.c:379)

Prototype:

  void IPODFreeParametersOfObj(IPODParamsStruct *ObjParams)


Description:

Free the parameter list dependencies (list of objects this object depends upon).

Parameters:

ObjParams: List of parameters to free.


Returned Value:

void


See Also:

IPODFreeDependenciesOfObj IPODFreeDependencies

Keywords:




IPODNewDependencies

(obj_dpnd.c:94)

Prototype:

  IPODObjectDpndncyStruct *IPODNewDependencies(void)


Description:

Allocates new dependency structure to hold all dependencies and params.

Parameters:

None


Returned Value:

IPODObjectDpndncyStruct *: Allocated structure.


See Also:

IPODNewParametersOfObj IPODNewDependenciesOfObj

Keywords:




IPODNewDependenciesOfObj

(obj_dpnd.c:64)

Prototype:

  IPODDependsStruct *IPODNewDependenciesOfObj(char *Name,
                                              IPODDependsStruct *Pnext)


Description:

Allocates new dependency on this object (of another object) structure.

Parameters:

Name: Name of dependency, NULl if none.
Pnext: Next dependency, NULL if none.


Returned Value:

IPODDependsStruct *: Allocated structure.


See Also:

IPODNewDependencies IPODNewParametersOfObj

Keywords:




IPODNewParametersOfObj

(obj_dpnd.c:32)

Prototype:

  IPODParamsStruct *IPODNewParametersOfObj(char *Name, IPODParamsStruct *Pnext)


Description:

Allocates new parameter (of this object) dependency structure.

Parameters:

Name: Name of parameter, NULl if none.
Pnext: Next parameter, NULL if none.


Returned Value:

IPODParamsStruct *: Allocated structure.


See Also:

IPODNewDependencies IPODNewDependenciesOfObj

Keywords:




IPODPrintDependencies

(obj_dpnd.c:513)

Prototype:

  void IPODPrintDependencies(IPObjectStruct *PObj)


Description:

Debug function to print the content of the dependency structure.

Parameters:

PObj: To print its dependency structure.


Returned Value:

void


Keywords:




IPODUpdateAllDependencies

(obj_dpnd.c:472)

Prototype:

  void IPODUpdateAllDependencies(IPODObjectDpndncyStruct *ObjDpnd)


Description:

Recursively visit all objects this ObjDpnd affects (all other objects that depends on this one) and reevaluate them.

Parameters:

ObjDpnd: To start this recursive visit.


Returned Value:

void


See Also:

IPODEvalOneObject

Keywords:




IPObjListLen

(linklist.c:1268)

Prototype:

  int IPObjListLen(const IPObjectStruct *O)


Description:

Returns the length of a list of objects.

Parameters:

O: Object list to compute its length.


Returned Value:

int: Number of elements in O list.


Keywords:

length linked lists


IPObjLnkListToListObject

(linklist.c:560)

Prototype:

  IPObjectStruct *IPObjLnkListToListObject(IPObjectStruct *ObjLnkList)


Description:

Converts a linked list of objects into one list object, in place.

Parameters:

ObjLnkList: Linked list of object to convert.


Returned Value:

IPObjectStruct *: A list object holding all items in linked list.


See Also:

IPAppendListObjects IPLnkListToListObject IPLinkedListToObjList IPHierarchyObjToLinkedList

Keywords:




IPObjTypeAsString

(allocate.c:87)

Prototype:

  const char *IPObjTypeAsString(const IPObjectStruct *PObj)


Description:

Returns a a string-description of the given object's type.

Parameters:

PObj: To return its type as a string.


Returned Value:

const char *: The string description of the object type.


Keywords:




IPOpenDataFile

(iritprs1.c:111)

Prototype:

  int IPOpenDataFile(const char *FileName, int Read, int Messages)


Description:

Open a data file for read/write. Data file can be either Ascii IRIT data file or binary IRIT data file. A binary data file must have a ".ibd" (for Irit Binary Data) file type. Under unix, file names with the postfix ".Z" are assumed compressed and treated accordingly.

Parameters:

FileName: To try and open.
Read: If TRUE assume a read operation, otheriwse write.
Messages: Do we want error/warning message?


Returned Value:

int: A handler to the open file, -1 if error.


See Also:

IPGetObjects IPSetPolyListCirc IPSetFlattenObjects SetReadOneObject

Keywords:

files parser


IPOpenDataWFile

(iritprs1.c:252)

Prototype:

  int IPOpenDataWFile(const wchar_t *FileName, int Read, int Messages)


Description:

Open a data file for read/write. Data file can be either Ascii IRIT data file or binary IRIT data file. A binary data file must have a ".ibd" (for Irit Binary Data) file type. Under unix, file names with the postfix ".Z" are assumed compressed and treated accordingly.

Parameters:

FileName: To try and open.
Read: If TRUE assume a read operation, otheriwse write.
Messages: Do we want error/warning message?


Returned Value:

int: A handler to the open file, -1 if error.


See Also:

IPGetObjects IPSetPolyListCirc IPSetFlattenObjects SetReadOneObject

Keywords:

files parser


IPOpenPolysToClosed

(ip_cnvrt.c:2446)

Prototype:

  void IPOpenPolysToClosed(IPPolygonStruct *Pls)


Description:

Forces the given list of polygons to have closed list of vertices

Parameters:

Pls: Polygons to process, in place.


Returned Value:

void


See Also:

IPClosedPolysToOpen GMVrtxListToCircOrLin

Keywords:




IPOpenStreamFromCallBackIO

(iritprs1.c:592)

Prototype:

  int IPOpenStreamFromCallBackIO(IPStreamReadCharFuncType ReadFunc,
                                 IPStreamWriteBlockFuncType WriteFunc,
                                 IPStreamFormatType Format,
                                 int Read,
                                 int IsBinary)


Description:

Open a stream using direct call back function(s) to read/write data.

Parameters:

ReadFunc: A call back function to read a character (non blocking). will be ignored if Read == FALSE.
WriteFunc: A call back function to write a block of data. will be ignored if Read == TRUE.
Format: Format of call back.
Read: TRUE for reading from f, FALSE for writing to f.
IsBinary: Is it a binary file?


Returned Value:

int: A handle on the constructed stream.


See Also:

IPOpenStreamFromFile IPProcessFreeForm2

Keywords:




IPOpenStreamFromFile

(iritprs1.c:635)

Prototype:

  int IPOpenStreamFromFile(FILE *f,
                           int Read,
                           int IsBinary,
                           int IsCompressed,
                           int IsPipe)


Description:

Converts an open file into a stream.

Parameters:

f: A handle to the open file.
Read: TRUE for reading from f, FALSE for writing to f.
IsBinary: Is it a binary file?
IsCompressed: s it compressed file?
IsPipe: Is it a pipe?


Returned Value:

int: A handle on the constructed stream.


See Also:

IPOpenStreamFromCallBackIO IPProcessFreeForm2

Keywords:




IPOpenStreamFromFile2

(iritprs1.c:667)

Prototype:

  int IPOpenStreamFromFile2(FILE *f,
                            int Read,
                            IPStreamFormatType Format,
                            int IsBinary,
                            int IsCompressed,
                            int IsPipe)


Description:

Converts an open file into a stream.

Parameters:

f: A handle to the open file.
Read: TRUE for reading from f, FALSE for writing to f.
Format: IRIT Dat, VRML, etc.
IsBinary: Is it a binary file?
IsCompressed: s it compressed file?
IsPipe: Is it a pipe?


Returned Value:

int: A handle on the constructed stream.


See Also:

IPOpenStreamFromFile IPOpenStreamFromCallBackIO

Keywords:

IPOpenStreamFromFile


IPOpenStreamFromSocket

(iritprs1.c:717)

Prototype:

  int IPOpenStreamFromSocket(int Soc, int IsBinary)


Description:

Converts an open socket into a stream.

Parameters:

Soc: A handle to the open socket.
IsBinary: Is it a binary file?


Returned Value:

int: A handle on the constructed stream.


Keywords:




IPOpenStreamFromVrml

(iritvrml.c:697)

Prototype:

  int IPOpenStreamFromVrml(FILE *f, int Read, int IsBinary, int IsPipe)


Description:

Converts an open file into a stream.

Parameters:

f: A handle to the open file.
Read: TRUE for reading from f, FALSE for writing to f.
IsBinary: Is it a binary file? Currently only text vrml is supported.
IsPipe: Is it a pipe?


Returned Value:

int: A handle on the constructed stream.


See Also:

IPOpenStreamFromFile

Keywords:




IPOpenVrmlFile

(iritvrml.c:650)

Prototype:

  int IPOpenVrmlFile(const char *FileName,
                     int Messages,
                     IrtRType Resolution)


Description:

Open a data file for write. Data file can be Ascii VRML 2.0 data file only.

Parameters:

FileName: To try and open.
Messages: Do we want error/warning messages?
Resolution: ass Irit interpreter state variable, due to the need of freeforms to polygon conversions.


Returned Value:

int: A handler to the open file, -1 if error.


See Also:

IPGetObjects IPSetPolyListCirc IPSetFlattenObjects IPSetReadOneObject

Keywords:

files parser


IPPolyListLen

(linklist.c:1246)

Prototype:

  int IPPolyListLen(const IPPolygonStruct *P)


Description:

Returns the length of a list of polygons.

Parameters:

P: Polygon list to compute its length.


Returned Value:

int: Number of elements in P list.


Keywords:

length linked lists


IPPolyVrtxArrayFree

(allocate.c:986)

Prototype:

  void IPPolyVrtxArrayFree(IPPolyVrtxArrayStruct *PVIdx)


Description:

Release a data structure of a polygonal mesh as vertex/polygon index structure with a linear vector of NumVrtcs vertices and NumPlys polygons.

Parameters:

PVIdx: Data structure to free.


Returned Value:

void


See Also:

IPPolyVrtxArrayNew

Keywords:




IPPolyVrtxArrayNew

(allocate.c:950)

Prototype:

  IPPolyVrtxArrayStruct *IPPolyVrtxArrayNew(int NumVrtcs, int NumPlys)


Description:

Allocate a data structure of a polygonal mesh as vertex/polygon index structure with a linear vector of NumVrtcs vertices and NumPlys polygons.

Parameters:

NumVrtcs: Number of different vertices in the mesh.
NumPlys: Number of polygons in the mesh.


Returned Value:

IPPolyVrtxArrayStruct *: The constructed data structure.


See Also:

IPPolyVrtxArrayFree

Keywords:




IPPolyVrtxArrayNew2

(allocate.c:918)

Prototype:

  IPPolyVrtxArrayStruct *IPPolyVrtxArrayNew2(IPObjectStruct *PObj)


Description:

Allocate a data structure of a polygonal mesh as vertex/polygon index structure with a linear vector of NumVrtcs vertices and NumPlys polygons.

Parameters:

PObj: Polygonal mesh to convert to vertex/polygon index struct.


Returned Value:

IPPolyVrtxArrayStruct *: The constructed data structure.


See Also:

IPPolyVrtxArrayFree IPPolyVrtxArrayNew

Keywords:




IPPolygonSetErrFunc

(ip_cnvrt.c:1127)

Prototype:

  CagdPlgErrorFuncType IPPolygonSetErrFunc(CagdPlgErrorFuncType Func)


Description:

Sets the polygon approximation error function. The error function will return a negative value if this triangle must be purged or otherwise a non negative error measure.

Parameters:

Func: New function to use, NULL to disable.


Returned Value:

CagdPlgErrorFuncType: Old value of function.


Keywords:




IPPolyline2Curve

(ip_cnvrt.c:436)

Prototype:

  CagdCrvStruct *IPPolyline2Curve(const IPPolygonStruct *Pl, int Order)


Description:

Routine to convert one polyline into a curve, typically linear.

Parameters:

Pl: To convert to a curve.
Order: Typically 2 for linear, but can be higher order as well. In all cases ,the input polyline points serve as control points.


Returned Value:

CagdCrvStruct *: A curve.


See Also:

CagdCnvrtPolyline2LinBspCrv

Keywords:

conversion approximation


IPProcessFreeForm

(ip_procs.c:32)

Prototype:

  IPObjectStruct *IPProcessFreeForm(IPFreeFormStruct *FreeForms)


Description:

Default processor of read freeform geometry. This routine does not process the freeform geometry in any way. Other programs can, for example, convert the freeform shapes to polygons or polylines using the call back function or purge the freeform data if it is not supported. Processing should be done in place.

Parameters:

FreeForms: Freeform geometry to process, in place.


Returned Value:

IPObjectStruct *: Processed freeform geometry. This function simply returns what it got.


Keywords:

conversion


IPProcessModel2TrimSrfs

(iritprs1.c:1730)

Prototype:

  int IPProcessModel2TrimSrfs(IPFreeFormStruct *FreeForms)


Description:

Process a (v)model freeform into trimmed surfaces freeform, in place.

Parameters:

FreeForms: Freeform model to process into trimmed srfs, in place.


Returned Value:

int: TRUE if models were found and processed, FALSE otherwise.


Keywords:

conversion


IPProcessReadObject

(iritprs1.c:1419)

Prototype:

  IPObjectStruct *IPProcessReadObject(IPObjectStruct *PObj)


Description:

Process a read object, in place, before returning it to the caller. List objects of zero or one elements are eliminated. Attributes are propagated throughout the hierarchy. If FlattenTree mode (see IPSetFlattenObjects) hierarchy is flattened out.

Parameters:

PObj: Object to process.


Returned Value:

IPObjectStruct *: Processed object, in place.


Keywords:

files parser


IPPropagateObjectName

(allocate.c:2082)

Prototype:

  void IPPropagateObjectName(IPObjectStruct *Obj,
                             const char *ObjName,
                             int ForceRename)


Description:

Routine to propagate the object name down the object hierarchy. Objects with no name assign will inherit the name propagated to them from above. If input name is ObjName, the hierarchy will be assigned names of the form RootName{_%d}*.

Parameters:

Obj: To propagate object names from. Root of hierarchy.
ObjName: Object name to propagate, NULL if to be picked up from Obj.
ForceRename: Force subobject rename even if subobject has a valid name.


Returned Value:

void


Keywords:

copy


IPPutAttributes

(iritprs2.c:705)

Prototype:

  void IPPutAttributes(int Handler, const IPAttributeStruct *Attr, int Indent)


Description:

Routine to print the attributes of given attribute list.

Parameters:

Handler: A handler to the open stream.
Attr: Attributes to put out.
Indent: Indentation to put attributes at.


Returned Value:

void


See Also:

AttrTraceAttributes

Keywords:




IPPutBinObject

(iritprsb.c:1724)

Prototype:

  void IPPutBinObject(int Handler, const IPObjectStruct *PObj)


Description:

Routine to write one object to a given binary file, directly. Objects may be recursively defined, as lists of objects.

Parameters:

Handler: A handler to the open stream. *
PObj: Object to write.


Returned Value:

void


Keywords:

files parser


IPPutMatrixFile

(iritprs2.c:823)

Prototype:

  int IPPutMatrixFile(const char *File,
                      IrtHmgnMatType ViewMat,
                      IrtHmgnMatType ProjMat,
                      int HasProjMat)


Description:

Puts an IRIT matrix file.

Parameters:

File: File to write the matrix file to.
ViewMat, ProjMat: Matrices to put.
HasProjMat: RUE if has a perspective matrix, FALSE otherwise.


Returned Value:

int: TRUE if successful, FALSE otherwise.


See Also:

IPGetMatrixFile

Keywords:




IPPutObjectToFile

(iritprs2.c:106)

Prototype:

  void IPPutObjectToFile(FILE *f, const IPObjectStruct *PObj, int IsBinary)


Description:

Routine to print the data from given object into given file handle. See function IPSetPrintFunc, IPSetFloatFormat.

Parameters:

f: Output stream file handle.
PObj: Object to put on output stream.
IsBinary: s this a binary file we should dump?


Returned Value:

void


Keywords:

files


IPPutObjectToFile2

(iritprs2.c:150)

Prototype:

  void IPPutObjectToFile2(FILE *f, const IPObjectStruct *PObj, int Indent)


Description:

Routine to print the data from given object into given file f. See function IPSetPrintFunc, IPSetFloatFormat.

Parameters:

f: Output stream.
PObj: Object to put on output stream.
Indent: File indentation (always a text file).


Returned Value:

void


Keywords:

files


IPPutObjectToFile3

(iritprs2.c:188)

Prototype:

  void IPPutObjectToFile3(const char *FName,
                          const IPObjectStruct *PObj,
                          int Indent)


Description:

Routine to print the data from given object into given file FName.

Parameters:

FName: Output file name.
PObj: Object to put on output.
Indent: File indentation (always a text file).


Returned Value:

void


Keywords:

files


IPPutObjectToHandler

(iritprs2.c:301)

Prototype:

  void IPPutObjectToHandler(int Handler, const IPObjectStruct *PObj)


Description:

Routine to print the data from given object into given file designated via Handler.

Parameters:

Handler: A handler to the open stream.
PObj: Object to put on output stream.


Returned Value:

void


See Also:

IPSetPrintFunc IPSetFloatFormat IPPrintFunc

Keywords:

files


IPPutVrmlViewPoint

(iritvrml.c:2414)

Prototype:

  void IPPutVrmlViewPoint(int Handler, IrtHmgnMatType *Mat, int Indent)


Description:

Update a view point in VRML style based upon a VIEW_MAT matrix in the geometry stream.

Parameters:

Handler: To put the generated VRML into.
Mat: To dump as the viewing matrix.
Indent: Level of indentation in VRML.


Returned Value:

void


Keywords:




IPReallocNewTypeObject

(allocate.c:2161)

Prototype:

  void IPReallocNewTypeObject(IPObjectStruct *PObj, IPObjStructType ObjType)


Description:

Routine to reallocate as necessary and object to a new object type.

Parameters:

PObj: Object to reallocated as a new object of type ObjType.
ObjType: New type for object PObj.


Returned Value:

void


Keywords:

allocation


IPResolveInstances

(iritprs1.c:1034)

Prototype:

  IPObjectStruct *IPResolveInstances(IPObjectStruct *PObjects)


Description:

Resolves, in place, all instances in the objects into their proper geometry. This functions hence eliminates all instances' objects while increasing the size of the data, and do so in place.

Parameters:

PObjects: To eliminate instances from, in place.


Returned Value:

IPObjectStruct *: Same geometry as in PObjects but without instances.


Keywords:




IPReverseListObj

(linklist.c:90)

Prototype:

  IPObjectStruct *IPReverseListObj(IPObjectStruct *ListObj)


Description:

Reverses a list. Original input list is used in place.

Parameters:

ListObj: List object to reverses its entries, in place.


Returned Value:

IPObjectStruct *: Reversed list object.


See Also:

IPReverseObjList

Keywords:




IPReverseObjList

(linklist.c:123)

Prototype:

  IPObjectStruct *IPReverseObjList(IPObjectStruct *PObj)


Description:

Reverses a list of objects, in place.

Parameters:

PObj: A list of objects to reverse.


Returned Value:

IPObjectStruct *: Reverse list of objects, in place.


See Also:

IPReverseListObj

Keywords:

reverse files parser


IPReverseObject

(coerce.c:1428)

Prototype:

  IPObjectStruct *IPReverseObject(const IPObjectStruct *PObj)


Description:

Returns a similar hierarchy to given one but with reversed semantics.

Parameters:

PObj: Input object to reverse.


Returned Value:

IPObjectStruct *: Reversed object.


Keywords:




IPReversePlList

(linklist.c:154)

Prototype:

  IPPolygonStruct *IPReversePlList(IPPolygonStruct *PPl)


Description:

Reverses a list of polygons, in place.

Parameters:

PPl: A list of polygons to reverse.


Returned Value:

IPPolygonStruct *: Reversed list of polygons, in place.


Keywords:

reverse files parser


IPReverseVrtxList

(linklist.c:187)

Prototype:

  void IPReverseVrtxList(IPPolygonStruct *Pl)


Description:

Reverses the vertex list of a given polygon. This is used mainly to reverse polygons such that cross product of consecutive edges which form a convex corner will point in the polygon normal direction.

Parameters:

Pl: A polygon to reverse its vertex list, in place.


Returned Value:

void


Keywords:

reverse files parser


IPReverseVrtxList2

(linklist.c:252)

Prototype:

  IPVertexStruct *IPReverseVrtxList2(IPVertexStruct *PVertex)


Description:

Reverses a list of vertices of a polyline, in place. The list is assumed to be non circular and hence can be treated as a polyline.

Parameters:

PVertex: A list of vertices to reverse.


Returned Value:

IPVertexStruct *: Reversed list of vertices, in place.


Keywords:

reverse files parser


IPSTLLoadFile

(stl_irit.c:72)

Prototype:

  IPObjectStruct *IPSTLLoadFile(const char *STLFileName,
                                const IPSTLLoadDfltFileParamsStruct *Params)


Description:

Read STL file into IRIT data.

Parameters:

STLFileName: Name of STL file.
Params: Loading Parameters. BinarySTL - TRUE if input STL is a binary file. EndianSwap - Swap non char-long entities (little vs. big binaries endings). NormalFlip - Flip normal directions if TRUE. Messages - 1 for error messages, 2 to include warning messages, 3 to include informative messages. 4 to include dump of IRIT objects.


Returned Value:

IPObjectStruct *: Read STL DATA or NULL if error.


See Also:

IPSTLSaveFile IPSTLLoadFileSetDefaultParameters

Keywords:




IPSTLLoadFileSetDefaultParameters

(iritprs1.c:1298)

Prototype:

  void IPSTLLoadFileSetDefaultParameters(int BinarySTL,
                                         int EndianSwap,
                                         int NormalFlip,
                                         int Messages)


Description:

Sets default loading parameters for STL files.

Parameters:

BinarySTL: TRUE if input STL is a binary file.
EndianSwap: Swap non char-long entities (little vs. big binaries endings).
NormalFlip: Flip normal directions if TRUE.
Messages: 1 for error messages, 2 to include warning messages, 3 to include informative messages. 4 to include dump of IRIT objects.


Returned Value:

void


See Also:

IPGetObjects IPSTLLoadFile

Keywords:




IPSTLSaveFile

(irit_stl.c:104)

Prototype:

  int IPSTLSaveFile(const IPObjectStruct *PObj,
                    IrtHmgnMatType CrntViewMat,
                    int RegularTriang,
                    int ReverseVertices,
                    int MultiObjSplit,
                    const char *STLFileName,
                    int Messages)


Description:

Dumps IRIT object as an STL file.

Parameters:

PObj: IritObject to dump as STL file.
CrntViewMat: The current viewing matrix to apply to the object.
RegularTriang: hould we regularized the triangles before dumping them?
ReverseVertices: TRUE to reverse the vertices list (flip orientation).
MultiObjSplit: to save everything as one large file, 1 to save every IRIT object as a separate STL object, 2 to save every IRIT object as a separate STL object in a separated file.
STLFileName: Name of STL file, "-" or NULL for stdout.
Messages: TRUE for warning messages.


Returned Value:

int: TRUE if successful, FALSE otherwise.


See Also:

IPSTLLoadFile IPSTLSaveSetVrtxEps

Keywords:




IPSTLSaveSetVrtxEps

(irit_stl.c:60)

Prototype:

  IrtRType IPSTLSaveSetVrtxEps(IrtRType SameVrtxEps)


Description:

Sets the epsilon euqality of two vertices, to be considered the same.

Parameters:

SameVrtxEps: New epsilon.


Returned Value:

IrtRType: Old epsilon.


See Also:

IPSTLSaveFile

Keywords:




IPSenseBinaryFile

(iritprs1.c:453)

Prototype:

  int IPSenseBinaryFile(const char *FileName)


Description:

Senses if a given file (name) is a binary or a text file.

Parameters:

FileName: File to sense.


Returned Value:

int: TRUE if binary, FALSE if text.


See Also:

IPSenseFileType

Keywords:




IPSenseCompressedFile

(iritprs1.c:489)

Prototype:

  int IPSenseCompressedFile(const char *FileName)


Description:

Senses if a given file (name) is a compressed file.

Parameters:

FileName: File to sense.


Returned Value:

int: TRUE if compressed, FALSE else.


See Also:

IPSenseFileType

Keywords:




IPSenseFileType

(iritprs1.c:379)

Prototype:

  IPStreamFormatType IPSenseFileType(const char *FileName)


Description:

Attempts to detect the type of the file from its name.

Parameters:

FileName: The files' name to sense file type from.


Returned Value:

IPStreamFormatType: Type of file detected.


See Also:

IPSenseBinaryFile

Keywords:




IPSetCopyObjectReferenceCount

(allocate.c:2195)

Prototype:

  int IPSetCopyObjectReferenceCount(int RefCount)


Description:

Controls of a copy is via reference counts or extensive (no ref. counts)

Parameters:

RefCount: TRUE for reference count, FALSE for extensive copy.


Returned Value:

int: Old value of reference count state.


See Also:

IPCopyObject

Keywords:




IPSetCurvesToCubicBzrTol

(ip_cnvrt.c:1954)

Prototype:

  IrtRType IPSetCurvesToCubicBzrTol(IrtRType Tolerance)


Description:

Sets the tolerance that is used by the Bezier to Cubic Bezier conversion routines IritCurvesToCubicBzrCrvs and IritSurfacesToCubicBzrCrvs

Parameters:

Tolerance: Of approximation to use.


Returned Value:

IrtRType: Old value of cubic Bezier tolerance.


Keywords:

approximation


IPSetFatalErrorFunc

(prsr_ftl.c:29)

Prototype:

  IPSetErrorFuncType IPSetFatalErrorFunc(IPSetErrorFuncType ErrorFunc)


Description:

Sets the error function to be used by Prsr_lib.

Parameters:

ErrorFunc: New error function to use.


Returned Value:

IPSetErrorFuncType: Old error function reference.


Keywords:

error handling


IPSetFilterDegen

(iritprs2.c:962)

Prototype:

  int IPSetFilterDegen(int FilterDegeneracies)


Description:

Sets the filtering mode of degenerated geomerty while save/load.

Parameters:

FilterDegeneracies: TRUE to filter, FALSE to load/dump anyway.


Returned Value:

int: Old value of this state.


Keywords:

files degeneracies


IPSetFlattenObjects

(iritprs1.c:1447)

Prototype:

  int IPSetFlattenObjects(int Flatten)


Description:

Controls the hierarchy flattening of a read object.

Parameters:

Flatten: If TRUE, list objects will be flattened out to a long linear list. If FALSE, read object will be unchanged.


Returned Value:

int: Old value of flatten state.


Keywords:

files parser


IPSetFloatFormat

(iritprs2.c:988)

Prototype:

  char *IPSetFloatFormat(const char *FloatFormat)


Description:

Sets the floating point printing format.

Parameters:

FloatFormat: A printf style floating point printing format string.


Returned Value:

char *: Old float format.


Keywords:

files


IPSetPolyListCirc

(prsrgeom.c:225)

Prototype:

  int IPSetPolyListCirc(int Circ)


Description:

Controls vertex list in polygons. Do we want it circular?

Parameters:

Circ: If TRUE, vertex lists of polygons will be circular. If FALSE, the lists will be NULL terminated.


Returned Value:

int: Old value of flag.


See Also:

IPGetObjects GMVrtxListToCircOrLin

Keywords:

files parser


IPSetPrintFunc

(iritprs2.c:936)

Prototype:

  IPPrintFuncType IPSetPrintFunc(IPPrintFuncType PrintFunc)


Description:

Sets the printing function to call if needs to redirect printing.

Parameters:

PrintFunc: A function that gets a single string it should print.


Returned Value:

IPPrintFuncType: Old value of this state.


See Also:

IPSetFloatFormat IPPrintFunc

Keywords:

files


IPSetProcessLeafFunc

(iritprs1.c:1558)

Prototype:

  IPProcessLeafObjType IPSetProcessLeafFunc(IPProcessLeafObjType ProcessLeafFunc)


Description:

Sets a call back function on every leaf object read in.

Parameters:

ProcessLeafFunc: A pointer to a call back function to be invoked on every leaf object read in.


Returned Value:

IPProcessLeafObjType: Old call back pointer value.


See Also:

IPGetObjects

Keywords:

files parser


IPSetPropagateAttrs

(iritprs1.c:1473)

Prototype:

  int IPSetPropagateAttrs(int Propagate)


Description:

Controls the propagation of attributes from internal nodes to the leaves.

Parameters:

Propagate: If TRUE, attributes will be propagated from internal nodes to the leaves.


Returned Value:

int: Old value of propagation state.


Keywords:

files parser


IPSetReadOneObject

(iritprs1.c:1530)

Prototype:

  int IPSetReadOneObject(int OneObject)


Description:

Controls the way the Ascii/bin parser handle multiple objects in a file.

Parameters:

OneObject: f TRUE, only next object will be read by IPGetObjectst. If FALSE, objects will be read until EOF is detected and placed in a linked list.


Returned Value:

int: Old value of read one object.


See Also:

IPGetObjects

Keywords:

files parser


IPSetSubObjectName

(linklist.c:1599)

Prototype:

  void IPSetSubObjectName(IPObjectStruct *PListObj, int Index, const char *Name)


Description:

Sets the name of object number Index in list object PListObj into Name.

Parameters:

PListObj: A list object.
Index: Of object in PListObj to change its name.
Name: New name of sub object.


Returned Value:

void


Keywords:




IPSetVrmlExternalMode

(iritvrml.c:616)

Prototype:

  int IPSetVrmlExternalMode(int On)


Description:

Sets the mode of translating IRIT object tree into VRML graph. If TRUE then output file is suitable for External activation usage. Otherwise, it can be used for standalone viewing in VRML 2.0 browser. Default is TRUE.

Parameters:

On: SID mode is enabled if TRUE.


Returned Value:

int: old value.


Keywords:




IPSocClntInit

(sockets.c:385)

Prototype:

  int IPSocClntInit(void)


Description:

Initialize the client's needs - builds the socket etc.

Parameters:

None


Returned Value:

int: Handle to the socket stream, -1 if failed.


Keywords:




IPSocDisConnectAndKill

(sockets.c:340)

Prototype:

  int IPSocDisConnectAndKill(int Kill, int Handler)


Description:

Close, and optionally kill, io channels to another client process.

Parameters:

Kill: If TRUE, send a KILL message to the client process.
Handler: The socket info handler. If IP_CLNT_BROADCAST_ALL_HANDLES do a broadcast write.


Returned Value:

int: TRUE, if succesful, FALSE otherwise.


Keywords:




IPSocEchoInput

(sockets.c:610)

Prototype:

  void IPSocEchoInput(int Handler, int EchoInput)


Description:

Sets echo printing of read input.

Parameters:

Handler: he socket info handler index. If IP_CLNT_BROADCAST_ALL_HANDLES do a broadcast update.
EchoInput: TRUE to echo every character read in.


Returned Value:

void


Keywords:

ipc


IPSocExecAndConnect

(sockets.c:267)

Prototype:

  int IPSocExecAndConnect(const char *Program, int IsBinary)


Description:

Executes the given program and connect to its io ports. This function is typically called by a server that syncronically forks out a client.

Parameters:

Program: Name of program to execute. Name can be NULL, in which the user is prompt to execute the program manually.
IsBinary: If TRUE sets channels to binary, if FALSE channels are text. This is assuming no IRIT_BIN_IPC environment variable is set, when communication will always be binary.


Returned Value:

int: Handle of client if succesful, -1 otherwise.


Keywords:




IPSocHandleClientEvent

(sock_aux.c:26)

Prototype:

  void IPSocHandleClientEvent(int Handler, IPObjectStruct *PObj)


Description:

Call back function of the server listening to clients.

Parameters:

Handler: Client handler from which an event has been recieved.
PObj: NULL if a new client has connected, Object recieved from Client otherwise.


Returned Value:

void


Keywords:




IPSocReadCharNonBlock

(sockets.c:644)

Prototype:

  int IPSocReadCharNonBlock(int Handler)


Description:

Non blocking read of a single character. Returns EOF if no data is found.

Parameters:

Handler: he socket info handler index.


Returned Value:

int: Read character or EOF if none found.


Keywords:

ipc


IPSocReadLineNonBlock

(sockets.c:786)

Prototype:

  char *IPSocReadLineNonBlock(int Handler)


Description:

Non blocking read of a single line. Returns NULL if no line is available.

Parameters:

Handler: The socket info handler.


Returned Value:

char *: Read line, or NULL if unavailable.


Keywords:

ipc


IPSocReadOneObject

(sockets.c:835)

Prototype:

  IPObjectStruct *IPSocReadOneObject(int Handler)


Description:

Attempts to read (non blocking) an object from socket. If read is successful the object is returned, otherwise NULL is returned.

Parameters:

Handler: The socket info handler. *


Returned Value:

IPObjectStruct *: An object if read one, NULL otherwise.


Keywords:

ipc


IPSocSrvrInit

(sockets.c:94)

Prototype:

  int IPSocSrvrInit(void)


Description:

Initialize the server's needs - builds the listening socket etc.

Parameters:

None


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:




IPSocSrvrListen

(sockets.c:210)

Prototype:

  int IPSocSrvrListen(void)


Description:

Listen to requests from clients. A non blocking function that samples all active clients for possible requests.

Parameters:

None


Returned Value:

int: FALSE if no new requests, TRUE otherwise.


Keywords:




IPSocWriteBlock

(sockets.c:515)

Prototype:

  int IPSocWriteBlock(int Handler, void *Block, int BlockLen)


Description:

Writes a single block of BlockLen bytes.

Parameters:

Handler: The socket info handler. If IP_CLNT_BROADCAST_ALL_HANDLES do a broadcast write.
Block: Block to write.
BlockLen: Length of block to write.


Returned Value:

int: TRUE if write succesful, FALSE otherwise.


Keywords:

ipc


IPSocWriteOneObject

(sockets.c:454)

Prototype:

  void IPSocWriteOneObject(int Handler, IPObjectStruct *PObj)


Description:

Attempts to write an object to a socket.

Parameters:

Handler: The socket info handler. If IP_CLNT_BROADCAST_ALL_HANDLES do a broadcast write.
PObj: Object to write to the client's socket.


Returned Value:

void


Keywords:

ipc


IPStderrObject

(iritprs2.c:85)

Prototype:

  void IPStderrObject(const IPObjectStruct *PObj)


Description:

Routine to print the data from given object into stderr.

Parameters:

PObj: To be put out to stderr.


Returned Value:

void


Keywords:

files


IPStdoutObject

(iritprs2.c:67)

Prototype:

  void IPStdoutObject(const IPObjectStruct *PObj, int IsBinary)


Description:

Routine to print the data from given object into stdout.

Parameters:

PObj: To be put out to stdout.
IsBinary: s this a binary file we should dump?


Returned Value:

void


Keywords:

files


IPSurface2CtlMesh

(ip_cnvrt.c:716)

Prototype:

  IPPolygonStruct *IPSurface2CtlMesh(const CagdSrfStruct *Srf)


Description:

Routine to convert a single surface's control mesh into a polylines object.

Parameters:

Srf: To extract its control mesh as a polylines.


Returned Value:

IPPolygonStruct *: A polylines object representing Srf's control mesh.


Keywords:

conversion


IPSurface2KnotPolylines

(ip_cnvrt.c:632)

Prototype:

  IPPolygonStruct *IPSurface2KnotPolylines(const CagdSrfStruct *Srf,
                                           CagdRType TolSamples,
                                           SymbCrvApproxMethodType Method)


Description:

Routine to convert a single surface into polylines along the surface knot lines with TolSamples samples or tolerance per isoline curve as a polyline object.

Parameters:

Srf: To approximate as a polyline.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the isocurve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.


Returned Value:

IPPolygonStruct *: A polyline object approximating Srf.


See Also:

IPCurve2Polylines

Keywords:

conversion approximation


IPSurface2Polygons

(ip_cnvrt.c:1179)

Prototype:

  IPPolygonStruct *IPSurface2Polygons(CagdSrfStruct *Srf,
                                      int FourPerFlat,
                                      IrtRType FineNess,
                                      int ComputeUV,
                                      int ComputeNrml,
                                      int Optimal)


Description:

Routine to approximate a single surface by polygons. The polygonal approximation routines have call back functions to invoke for each new polygon and if these call back functions are used, this function might return NULL. See IPGenTriangle and IPGenRectangle.

Parameters:

Srf: To approximate using polygons.
FourPerFlat: If TRUE, four triangle per flat surface patch are created, otherwise two. Only for uniform, non optimal, sampling.
FineNess: Fineness control on polygonal approximation. If !Optimal, uniform sampling in the order of FineNess Sampling is used. If Optimal, FineNess prescribes the maximal distance between the surface and its polygonal approximation.
ComputeUV: Do we want UV parameter values with the vertices of the triangles?
ComputeNrml: Do we want normals to vertices!?
Optimal: If FALSE, then parametric space of Srf is sampled uniformely, order of FineNess samples per direction. If TRUE, the adaptively created polygonal approximation is guaranteed to be within FineNess distance to the surface.


Returned Value:

IPPolygonStruct *: Resulting polygons that approximates Srf.


See Also:

CagdSrf2Polygons CagdSrfAdap2Polygons IPGenTriangle IPGenRectangle IPSurface2PolygonsGenTriOnly

Keywords:

approximation conversion


IPSurface2PolygonsGenDegenPolys

(ip_cnvrt.c:1100)

Prototype:

  int IPSurface2PolygonsGenDegenPolys(int GenDegenPolys)


Description:

Controls the generation of degenerated triangles and rectangles, in the tesselation process.

Parameters:

GenDegenPolys: TRUE for creating degenerated triangles and rectangles, FALSE otherwise.


Returned Value:

int: Old value of flag.


See Also:

IPSurface2Polygons

Keywords:

triangles rectangles


IPSurface2PolygonsGenTriOnly

(ip_cnvrt.c:1071)

Prototype:

  int IPSurface2PolygonsGenTriOnly(int OnlyTri)


Description:

Controls the generation of triangles only, in the tessellation process.

Parameters:

OnlyTri: TRUE for triangles only, FALSE otherwise.


Returned Value:

int: Old value of flag.


See Also:

IPSurface2Polygons

Keywords:

triangles


IPSurface2Polylines

(ip_cnvrt.c:509)

Prototype:

  IPPolygonStruct *IPSurface2Polylines(const CagdSrfStruct *Srf,
                                       int NumOfIsolines[2],
                                       CagdRType TolSamples,
                                       SymbCrvApproxMethodType Method)


Description:

Routine to convert a single surface into polylines with TolSamples samples or tolerance per isoline curve as a polyline object. If NumOfIsolines has negative value, its absolute value is heuristically used to derive a new NumOfIsolines number for it.

Parameters:

Srf: To approximate as a polyline.
NumOfIsolines: umber of isocurves to extract, in each direction.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the isocurve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.


Returned Value:

IPPolygonStruct *: A polyline object approximating Srf.


See Also:

IPCurve2Polylines

Keywords:

conversion approximation


IPSurfacesToCubicBzrCrvs

(ip_cnvrt.c:2062)

Prototype:

  CagdCrvStruct *IPSurfacesToCubicBzrCrvs(CagdSrfStruct *Srfs,
                                          IPPolygonStruct **CtlMeshes,
                                          CagdBType DrawSurface,
                                          CagdBType DrawMesh,
                                          int NumOfIsolines[2],
                                          CagdRType MaxArcLen)


Description:

Approximates an arbitrary list of surfaces into cubic Beziers curves.

Parameters:

Srfs: To approximate as cubic Bezier curves.
CtlMeshes: If we want control meshes as well (DrawMesh == TRUE) they will be placed herein.
DrawSurface: Do we want to draw the surfaces?
DrawMesh: Do we want to draw the control meshes?
NumOfIsolines: umber of isocurves to extract, in each direction.
MaxArcLen: Tolerance for cubic Bezier approximation. See function SymbApproxCrvAsBzrCubics.


Returned Value:

CagdCrvStruct *: The cubic Bezier approximation, or NULL if DrawSurface is FALSE.


See Also:

IPSurfacesToCubicBzrSrfs

Keywords:

conversion approximation


IPSurfacesToCubicBzrSrfs

(ip_cnvrt.c:2350)

Prototype:

  CagdSrfStruct *IPSurfacesToCubicBzrSrfs(CagdSrfStruct *Srfs,
                                          CagdSrfStruct **NoConvertionSrfs)


Description:

Converts an arbitrary list of surfaces into cubic integral Bezier surfaces, if possible. Any rational or surface with degrees higher than cubic cannot be converted and is left as is in the NoConvertionSrfs list.

Parameters:

Srfs: To approximate as cubic Bezier surfaces.
NoConvertionSrfs: List of surface that cannot be converted to bicubics.


Returned Value:

CagdSrfStruct *: The cubic Bezier approximation, or NULL if nothing has been converted.


See Also:

IPSurfacesToCubicBzrCrvs

Keywords:

conversion approximation


IPTSrf2PlyAuxSetRectFunc

(ip_cnvrt.c:2601)

Prototype:

  CagdSrfMakeRectFuncType IPTSrf2PlyAuxSetRectFunc(CagdSrf2PlsInfoStrct *TessInfo,
                                                   CagdSrfMakeRectFuncType Func)


Description:

Sets the call back function to generate rectangles. The function will be invoked with each rectangle in the polygonal approximation.

Parameters:

TessInfo: Auxiliary struct which hold the parameters for the creation of the polygons. Can be NULL for default params.
Func: New function to use, NULL use default.


Returned Value:

CagdSrfMakeRectFuncType: Old value of function.


See Also:

IPTSrf2PlyAuxSetTriFunc

Keywords:




IPTSrf2PlyAuxSetTriFunc

(ip_cnvrt.c:2568)

Prototype:

  CagdSrfMakeTriFuncType IPTSrf2PlyAuxSetTriFunc(CagdSrf2PlsInfoStrct *TessInfo,
                                                 CagdSrfMakeTriFuncType Func)


Description:

Sets the call back function to generate triangles. The function will be invoked with each triangle in the polygonal approximation.

Parameters:

TessInfo: Auxiliary struct which hold the parameters for the creation of the polygons. Can be NULL for default params.
Func: New function to use, NULL use default.


Returned Value:

CagdSrfMakeTriFuncType: Old value of function.


See Also:

IPTSrf2PlyAuxSetRectFunc

Keywords:




IPTSrf2PlysFreeTessInfo

(ip_cnvrt.c:2541)

Prototype:

  void IPTSrf2PlysFreeTessInfo(CagdSrf2PlsInfoStrct *TessInfo)


Description:

Free the parameters of the srf2ply variables in struct TessInfo.

Parameters:

TessInfo: The struct to free its content.


Returned Value:

void


See Also:

IPTrimSrf2Polygons TrimSrf2Polygons2 CagdSrf2PlsInfoStrct

Keywords:




IPTSrf2PlysInitTessInfo

(ip_cnvrt.c:2502)

Prototype:

  CagdSrf2PlsInfoStrct *IPTSrf2PlysInitTessInfo(
                                          CagdSrf2PlsInfoStrct *TessInfo,
                                          CagdSrfMakeRectFuncType MakeRectangle,
                                          CagdSrfMakeTriFuncType MakeTriangle,
                                          CagdSrfAdapPolyGenFuncType
                                                                AdapPolyGenFunc,
                                          CagdSrfAdapAuxDataFuncType
                                                                AdapAuxDataFunc,
                                          int FourPerFlat,
                                          IrtRType FineNess,
                                          int ComputeUV,
                                          int ComputeNrml,
                                          int Optimal,
                                          void *EvalNrmlCache)


Description:

Sets the parameters of the srf2ply variables in struct TessInfo.

Parameters:

TessInfo: The struct to update in.
MakeRectangle: enerator function for rectangles. NULL for default.
MakeTriangle: Generator function for triangles. NULL for default.
AdapPolyGenFunc: Generating function for polygons. NULL for default.
AdapAuxDataFunc: Aux. processing func during subdiv. NULL for default.
FourPerFlat: TRUE to generate four polys if surface flat enough, FALSE to generate two polys.
FineNess: Fineness of polygonal approximation to use.
ComputeUV: TRUE to also generate UV coordinates, FALSE to ignore.
ComputeNrml: TRUE to also generate normals, FALSE to ignore.
Optimal: TRUE to use optimal tessellation, FALSE for uniform samp.
EvalNrmlCache: ache for the normal evaluations.


Returned Value:

CagdSrf2PlsInfoStrct *: contains preferences selected by the user.


See Also:

IPTrimSrf2Polygons TrimSrf2Polygons2 CagdSrf2PlsInfoStrct IPTSrf2PlysFreeTessInfo

Keywords:




IPTraverseInvisibleObject

(linklist.c:1688)

Prototype:

  int IPTraverseInvisibleObject(int TraverseInvObj)


Description:

Controls if the traversal will be performed over hidden objs as well.

Parameters:

TraverseInvObj: TRUE for always traversing invisible objects, FALSE for traversing invisible objects, only if in instances.


Returned Value:

int: Old state value.


See Also:

IPTraverseObjHierarchy IPTraverseObjListHierarchy IPTraverseObjectAll

Keywords:




IPTraverseObjHierarchy

(linklist.c:1952)

Prototype:

  void IPTraverseObjHierarchy(IPObjectStruct *PObj,
                              IPObjectStruct *PObjList,
                              IPApplyObjFuncType ApplyFunc,
                              void *Data,
                              IrtHmgnMatType Mat,
                              int PrntInstance)


Description:

Auxiliary function of IPTraverseObjListHierarchy Instances are converted into their real objects on the fly. Objects that have an "Invisible" attribute are potentially ignored (they might be invoked indirectly as an instance).

Parameters:

PObj: To traverse and apply.
PObjList: DB to search instance of objects by name.
ApplyFunc: To invoke on each and every non leaf object.
Data: Optional auxiliary data to be passed to all invocations.
Mat: Local transformation matrix of current instance.
PrntInstance: If TRUE, we were invoked via an instance reference.


Returned Value:

void


See Also:

IPTraverseObjListHierarchy IPTraverseObjectAll IPTraverseObjectCopy IPTraverseInvisibleObject

Keywords:

hierarchy traversal


IPTraverseObjHierarchy1

(linklist.c:1796)

Prototype:

  void IPTraverseObjHierarchy1(IPObjectStruct *PObj,
                              IPApplyObjFuncType ApplyFunc,
                              void *Data)


Description:

Auxiliary function of IPTraverseObjListHierarchy Instances are converted into their real objects on the fly. Objects that have an "Invisible" attribute are potentially ignored (they might be invoked indirectly as an instance).

Parameters:

PObj: To traverse and apply.
ApplyFunc: To invoke on each and every non leaf object.
Data: Optional auxiliary data to be passed to all invocations.


Returned Value:

void


See Also:

IPTraverseObjListHierarchy IPTraverseObjectAll IPTraverseObjectCopy IPTraverseInvisibleObject

Keywords:

hierarchy traversal


IPTraverseObjListHierarchy

(linklist.c:1725)

Prototype:

  void IPTraverseObjListHierarchy(IPObjectStruct *PObjList,
                                  IrtHmgnMatType CrntViewMat,
                                  IPApplyObjFuncType ApplyFunc)


Description:

Traverses a hierarchy of objects and invokes ApplyObject to each leaf (non list) object in the given object list with an associated matrix. Instances are converted into their real objects on the fly. Objects that have an "Invisible" attribute are potentially ignored (they might be invoked indirectly as an instance).

Parameters:

PObjList: To traverse and apply.
CrntViewMat: Viewing matrix.
ApplyFunc: To invoke on each and every leaf object.


Returned Value:

void


See Also:

IPTraverseObjHierarchy IPTraverseObjectAll IPTraverseObjectCopy IPTraverseInvisibleObject IPTraverseObjListHierarchy2

Keywords:

hierarchy traversal


IPTraverseObjListHierarchy1

(linklist.c:1760)

Prototype:

  void IPTraverseObjListHierarchy1(IPObjectStruct *PObjList,
                                   IPApplyObjFuncType ApplyFunc,
                                   void *Data)


Description:

Traverses a hierarchy of objects and invokes ApplyObject to each leaf (non list) object in the given object list with an associated matrix. Instances are converted into their real objects on the fly. Objects that have an "Invisible" attribute are potentially ignored (they might be invoked indirectly as an instance).

Parameters:

PObjList: To traverse and apply.
ApplyFunc: To invoke on each and every leaf object.
Data: Optional auxiliary data to be passed to all invocations.


Returned Value:

void


See Also:

IPTraverseObjHierarchy IPTraverseObjectAll IPTraverseObjectCopy IPTraverseInvisibleObject IPTraverseObjListHierarchy IPTraverseObjListHierarchy2 IPTraverseObjListHierarchy3

Keywords:

hierarchy traversal


IPTraverseObjListHierarchy2

(linklist.c:1833)

Prototype:

  void IPTraverseObjListHierarchy2(IPObjectStruct *PObjList,
                                   IrtHmgnMatType CrntViewMat,
                                   IPApplyObjFuncType ApplyFunc,
                                   void *Data)


Description:

Traverses a hierarchy of objects and invokes ApplyObject to each leaf (non list) object in the given object list with an associated matrix. Instances are converted into their real objects on the fly. Objects that have an "Invisible" attribute are potentially ignored (they might be invoked indirectly as an instance).

Parameters:

PObjList: To traverse and apply.
CrntViewMat: Viewing matrix.
ApplyFunc: To invoke on each and every leaf object.
Data: Optional auxiliary data to be passed to all invocations.


Returned Value:

void


See Also:

IPTraverseObjHierarchy IPTraverseObjectAll IPTraverseObjectCopy IPTraverseInvisibleObject IPTraverseObjListHierarchy IPTraverseObjListHierarchy1 IPTraverseObjListHierarchy3

Keywords:

hierarchy traversal


IPTraverseObjListHierarchy3

(linklist.c:1902)

Prototype:

  IPObjectStruct **IPTraverseObjListHierarchy3(IPObjectStruct *PObjList)


Description:

Traverses a hierarchy of objects and convert to a vector of references over all leave (non list) objects in the given object list. Instances are converted into their real objects on the fly. Objects that have an "Invisible" attribute are potentially ignored (they might be invoked indirectly as an instance).

Parameters:

PObjList: To traverse and create references for. Not modified.


Returned Value:

IPObjectStruct **: The vector of references, allocated dynamically.


See Also:

IPTraverseObjHierarchy IPTraverseObjectAll IPTraverseObjectCopy IPTraverseInvisibleObject IPTraverseObjListHierarchy IPTraverseObjListHierarchy1 IPTraverseObjListHierarchy2

Keywords:

hierarchy traversal


IPTraverseObjectAll

(linklist.c:1658)

Prototype:

  int IPTraverseObjectAll(int TraverseObjAll)


Description:

Controls if the call back function will be invoked in ALL nodes or just the leaves of the tree. If all nodes invoke the call back function, in the interior nodes the call back will be invoked before the node recurse into its sons.

Parameters:

TraverseObjAll: TRUE for calling the call back function in all nodes, FALSE for calling the call back on leaves only.


Returned Value:

int: Old state value.


See Also:

IPTraverseObjHierarchy IPTraverseObjListHierarchy IPTraverseInvisibleObject

Keywords:




IPTraverseObjectCopy

(linklist.c:1625)

Prototype:

  int IPTraverseObjectCopy(int TraverseObjCopy)


Description:

Controls if the hierarchy traversal will be over a copy of the object.

Parameters:

TraverseObjCopy: RUE for traversal of copy, FALSE traversal of original.


Returned Value:

int: Old state value.


See Also:

IPTraverseObjHierarchy IPTraverseObjListHierarchy

Keywords:




IPTriSrf2CtlMesh

(ip_cnvrt.c:1931)

Prototype:

  IPPolygonStruct *IPTriSrf2CtlMesh(TrngTriangSrfStruct *TriSrf)


Description:

Routine to convert a single triangular patch's control mesh into a polylines object.

Parameters:

TriSrf: To extract its control mesh as a polylines.


Returned Value:

IPPolygonStruct *: A polylines object representing TriSrf's control mesh.


Keywords:

conversion


IPTriSrf2Polygons

(ip_cnvrt.c:1845)

Prototype:

  IPPolygonStruct *IPTriSrf2Polygons(TrngTriangSrfStruct *TriSrf,
                                     IrtRType FineNess,
                                     int ComputeUV,
                                     int ComputeNrml,
                                     int Optimal)


Description:

Routine to approximate a single triangular patch by polygons.

Parameters:

TriSrf: To approximate using polygons.
FineNess: See IPSurface2Polygons.
ComputeUV: See IPSurface2Polygons.
ComputeNrml: See IPSurface2Polygons.
Optimal: See IPSurface2Polygons.


Returned Value:

IPPolygonStruct *: Resulting polygons that approximates Srf.


Keywords:

approximation conversion


IPTriSrf2Polylines

(ip_cnvrt.c:1891)

Prototype:

  IPPolygonStruct *IPTriSrf2Polylines(TrngTriangSrfStruct *TriSrf,
                                      int NumOfIsolines[3],
                                      CagdRType TolSamples,
                                      SymbCrvApproxMethodType Method)


Description:

Routine to convert a single triangular patch function into polylines with SamplesPerCurve samples, NumOfIsolines isolines into a polylines object. If NumOfIsolines has negative value, its absolute value is heuristically used to derive a new NumOfIsolines number for it.

Parameters:

TriSrf: To approximate as a polyline.
NumOfIsolines: umber of isocurves to extract, in each direction.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the curve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.


Returned Value:

IPPolygonStruct *: A polylines object approximating TriSrf.


Keywords:

conversion approximation


IPTriSrfsToCubicBzrCrvs

(ip_cnvrt.c:2294)

Prototype:

  CagdCrvStruct *IPTriSrfsToCubicBzrCrvs(TrngTriangSrfStruct *TriSrfs,
                                         IPPolygonStruct **CtlMeshes,
                                         CagdBType DrawSurface,
                                         CagdBType DrawMesh,
                                         int NumOfIsolines[3],
                                         CagdRType MaxArcLen)


Description:

Approximates an arbitrary list of triangular surfaces into cubic Beziers curves.

Parameters:

TriSrfs: To approximate as cubic Bezier curves.
CtlMeshes: If we want control meshes as well (DrawMesh == TRUE) they will be placed herein.
DrawSurface: Do we want to draw the surfaces?
DrawMesh: Do we want to draw the control meshes?
NumOfIsolines: umber of isocurves to extract, in each direction.
MaxArcLen: Tolerance for cubic Bezier approximation. See function SymbApproxCrvAsBzrCubics.


Returned Value:

CagdCrvStruct *: The cubic Bezier approximation, or NULL if DrawSurface is FALSE.


Keywords:

conversion approximation


IPTrimSrf2CtlMesh

(ip_cnvrt.c:1447)

Prototype:

  IPPolygonStruct *IPTrimSrf2CtlMesh(TrimSrfStruct *TrimSrf)


Description:

Routine to convert a single trimmed surface's control mesh into a polylines object.

Parameters:

TrimSrf: To extract its control mesh as a polylines.


Returned Value:

IPPolygonStruct *: A polylines object representing TrimSrf's control mesh.


Keywords:

conversion


IPTrimSrf2Polygons

(ip_cnvrt.c:1258)

Prototype:

  IPPolygonStruct *IPTrimSrf2Polygons(const TrimSrfStruct *TrimSrf,
                                      int FourPerFlat,
                                      IrtRType FineNess,
                                      int ComputeUV,
                                      int ComputeNrml,
                                      int Optimal,
                                      CagdSrf2PlsInfoStrct *TessInfo)


Description:

Routine to approximate a single trimmed surface by polygons. The polygonal approximation routines have call back functions to invoke for each new polygon and if these call back functions are used, this function might return NULL. See IPGenTriangle and IPGenRectangle.

Parameters:

TrimSrf: To approximate using polygons.
FourPerFlat: If TRUE, four triangle per flat surface patch are created, otherwise only two.
FineNess: Fineness control on polygonal approximation. The larger this number is the finer the approximation becomes. 10 is a good compromise when Optimal is FALSE.
ComputeUV: Do we want UV parameter values with the vertices of the triangles?
ComputeNrml: Do we want normals to vertices!?
Optimal: If FALSE (0) then parametric space of TrimSrf is sampled uniformly.
TessInfo: All auxiliary information/state to tessellate. Can be NULL but if not NULL overwrites the other above parameters.


Returned Value:

IPPolygonStruct *: Resulting polygons that approximates TrimSrf.


See Also:

TrimSrf2Polygons2 IPGenTriangle IPGenRectangle

Keywords:

approximation conversion


IPTrimSrf2Polylines

(ip_cnvrt.c:1373)

Prototype:

  IPPolygonStruct *IPTrimSrf2Polylines(TrimSrfStruct *TrimSrf,
                                       int NumOfIsolines[2],
                                       CagdRType TolSamples,
                                       SymbCrvApproxMethodType Method,
                                       int TrimmingCurves,
                                       int IsoParamCurves)


Description:

Routine to convert a single trimmed surface into polylines with TolSamples samples/tolerance, NumOfIsolines isolines into a polylines object. If NumOfIsolines has negative value, its absolute value is heuristically used to derive a new NumOfIsolines number for it.

Parameters:

TrimSrf: To approximate as a polyline.
NumOfIsolines: umber of isocurves to extract, in each direction.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the curve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.
TrimmingCurves: o we want the trimming curves as well.
IsoParamCurves: o we want trimmed isoparametric curves.


Returned Value:

IPPolygonStruct *: A polylines object approximating TrimSrf.


Keywords:

conversion approximation


IPTrimSrfsToCubicBzrCrvs

(ip_cnvrt.c:2123)

Prototype:

  CagdCrvStruct *IPTrimSrfsToCubicBzrCrvs(TrimSrfStruct *TrimSrfs,
                                          IPPolygonStruct **CtlMeshes,
                                          CagdBType DrawTrimSrf,
                                          CagdBType DrawMesh,
                                          int NumOfIsolines[2],
                                          CagdRType MaxArcLen)


Description:

Approximates an arbitrary list of trimmed surfaces into cubic Beziers curves. Only isoparametric curves are extarcted (no trimming curves).

Parameters:

TrimSrfs: To approximate as cubic Bezier curves.
CtlMeshes: If we want control meshes as well (DrawMesh == TRUE) they will be placed herein.
DrawTrimSrf: Do we want to draw the surfaces?
DrawMesh: Do we want to draw the control meshes?
NumOfIsolines: umber of isocurves to extract, in each direction.
MaxArcLen: Tolerance for cubic Bezier approximation. See function SymbApproxCrvAsBzrCubics.


Returned Value:

CagdCrvStruct *: The cubic Bezier approximation, or NULL if DrawSurface is FALSE.


Keywords:

conversion approximation


IPTrivar2CtlMesh

(ip_cnvrt.c:1816)

Prototype:

  IPPolygonStruct *IPTrivar2CtlMesh(TrivTVStruct *Trivar)


Description:

Routine to convert a single trivariate's control mesh into a polylines object.

Parameters:

Trivar: To extract its control mesh as a polylines.


Returned Value:

IPPolygonStruct *: A polylines object representing Trivar's control mesh.


Keywords:

conversion


IPTrivar2Polygons

(ip_cnvrt.c:1480)

Prototype:

  IPPolygonStruct *IPTrivar2Polygons(TrivTVStruct *Trivar,
                                     int FourPerFlat,
                                     IrtRType FineNess,
                                     int ComputeUV,
                                     int ComputeNrml,
                                     int Optimal)


Description:

Routine to approximate a single trivariate by polygons. Six faces of the trivariate are extracted as six surfaces that are displayed. Trivariate can have C0 discontinuities at this time.

Parameters:

Trivar: To approximate using polygons.
FourPerFlat: See IPSurface2Polygons.
FineNess: See IPSurface2Polygons.
ComputeUV: See IPSurface2Polygons.
ComputeNrml: See IPSurface2Polygons.
Optimal: See IPSurface2Polygons.


Returned Value:

IPPolygonStruct *: Resulting polygons that approximates Srf.


Keywords:

approximation conversion


IPTrivar2Polylines

(ip_cnvrt.c:1726)

Prototype:

  IPPolygonStruct *IPTrivar2Polylines(TrivTVStruct *Trivar,
                                      int NumOfIsolines[3],
                                      CagdRType TolSamples,
                                      SymbCrvApproxMethodType Method,
                                      IrtBType SrfsOnly)


Description:

Routine to convert a single trivariate function into polylines with TolSamples/Tolerance per isocurve, NumOfIsolines isolines into a polylines object. If NumOfIsolines has negative value, its absolute value is heuristically used to derive a new NumOfIsolines number for it.

Parameters:

Trivar: To approximate as a polyline.
NumOfIsolines: umber of isocurves to extract, in each direction.
TolSamples: Tolerance of approximation error (Method = 2) or Number of samples to compute on polyline (Method = 0, 1).
Method: 0 - TolSamples are set uniformly in parametric space, 1 - TolSamples are set optimally, considering the curve's curvature. 2 - TolSamples sets the maximum error allowed between the piecewise linear approximation and original curve.
SrfsOnly: If TRUE, isolines of only the 6 surface faces of the trivariate are synthesized.


Returned Value:

IPPolygonStruct *: A polylines object approximating Trivar.


Keywords:

conversion approximation


IPTrivarToCubicBzrCrvs

(ip_cnvrt.c:2184)

Prototype:

  CagdCrvStruct *IPTrivarToCubicBzrCrvs(TrivTVStruct *Trivar,
                                        IPPolygonStruct **CtlMeshes,
                                        CagdBType DrawTrivar,
                                        CagdBType DrawMesh,
                                        int NumOfIsolines[2],
                                        CagdRType MaxArcLen)


Description:

Routine to convert a single trivariate function into cubic Bezier curves.

Parameters:

Trivar: To approximate as a set of cubic bezier curves.
CtlMeshes: If we want control meshes as well (DrawMesh == TRUE) they will be placed herein.
DrawTrivar: Do we want to draw the trivariate function?
DrawMesh: Do we want to draw the control meshes?
NumOfIsolines: umber of isocurves to extract, in each direction.
MaxArcLen: Tolerance for cubic Bezier approximation. See function SymbApproxCrvAsBzrCubics.


Returned Value:

CagdCrvStruct *: A list of curves approximating Trivar.


Keywords:

conversion approximation


IPUpdatePolyPlane

(prsrgeom.c:94)

Prototype:

  int IPUpdatePolyPlane(IPPolygonStruct *PPoly)


Description:

Routine to update the Plane equation of the given polygon by the order of the most robust three vertices of that polygon to define the normal.

Parameters:

PPoly: To update its normal/plane equation.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files parser


IPUpdatePolyPlane2

(prsrgeom.c:159)

Prototype:

  int IPUpdatePolyPlane2(IPPolygonStruct *PPoly, const IrtVecType Vin)


Description:

Routine to update the Plane equation of the given polygon such that the Vin vertex will be in the positive side of it.

Parameters:

PPoly: To update its normal/plane equation.
Vin: A vertex to be considered in the inside, respective to PPoly.


Returned Value:

int: 0 if failed, 1 if successful, -1 if successful but vertices reversed.


Keywords:

files parser


IPUpdateVrtxNrml

(prsrgeom.c:193)

Prototype:

  void IPUpdateVrtxNrml(IPPolygonStruct *PPoly, IrtVecType DefNrml)


Description:

Routine to update all vertices in polygon to hold a default normal if have none already.

Parameters:

PPoly: Polygon to update normal information.
DefNrml: Normal tp use in update.


Returned Value:

void


Keywords:

files parser


IPVrtxListLen

(linklist.c:1215)

Prototype:

  int IPVrtxListLen(const IPVertexStruct *V)


Description:

Returns the length of a list of vertices.

Parameters:

V: Vertex list to compute its length.


Returned Value:

int: Number of elements in V list.


Keywords:

length linked lists


Iges2IritWarning

(igs_irit.c:5025)

Prototype:

  void Iges2IritWarning(IgesInfoStruct *IgesInfo, int SeqNum, char *va_alist, ...)


Description:

Print warning messages.

Parameters:

IgesInfo: All information one ever needs to process IGES file.
SeqNum: Where the error occurred, 0 to specify line numbers.
va_alist: Do "man stdarg"


Returned Value:

void


Keywords:




IpcCompressObj

(iritprsc.c:322)

Prototype:

  int IpcCompressObj(int Handler, const IPObjectStruct *PObj)


Description:

Compress a given IPObject to a file using Handler.

Parameters:

Handler: A handler to the open stream.
PObj: Irit format objects list.


Returned Value:

int: Internal Error code.


See Also:

IpcDecompressObj.

Keywords:

files parser predictor compress quantization.


IpcCompressObjToFile

(iritprsc.c:285)

Prototype:

  int IpcCompressObjToFile(const char *FileName,
                           const IPObjectStruct *PObj,
                           float QntError)


Description:

Compress a given IPObject to a file.

Parameters:

FileName: Name of a compression file to save in.
PObj: Irit format objects list.
QntError: Quantization step between(0..1). Specifies maximum error for values. IPC_QUANTIZATION_NONE - no quanization is used.


Returned Value:

int: Internal Error code.


See Also:

IpcDecompressObjFromFile.

Keywords:

files parser predictor compress quantization.


IpcDecompressObj

(iritprsd.c:246)

Prototype:

  IPObjectStruct *IpcDecompressObj(int Handler)


Description:

Decompress the Irit objects from a compressed file using Handler to an IPObjectStructs list.

Parameters:

Handler: A handler to the open stream.


Returned Value:

IPObjectStruct *: A list of the Irit objects.


See Also:

IpcDecompressObjFromFile.

Keywords:

files parser uncompress


IpcDecompressObjFromFile

(iritprsd.c:222)

Prototype:

  IPObjectStruct *IpcDecompressObjFromFile(const char *FileName)


Description:

Decompress the Irit objects from a compressed file using Handler to an IPObjectStructs list.

Parameters:

FileName: A compression file to load from compressed data.


Returned Value:

IPObjectStruct *: A list of the Irit objects.


See Also:

IpcDecompressObjFromFile.

Keywords:

files parser uncompress


IpcSetQuantization

(iritprsd.c:200)

Prototype:

  void IpcSetQuantization(int Handler, float QntError)


Description:

Set quantization error for specific Handler.

Parameters:

Handler: A handler to the open stream.
QntError: Quantization error. Safe range is [0.00001 - 0.0000001]. IPC_QUANTIZATION_NONE = Quantization is not used.


Returned Value:

void


See Also:

IpcDecompressObjFromFile.

Keywords:

Quantization Handle.


Irit2WglAddPoly

(irit_wgl.c:775)

Prototype:

  void Irit2WglAddPoly(Irit2WglSceneStruct *Scene,
                       Irit2WglModelObjectStruct *ModelObject,
                       int *PolyIndexArray)


Description:

Create new poly to the given model object.

Parameters:

Scene: cene.
ModelObject: odel object.
PolyIndexArray: rray of vertex indices defining the poly.


Returned Value:

void


Keywords:

Poly PolyIndexArray AddPoly


Irit2WglAddVertex

(irit_wgl.c:730)

Prototype:

  void Irit2WglAddVertex(Irit2WglSceneStruct *Scene,
                         Irit2WglModelObjectStruct *ModelObject,
                         IrtPtType Pos,
                         IrtNrmlType Normal,
                         IrtUVType UV)


Description:

Add new vertex to the given model object.

Parameters:

Scene: cene.
ModelObject: odel object.
Pos: ertex position.
Normal: ertex normal.
UV: ertex UV coordinates.


Returned Value:

void


Keywords:

Vertex Pos Normal U


Irit2WglDumpCSS

(irit_wgl.c:1452)

Prototype:

  void Irit2WglDumpCSS(Irit2WglSceneStruct *Scene,
                       const char *OutputFileName)


Description:

Dump CSS script related data.

Parameters:

Scene: cene.
OutputFileName: utput file name.


Returned Value:

void


Keywords:

CSS


Irit2WglDumpData

(irit_wgl.c:872)

Prototype:

  void Irit2WglDumpData(Irit2WglSceneStruct *Scene, const char *OutputFileName)


Description:

Dump WebGL HTML data.

Parameters:

Scene: cene.
OutputFileName: utput file name.


Returned Value:

void


Keywords:

DumpData


Irit2WglDumpJS

(irit_wgl.c:981)

Prototype:

  void Irit2WglDumpJS(Irit2WglSceneStruct *Scene, const char *OutputFileName)


Description:

Dump JS script related data.

Parameters:

Scene: cene.
OutputFileName: utput file name.


Returned Value:

void


Keywords:

JS


Irit2WglDumpJSInitCameraMatrices

(irit_wgl.c:1209)

Prototype:

  void Irit2WglDumpJSInitCameraMatrices(Irit2WglSceneStruct *Scene,
                                        FILE *JSOutputFile)


Description:

Dump JS script related data - Camera matrices.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

CameraMatrices


Irit2WglDumpJSSetControlBarParams

(irit_wgl.c:1325)

Prototype:

  void Irit2WglDumpJSSetControlBarParams(Irit2WglSceneStruct *Scene,
                                         FILE *JSOutputFile)


Description:

Dump JS script related data - Control bar parameters.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

ControlBar


Irit2WglDumpJSSetLightSources

(irit_wgl.c:1249)

Prototype:

  void Irit2WglDumpJSSetLightSources(Irit2WglSceneStruct *Scene,
                                     FILE *JSOutputFile)


Description:

Dump JS script related data - Light sources setting.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

LightSources


Irit2WglDumpJSSetMenuParams

(irit_wgl.c:1353)

Prototype:

  void Irit2WglDumpJSSetMenuParams(Irit2WglSceneStruct *Scene,
                                   FILE *JSOutputFile)


Description:

Dump JS script related data - Menu parameters.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

Menu


Irit2WglDumpJSSetModelData

(irit_wgl.c:1098)

Prototype:

  void Irit2WglDumpJSSetModelData(Irit2WglSceneStruct *Scene,
                                  FILE *JSOutputFile)


Description:

Dump JS script related data - Model data.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

ModelData


Irit2WglDumpJSSetStatusLogParams

(irit_wgl.c:1422)

Prototype:

  void Irit2WglDumpJSSetStatusLogParams(Irit2WglSceneStruct *Scene,
                                        FILE *JSOutputFile)


Description:

Dump JS script related data - Status log parameters.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

StatusLog


Irit2WglDumpJSSetTextureData

(irit_wgl.c:1064)

Prototype:

  void Irit2WglDumpJSSetTextureData(Irit2WglSceneStruct *Scene,
                                    FILE *JSOutputFile)


Description:

Dump JS script related data - Texture data.

Parameters:

Scene: cene.
JSOutputFile: S Output file.


Returned Value:

void


Keywords:

TextureData


Irit2WglDumpScripts

(irit_wgl.c:933)

Prototype:

  void Irit2WglDumpScripts(Irit2WglSceneStruct *Scene,
                           FILE* HtmlOutputFile,
                           const char *OutputFileName)


Description:

Dump WebGL HTML scripts related data.

Parameters:

Scene: cene.
HtmlOutputFile: TML Output file.
OutputFileName: utput file name.


Returned Value:

void


Keywords:

Scripts DumpSctipts


Irit2WglFatalError

(irit_wgl.c:1585)

Prototype:

  void Irit2WglFatalError(const char *FatalErrorMsg)


Description:

Trap Irit2Wgl errors right here. Gets an error description, print it and exit the program using exit.

Parameters:

FatalErrorMsg: Fatal error message.


Returned Value:

void


Keywords:




Irit2WglFreeScene

(irit_wgl.c:559)

Prototype:

  void Irit2WglFreeScene(Irit2WglSceneStruct *Scene)


Description:

Free the given scene.

Parameters:

Scene: cene.


Returned Value:

void


Keywords:

Free


Irit2WglModelObjectTagType2Str

(irit_wgl.c:1559)

Prototype:

  const char *Irit2WglModelObjectTagType2Str(Irit2WglModelObjectTagType ModelObjectTag)


Description:

Convert model object tag enum to string.

Parameters:

ModelObjectTag: odel object tag.


Returned Value:

const char *: Object tag string.


Keywords:

ObjTag


Irit2WglNewModelObject

(irit_wgl.c:632)

Prototype:

  Irit2WglModelObjectStruct *Irit2WglNewModelObject(Irit2WglSceneStruct *Scene,
                                                    const char *Name,
                                                    Irit2WglModelObjectTagType
                                                                 ModelObjectTag,
                                                    IrtRType RGBA[4],
                                                    int MaxObjVertices,
                                                    const char *PTextureFileName,
                                                    IrtUVType SUV)


Description:

Create new model object.

Parameters:

Scene: cene.
Name: odel object's name.
ModelObjectTag: odel object tag.
RGBA: GBA values.
MaxObjVertices: aximum number of vertices in object.
PTextureFileName: exture file name.
SUV: V texture scaling.


Returned Value:

Irit2WglModelObjectStruct *: New model object.


Keywords:

NewModelObject


Irit2WglNewScene

(irit_wgl.c:503)

Prototype:

  Irit2WglSceneStruct *Irit2WglNewScene(void)


Description:

Create new scene.

Parameters:

None


Returned Value:

Irit2WglSceneStruct *: New scene.


Keywords:

NewScene


Irit2WglProjectionModeType2Str

(irit_wgl.c:1534)

Prototype:

  const char *Irit2WglProjectionModeType2Str(Irit2WglProjectionModeType ProjectionMode)


Description:

Convert projection mode enum to string.

Parameters:

ProjectionMode: rojection mode.


Returned Value:

const char *: Projection mode string.


Keywords:

ProjMode


Irit2WglSetLightSource

(irit_wgl.c:833)

Prototype:

  void Irit2WglSetLightSource(Irit2WglSceneStruct *Scene,
                              IGLightType LightPos,
                              IrtVecType LightColor)


Description:

Set light source data for the given scene.

Parameters:

Scene: cene.
LightPos: ight source position.
LightColor: ight source diffuse color.


Returned Value:

void


Keywords:

LightSource LightPos LightColor


Irit2WglViewAngleType2Str

(irit_wgl.c:1499)

Prototype:

  const char *Irit2WglViewAngleType2Str(Irit2WglViewAngleType ViewAngle)


Description:

Convert view angle enum to string.

Parameters:

ViewAngle: iew angle.


Returned Value:

const char *: View angle string.


Keywords:

ViewAngle


MdlReadModelFromFile

(mdl_read.c:44)

Prototype:

  MdlModelStruct *MdlReadModelFromFile(const char *FileName,
                                       char **ErrStr,
                                       int *ErrLine)


Description:

Reads from a file a model. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the model from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MdlModelStruct *: The read model surface, or NULL if an error occurred.


See Also:

MdlReadModelSrfFromFile2

Keywords:

files read Mdlmed surfaces


MdlReadModelFromFile2

(mdl_read.c:107)

Prototype:

  MdlModelStruct *MdlReadModelFromFile2(int Handler,
                                        CagdBType NameWasRead,
                                        char **ErrStr,
                                        int *ErrLine)


Description:

Reads from a file a model. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to model. Assumes the [MODEL prefix was read if NameWasRead. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the MODEL prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MdlModelStruct *: The read model, or NULL if an error occurred.


See Also:

MdlReadModelSrfFromFile

Keywords:

files read model


MdlWriteModelToFile

(mdl_wrt.c:35)

Prototype:

  int MdlWriteModelToFile(const MdlModelStruct *Models,
                          const char *FileName,
                          int Indent,
                          const char *Comment,
                          char **ErrStr)


Description:

Generic routine to write model(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Models: To be saved in stream.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


MdlWriteModelToFile2

(mdl_wrt.c:76)

Prototype:

  int MdlWriteModelToFile2(const MdlModelStruct *Models,
                           int Handler,
                           int Indent,
                           const char *Comment,
                           char **ErrStr)


Description:

Generic routine to write models(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Models: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write stream


MdlWriteModelToFile3

(mdl_wrt.c:201)

Prototype:

  int MdlWriteModelToFile3(const MdlModelStruct *Models,
                           FILE *f,
                           int Indent,
                           const char *Comment,
                           char **ErrStr)


Description:

Generic routine to write model(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

Models: To be saved in stream.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


MvarBspMVReadFromFile

(mvarread.c:366)

Prototype:

  MvarMVStruct *MvarBspMVReadFromFile(const char *FileName,
                                      char **ErrStr,
                                      int *ErrLine)


Description:

Reads from a file B-spline multi-variates. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the multi-variate from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MvarMVStruct *: The read multi-variate, or NULL if an error occurred.


Keywords:

files read multi-variates


MvarBspMVReadFromFile2

(mvarread.c:431)

Prototype:

  MvarMVStruct *MvarBspMVReadFromFile2(int Handler,
                                       CagdBType NameWasRead,
                                       char **ErrStr,
                                       int *ErrLine)


Description:

Reads from a file a B-spline multi-variate. If NameWasRead is TRUE, it is assumed prefix "[MULTIVAR BSPLINE" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of multi-variate. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the MULTIVAR BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MvarMVStruct *: The read multi-variate, or NULL if an error occurred.


Keywords:

files read multi-variates


MvarBspMVWriteToFile

(mvar_wrt.c:269)

Prototype:

  int MvarBspMVWriteToFile(const MvarMVStruct *MVs,
                           const char *FileName,
                           int Indent,
                           const char *Comment,
                           char **ErrStr)


Description:

Generic routine to write B-spline multi-variates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write multi-variates


MvarBspMVWriteToFile2

(mvar_wrt.c:310)

Prototype:

  int MvarBspMVWriteToFile2(const MvarMVStruct *MVs,
                            int Handler,
                            int Indent,
                            const char *Comment,
                            char **ErrStr)


Description:

Generic routine to write B-spline multi-variates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write multi-variates


MvarBzrMVReadFromFile

(mvarread.c:158)

Prototype:

  MvarMVStruct *MvarBzrMVReadFromFile(const char *FileName,
                                      char **ErrStr,
                                      int *ErrLine)


Description:

Reads from a file Bezier multi-variates. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the multi-variate from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MvarMVStruct *: The read multi-variate, or NULL if an error occurred.


Keywords:

files read multi-variates


MvarBzrMVReadFromFile2

(mvarread.c:223)

Prototype:

  MvarMVStruct *MvarBzrMVReadFromFile2(int Handler,
                                       CagdBType NameWasRead,
                                       char **ErrStr,
                                       int *ErrLine)


Description:

Reads from a file a Bezier multi-variate. If NameWasRead is TRUE, it is assumed prefix "[MULTIVAR BEZIER" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of multi-variate. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the MULTIVAR BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MvarMVStruct *: The read multi-variate, or NULL if an error occurred.


Keywords:

files read multi-variates


MvarBzrMVWriteToFile

(mvar_wrt.c:142)

Prototype:

  int MvarBzrMVWriteToFile(const MvarMVStruct *MVs,
                           const char *FileName,
                           int Indent,
                           const char *Comment,
                           char **ErrStr)


Description:

Generic routine to write Bezier multi-variates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in file.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write multi-variates


MvarBzrMVWriteToFile2

(mvar_wrt.c:183)

Prototype:

  int MvarBzrMVWriteToFile2(const MvarMVStruct *MVs,
                            int Handler,
                            int Indent,
                            const char *Comment,
                            char **ErrStr)


Description:

Generic routine to write Bezier multi-variates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write multi-variates


MvarMVReadFromFile

(mvarread.c:34)

Prototype:

  MvarMVStruct *MvarMVReadFromFile(const char *FileName,
                                   char **ErrStr,
                                   int *ErrLine)


Description:

Reads from a file multi-variates. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the multi-variate from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MvarMVStruct *: The read multi-variate, or NULL if an error occurred.


Keywords:

files read multi-variates


MvarMVReadFromFile2

(mvarread.c:101)

Prototype:

  MvarMVStruct *MvarMVReadFromFile2(int Handler, char **ErrStr, int *ErrLine)


Description:

Reads from a file a multi-variate. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of multi-variate. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

MvarMVStruct *: The read multi-variate, or NULL if an error occurred.


Keywords:

files read multi-variates


MvarMVWriteToFile

(mvar_wrt.c:34)

Prototype:

  int MvarMVWriteToFile(const MvarMVStruct *MVs,
                        const char *FileName,
                        int Indent,
                        const char *Comment,
                        char **ErrStr)


Description:

Generic routine to write multi-variates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write multi-variates


MvarMVWriteToFile2

(mvar_wrt.c:72)

Prototype:

  int MvarMVWriteToFile2(const MvarMVStruct *MVs,
                         int Handler,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Generic routine to write multi-variates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write multi-variates


MvarMVWriteToFile3

(mvar_wrt.c:110)

Prototype:

  int MvarMVWriteToFile3(const MvarMVStruct *MVs,
                         FILE *f,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Generic routine to write multi-variate(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

MVs: To be saved in file f.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


TrimReadTrimmedSrfFromFile

(trimread.c:33)

Prototype:

  TrimSrfStruct *TrimReadTrimmedSrfFromFile(const char *FileName,
                                            char **ErrStr,
                                            int *ErrLine)


Description:

Reads from a file trimmed surfaces. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the trimmed surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrimSrfStruct *: The read trimmed surface, or NULL if an error occurred.


Keywords:

files read trimmed surfaces


TrimReadTrimmedSrfFromFile2

(trimread.c:94)

Prototype:

  TrimSrfStruct *TrimReadTrimmedSrfFromFile2(int Handler,
                                             CagdBType NameWasRead,
                                             char **ErrStr,
                                             int *ErrLine)


Description:

Reads from a file a trimmed surface. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of trimmed surface. Assumes the [TRIMSRF prefix was read if NameWasRead. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the TRIMSRF BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrimSrfStruct *: The read trimmed surface, or NULL if an error occurred.


Keywords:

files read trimmed surfaces


TrimWriteTrimmedSrfToFile

(trim_wrt.c:34)

Prototype:

  int TrimWriteTrimmedSrfToFile(const TrimSrfStruct *TrimSrfs,
                                const char *FileName,
                                int Indent,
                                const char *Comment,
                                char **ErrStr)


Description:

Generic routine to write a trimmed surface to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TrimSrfs: To be saved in stream.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


TrimWriteTrimmedSrfToFile2

(trim_wrt.c:75)

Prototype:

  int TrimWriteTrimmedSrfToFile2(const TrimSrfStruct *TrimSrfs,
                                 int Handler,
                                 int Indent,
                                 const char *Comment,
                                 char **ErrStr)


Description:

Generic routine to write trimmed surface(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TrimSrfs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write stream


TrimWriteTrimmedSrfToFile3

(trim_wrt.c:154)

Prototype:

  int TrimWriteTrimmedSrfToFile3(const TrimSrfStruct *TrimSrfs,
                                 FILE *f,
                                 int Indent,
                                 const char *Comment,
                                 char **ErrStr)


Description:

Generic routine to write trimmed surface(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TrimSrfs: To be saved in stream.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


TrivBspTVReadFromFile

(trivread.c:341)

Prototype:

  TrivTVStruct *TrivBspTVReadFromFile(const char *FileName,
                                      char **ErrStr,
                                      int *ErrLine)


Description:

Reads from a file B-spline trivariates. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the trivariate from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrivTVStruct *: The read trivariate, or NULL if an error occurred.


Keywords:

files read trivariates


TrivBspTVReadFromFile2

(trivread.c:406)

Prototype:

  TrivTVStruct *TrivBspTVReadFromFile2(int Handler,
                                       CagdBType NameWasRead,
                                       char **ErrStr,
                                       int *ErrLine)


Description:

Reads from a file a B-spline trivariate. If NameWasRead is TRUE, it is assumed prefix "[TRIVAR BSPLINE" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of trivariate. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the TRIVAR BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrivTVStruct *: The read trivariate, or NULL if an error occurred.


Keywords:

files read trivariates


TrivBspTVWriteToFile

(triv_wrt.c:273)

Prototype:

  int TrivBspTVWriteToFile(const TrivTVStruct *TVs,
                           const char *FileName,
                           int Indent,
                           const char *Comment,
                           char **ErrStr)


Description:

Generic routine to write Bspline trivariates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write trivariates


TrivBspTVWriteToFile2

(triv_wrt.c:314)

Prototype:

  int TrivBspTVWriteToFile2(const TrivTVStruct *TVs,
                            int Handler,
                            int Indent,
                            const char *Comment,
                            char **ErrStr)


Description:

Generic routine to write B-spline trivariates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write trivariates


TrivBzrTVReadFromFile

(trivread.c:148)

Prototype:

  TrivTVStruct *TrivBzrTVReadFromFile(const char *FileName,
                                      char **ErrStr,
                                      int *ErrLine)


Description:

Reads from a file Bezier trivariates. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the trivariate from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrivTVStruct *: The read trivariate, or NULL if an error occurred.


Keywords:

files read trivariates


TrivBzrTVReadFromFile2

(trivread.c:213)

Prototype:

  TrivTVStruct *TrivBzrTVReadFromFile2(int Handler,
                                       CagdBType NameWasRead,
                                       char **ErrStr,
                                       int *ErrLine)


Description:

Reads from a file a Bezier trivariate. If NameWasRead is TRUE, it is assumed prefix "[TRIVAR BEZIER" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of trivariate. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the TRIVAR BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrivTVStruct *: The read trivariate, or NULL if an error occurred.


Keywords:

files read trivariates


TrivBzrTVWriteToFile

(triv_wrt.c:147)

Prototype:

  int TrivBzrTVWriteToFile(const TrivTVStruct *TVs,
                           const char *FileName,
                           int Indent,
                           const char *Comment,
                           char **ErrStr)


Description:

Generic routine to write Bezier trivariates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in file.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write trivariates


TrivBzrTVWriteToFile2

(triv_wrt.c:188)

Prototype:

  int TrivBzrTVWriteToFile2(const TrivTVStruct *TVs,
                            int Handler,
                            int Indent,
                            const char *Comment,
                            char **ErrStr)


Description:

Generic routine to write Bezier trivariates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write trivariates


TrivTVReadFromFile

(trivread.c:33)

Prototype:

  TrivTVStruct *TrivTVReadFromFile(const char *FileName,
                                   char **ErrStr,
                                   int *ErrLine)


Description:

Reads from a file trivariates. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the trivariate from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrivTVStruct *: The read trivariate, or NULL if an error occurred.


Keywords:

files read trivariates


TrivTVReadFromFile2

(trivread.c:95)

Prototype:

  TrivTVStruct *TrivTVReadFromFile2(int Handler, char **ErrStr, int *ErrLine)


Description:

Reads from a file a trivariate. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of trivariate. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrivTVStruct *: The read trivariate, or NULL if an error occurred.


Keywords:

files read trivariates


TrivTVWriteToFile

(triv_wrt.c:34)

Prototype:

  int TrivTVWriteToFile(const TrivTVStruct *TVs,
                        const char *FileName,
                        int Indent,
                        const char *Comment,
                        char **ErrStr)


Description:

Generic routine to write trivariates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write trivariates


TrivTVWriteToFile2

(triv_wrt.c:74)

Prototype:

  int TrivTVWriteToFile2(const TrivTVStruct *TVs,
                         int Handler,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Generic routine to write trivariates to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write trivariates


TrivTVWriteToFile3

(triv_wrt.c:114)

Prototype:

  int TrivTVWriteToFile3(const TrivTVStruct *TVs,
                         FILE *f,
                         int Indent,
                         const char *Comment,
                         char **ErrStr)


Description:

Generic routine to write trivariate(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TVs: To be saved in file f.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


TrngBspTriSrfReadFromFile

(trngread.c:349)

Prototype:

  TrngTriangSrfStruct *TrngBspTriSrfReadFromFile(const char *FileName,
                                                 char **ErrStr,
                                                 int *ErrLine)


Description:

Reads from a file B-spline triangular surfaces. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the triangular surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngBspTriSrfReadFromFile2

(trngread.c:415)

Prototype:

  TrngTriangSrfStruct *TrngBspTriSrfReadFromFile2(int Handler,
                                                  CagdBType NameWasRead,
                                                  char **ErrStr,
                                                  int *ErrLine)


Description:

Reads from a file a B-spline triangular surface. If NameWasRead is TRUE, it is assumed prefix "[TRISRF BSPLINE" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of triangular surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the TRISRF BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngBspTriSrfWriteToFile

(trng_wrt.c:265)

Prototype:

  int TrngBspTriSrfWriteToFile(const TrngTriangSrfStruct *TriSrfs,
                               const char *FileName,
                               int Indent,
                               const char *Comment,
                               char **ErrStr)


Description:

Generic routine to write Bspline triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngBspTriSrfWriteToFile2

(trng_wrt.c:306)

Prototype:

  int TrngBspTriSrfWriteToFile2(const TrngTriangSrfStruct *TriSrfs,
                                int Handler,
                                int Indent,
                                const char *Comment,
                                char **ErrStr)


Description:

Generic routine to write B-spline triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngBzrTriSrfReadFromFile

(trngread.c:158)

Prototype:

  TrngTriangSrfStruct *TrngBzrTriSrfReadFromFile(const char *FileName,
                                                 char **ErrStr,
                                                 int *ErrLine)


Description:

Reads from a file Bezier triangular surfaces. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the triangular surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngBzrTriSrfReadFromFile2

(trngread.c:224)

Prototype:

  TrngTriangSrfStruct *TrngBzrTriSrfReadFromFile2(int Handler,
                                                  CagdBType NameWasRead,
                                                  char **ErrStr,
                                                  int *ErrLine)


Description:

Reads from a file a Bezier triangular surface. If NameWasRead is TRUE, it is assumed prefix "[TRISRF BEZIER" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of triangular surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the TRISRF BEZIER prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngBzrTriSrfWriteToFile

(trng_wrt.c:147)

Prototype:

  int TrngBzrTriSrfWriteToFile(const TrngTriangSrfStruct *TriSrfs,
                               const char *FileName,
                               int Indent,
                               const char *Comment,
                               char **ErrStr)


Description:

Generic routine to write Bezier triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in file.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngBzrTriSrfWriteToFile2

(trng_wrt.c:188)

Prototype:

  int TrngBzrTriSrfWriteToFile2(const TrngTriangSrfStruct *TriSrfs,
                                int Handler,
                                int Indent,
                                const char *Comment,
                                char **ErrStr)


Description:

Generic routine to write Bezier triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngGrgTriSrfReadFromFile

(trngread.c:575)

Prototype:

  TrngTriangSrfStruct *TrngGrgTriSrfReadFromFile(const char *FileName,
                                                 char **ErrStr,
                                                 int *ErrLine)


Description:

Reads from a file Gregory triangular surfaces. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the triangular surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngGrgTriSrfReadFromFile2

(trngread.c:641)

Prototype:

  TrngTriangSrfStruct *TrngGrgTriSrfReadFromFile2(int Handler,
                                                  CagdBType NameWasRead,
                                                  char **ErrStr,
                                                  int *ErrLine)


Description:

Reads from a file a Gregory triangular surface. If NameWasRead is TRUE, it is assumed prefix "[TRISRF GREGORY" has already been read. This is useful for a global parser which invokes this routine to read from a file several times as a parent controller. For exactly this reason, the given file descriptor is NOT closed in the end. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of triangular surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the TRISRF GREGORY prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngGrgTriSrfWriteToFile

(trng_wrt.c:400)

Prototype:

  int TrngGrgTriSrfWriteToFile(const TrngTriangSrfStruct *TriSrfs,
                               const char *FileName,
                               int Indent,
                               const char *Comment,
                               char **ErrStr)


Description:

Generic routine to write Gregory triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in file.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngGrgTriSrfWriteToFile2

(trng_wrt.c:441)

Prototype:

  int TrngGrgTriSrfWriteToFile2(const TrngTriangSrfStruct *TriSrfs,
                                int Handler,
                                int Indent,
                                const char *Comment,
                                char **ErrStr)


Description:

Generic routine to write Gregory triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngTriSrfReadFromFile

(trngread.c:34)

Prototype:

  TrngTriangSrfStruct *TrngTriSrfReadFromFile(const char *FileName,
                                              char **ErrStr,
                                              int *ErrLine)


Description:

Reads from a file triangular surfaces. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the triangular surface from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngTriSrfReadFromFile2

(trngread.c:101)

Prototype:

  TrngTriangSrfStruct *TrngTriSrfReadFromFile2(int Handler,
                                               char **ErrStr,
                                               int *ErrLine)


Description:

Reads from a file a triangular surface. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to beginning of triangular surface. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

TrngTriangSrfStruct *: The read triangular surface, or NULL if an error occurred.


Keywords:

files read triangular surfaces


TrngTriSrfWriteToFile

(trng_wrt.c:34)

Prototype:

  int TrngTriSrfWriteToFile(const TrngTriangSrfStruct *TriSrfs,
                            const char *FileName,
                            int Indent,
                            const char *Comment,
                            char **ErrStr)


Description:

Generic routine to write triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in file f.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngTriSrfWriteToFile2

(trng_wrt.c:74)

Prototype:

  int TrngTriSrfWriteToFile2(const TrngTriangSrfStruct *TriSrfs,
                             int Handler,
                             int Indent,
                             const char *Comment,
                             char **ErrStr)


Description:

Generic routine to write triangular surfaces to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write triangular surfaces


TrngTriSrfWriteToFile3

(trng_wrt.c:114)

Prototype:

  int TrngTriSrfWriteToFile3(const TrngTriangSrfStruct *TriSrfs,
                             FILE *f,
                             int Indent,
                             const char *Comment,
                             char **ErrStr)


Description:

Generic routine to write triangular surfaces(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

TriSrfs: To be saved in file f.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if succesful, FALSE otherwise.


Keywords:

files write


VMdlReadModelFromFile

(vmdlread.c:69)

Prototype:

  VMdlVModelStruct *VMdlReadModelFromFile(const char *FileName,
                                          char **ErrStr,
                                          int *ErrLine)


Description:

Reads from a file a volumetric model. If error is detected in reading the file, ErrStr is set to a string describing the error and Line to the line it occurred in file. If no error is detected *ErrStr = NULL.

Parameters:

FileName: To read the volumetric model from.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

VMdlVModelStruct *: Read volumetric model, or NULL if an error occurred.


See Also:

VMdlReadModelSrfFromFile2

Keywords:

files read Volume models


VMdlReadModelFromFile2

(vmdlread.c:132)

Prototype:

  VMdlVModelStruct *VMdlReadModelFromFile2(int Handler,
                                           CagdBType NameWasRead,
                                           char **ErrStr,
                                           int *ErrLine)


Description:

Reads from a file a volumetric model. If error is found in reading the file, ErrStr is set to a string describing it and ErrLine to line it occurred in file relative to model. Assumes the [MODEL prefix was read if NameWasRead. If no error is detected *ErrStr is set to NULL.

Parameters:

Handler: A handler to the open stream.
NameWasRead: If FALSE, also reads the VMODEL prefix.
ErrStr: Will be initialized if an error has occurred.
ErrLine: Line number in file FileName of the error, if occurred.


Returned Value:

VMdlVModelStruct *: Read volumetric model, or NULL if an error occurred.


See Also:

VMdlReadModelSrfFromFile

Keywords:

files read model


VMdlWriteVModelToFile

(vmdl_wrt.c:62)

Prototype:

  int VMdlWriteVModelToFile(const VMdlVModelStruct *VModels,
                            const char *FileName,
                            int Indent,
                            const char *Comment,
                            char **ErrStr)


Description:

Generic routine to write model(s) to the given file. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

VModels: To be saved in stream.
FileName: File name where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


VMdlWriteVModelToFile2

(vmdl_wrt.c:136)

Prototype:

  int VMdlWriteVModelToFile2(const VMdlVModelStruct *VModels,
                             int Handler,
                             int Indent,
                             const char *Comment,
                             char **ErrStr)


Description:

Generic routine to write models(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

VModels: To be saved in stream.
Handler: A handler to the open stream.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write stream


VMdlWriteVModelToFile3

(vmdl_wrt.c:103)

Prototype:

  int VMdlWriteVModelToFile3(const VMdlVModelStruct *VModels,
                             FILE *f,
                             int Indent,
                             const char *Comment,
                             char **ErrStr)


Description:

Generic routine to write volumetric model(s) to the given stream. If Comment is NULL, no comment is printed, if "" only internal comment.

Parameters:

VModels: To be saved in stream.
f: File descriptor where output should go to.
Indent: Column in which all printing starts at.
Comment: Optional comment to describe the geometry.
ErrStr: If failed, ErrStr will be set to describe the problem.


Returned Value:

int: TRUE if successful, FALSE otherwise.


Keywords:

files write


_IPFatalErrorEx

(prsr_err.c:215)

Prototype:

  void _IPFatalErrorEx(IPFatalErrorType ErrID,
                       int ErrLine,
                       const char *ErrDesc)


Description:

Trap Prsr_lib errors right here. Provides a default error handler for the prsr library. Gets an error description using PrsrDescribeError, prints it and exit the program using exit.

Parameters:

ErrID: Error type that was raised.
ErrLine: Line number of error in processed file or IP_ERR_NO_LINE_NUM. to ignore.
ErrDesc: Optional error description.


Returned Value:

void


Keywords:

error handling


_IPFprintf

(iritprs2.c:640)

Prototype:

  void _IPFprintf(int Handler, int Indent, const char *va_alist, ...)


Description:

Same as fprintf but with indentation.

Parameters:

Handler: A handler to the open stream.
Indent: All printing will start at this column.
va_alist: Do "man stdarg"


Returned Value:

void


See Also:

IPSetPrintFunc IPSetFloatFormat IPPrintFunc

Keywords:

files


_IPGetAllAttributes

(iritprs1.c:3085)

Prototype:

  int _IPGetAllAttributes(IPAttributeStruct **Attr, int Handler)


Description:

Routine to read from input file f the following [ATTR ...] [ATTR ...]. The first '[' was already read.

Parameters:

Attr: Where attributes should go to.
Handler: A handler to the open stream.


Returned Value:

int: Number of attributes read.


See Also:

_IPGetAllAttributes2

Keywords:




_IPGetAllAttributes2

(iritprs1.c:3127)

Prototype:

  int _IPGetAllAttributes2(IPAttributeStruct **Attr, int Handler)


Description:

Routine to read from input file f the following [ATTR ...] [ATTR ...]. Query if the next token is a '[', and fetch as many attrs as found.

Parameters:

Attr: Where attributes should go to.
Handler: A handler to the open stream.


Returned Value:

int: Number of attributes read.


See Also:

_IPGetAllAttributes

Keywords:




_IPGetCloseParenToken

(iritprs1.c:2051)

Prototype:

  void _IPGetCloseParenToken(int Handler)


Description:

Routine to get close paren token from FILE f. This function invokes the parser's abort routine, if no close paren.

Parameters:

Handler: A handler to the open stream.


Returned Value:

void


Keywords:




_IPGetToken

(iritprs1.c:2711)

Prototype:

  IPTokenType _IPGetToken(int Handler, char *StringToken)


Description:

Routine to get the next token out of the input file f as token number. StringToken must be allocated before calling this routine!

Parameters:

Handler: A handler to the open stream.
StringToken: String token will be placed herein.


Returned Value:

IPTokenType: Token as a numeral.


Keywords:




_IPGetTokenAttr

(iritprs1.c:2915)

Prototype:

  IPTokenType _IPGetTokenAttr(int Handler,
                              char *StringToken,
                              IPAttributeStruct **Attr)


Description:

Routine to get the next token out of the input file f as token number. StringToken must be allocated before calling this routine! Also senses if Attributes follows an open Paren and fetch them if so.

Parameters:

Handler: A handler to the open stream.
StringToken: String token will be placed herein.
Attr: Attributes to fetch, if any.


Returned Value:

IPTokenType: Token as a numeral.


Keywords:




_IPParseResetError

(prsr_err.c:237)

Prototype:

  void _IPParseResetError()


Description:

Clears the error records for a fresh start.

Parameters:

None


Returned Value:

void


Keywords:




_IPSkipToCloseParenToken

(iritprs1.c:2073)

Prototype:

  int _IPSkipToCloseParenToken(int Handler)


Description:

Routine to skip to the next closed parenthesis.

Parameters:

Handler: A handler to the open stream.


Returned Value:

int: TRUE, if found close paren.


Keywords:




_IPThisLittleEndianHardware

(iritprsb.c:123)

Prototype:

  int _IPThisLittleEndianHardware(void)


Description:

Routine to test little vs. big endian style of packing bytes. Test is done by placing a none zero byte into the first place of a zero integer.

Parameters:

None


Returned Value:

int: TRUE/FALSE for little/big endian style.


Keywords:




_IPUnGetToken

(iritprs1.c:2496)

Prototype:

  void _IPUnGetToken(int Handler, char *StringToken)


Description:

Routine to unget one token (on stack of UNGET_STACK_SIZE levels!)

Parameters:

Handler: A handler to the open stream.
StringToken: Token to unget


Returned Value:

void


Keywords: