/***************************************************************************** * DESCRIPTION: * * Call back function of IPTraverseObjListHierarchy. Called on every non * * list object found in hierarchy. * * * * PARAMETERS: * * PObj: Non list object to handle. * * Mat: Transformation matrix to apply to this object. * * * * RETURN VALUE: * * void * *****************************************************************************/ static void DumpOneTraversedObject(IPObjectStruct *PObj, IrtHmgnMatType Mat) { IPObjectStruct *PObjs; if (IP_IS_FFGEOM_OBJ(PObj)) PObjs = IPConvertFreeForm(PObj, &IPFFCState); /* Convert in place. */ else PObjs = PObj; for (PObj = PObjs; PObj != NULL; PObj = PObj -> Pnext) DumpOneObject(OutputFile, PObj); }
/***************************************************************************** * DESCRIPTION: * * Call back function of IPTraverseObjListHierarchy. Called on every non * * list object found in hierarchy. * * * * PARAMETERS: * * PObj: Non list object to handle. * * Mat: Transformation matrix to apply to this object. * * * * RETURN VALUE: * * void * *****************************************************************************/ void CGSkelDumpOneTraversedObject(IPObjectStruct *PObj, IrtHmgnMatType Mat) { IPObjectStruct *PObjs; if (IP_IS_FFGEOM_OBJ(PObj)) PObjs = IPConvertFreeForm(PObj, &CGSkelFFCState); else PObjs = PObj; for (PObj = PObjs; PObj != NULL; PObj = PObj -> Pnext) if (!CGSkelStoreData(PObj)) exit(1); }
/***************************************************************************** * DESCRIPTION: * * Call back function of IPTraverseObjListHierarchy. Called on every non * * list object found in hierarchy. * * * * PARAMETERS: * * PObj: Non list object to handle. * * Mat: Transformation matrix to apply to this object. * * * * RETURN VALUE: * * void * *****************************************************************************/ static void DumpOneTraversedObject(IPObjectStruct *PObj, IrtHmgnMatType Mat) { int Color; IPObjectStruct *PObjs; if (IP_IS_FFGEOM_OBJ(PObj)) PObjs = IPConvertFreeForm(PObj, &IPFFCState); /* Convert in place. */ else PObjs = PObj; for (PObj = PObjs; PObj != NULL; PObj = PObj -> Pnext) { if ((Color = AttrGetObjectColor(PObj)) != IP_ATTR_NO_COLOR) fprintf(OutputFile, "SP%d;\n", Colors[Color]); else fprintf(OutputFile, "SP1;\n"); /* Black. */ DumpOneObject(OutputFile, PObj); } }