Community Tip - Learn all about PTC Community Badges. Engage with PTC and see how many you can earn! X
HI,
I am selecting a face from a solid. Sometimes solid could be from Solid application and sometimes it could be from sheetmetal.
I want to know in which application this solid is created. Can someone please help me.
Thanks
Solved! Go to Solution.
extern ProError ProMdlSubtypeGet( ProMdl model,
ProMdlsubtype *subtype);
/*
Purpose: Returns the subtype of a model
Input Arguments:
model - A model pointer whose subtype needs to returned
Output Arguments:
subtype - The type of model. If the function fails, this is
set to PROMDLSTYPE_NONE.
Return Values:
PRO_TK_NO_ERROR - The function successfully retrieved the type
PRO_TK_BAD_INPUTS - The input argument is invalid.
PRO_TK_BAD_CONTEXT - the model has no subtype
*/
typedef enum
{
PROMDLSTYPE_NONE = 0,
PROMDLSTYPE_BULK, /* Bulk items */
PROMDLSTYPE_PART_SOLID, /* Solid Part */
PROMDLSTYPE_PART_COMPOSITE, /* Composite Part */
PROMDLSTYPE_PART_SHEETMETAL, /* Sheetmetal part */
PROMDLSTYPE_PART_CONCEPT_MODEL, /* Concept Model */
PROMDLSTYPE_ASM_DESIGN, /* Design Assembly */
PROMDLSTYPE_ASM_INTERCHANGE, /* Interchange Assembly (both func & subst) */
PROMDLSTYPE_ASM_INTCHG_SUBST, /* Substutional interchange */
PROMDLSTYPE_ASM_INTCHG_FUNC, /* Functional interchange */
PROMDLSTYPE_ASM_CLASS_CAV, /* CAV */
PROMDLSTYPE_ASM_VERIFY, /* Verify */
PROMDLSTYPE_ASM_PROCPLAN, /* Assembly Manufacturing plan */
PROMDLSTYPE_ASM_NCMODEL, /* NC Model */
PROMDLSTYPE_MFG_NCASM, /* Manufacturing Assembly */
PROMDLSTYPE_MFG_NCPART, /* Part Manufacturing */
PROMDLSTYPE_MFG_EXPMACH, /* Expert Machinist */
PROMDLSTYPE_MFG_CMM, /* CMM Manufacturing */
PROMDLSTYPE_MFG_SHEETMETAL,/* sheet metal */
PROMDLSTYPE_MFG_CAST, /* cast */
PROMDLSTYPE_MFG_MOLD, /* mold design */
PROMDLSTYPE_MFG_DIEFACE, /* diaface */
PROMDLSTYPE_MFG_HARNESS, /* Harness Manufacture */
PROMDLSTYPE_MFG_PROCPLAN, /* Manufacturing Process */
PROMDLSTYPE_REGEN_BACKUP, /* Regeneration Backup */
PROMDLSTYPE_OLD_REG_MFG, /* Regular Manufacturing (outdated) */
PROMDLSTYPE_ASM_CLASS_SCAN_SET, /* CAV scan set part */
PROMDLSTYPE_ASM_EXT_SIMP_REP, /* External Simplify Representation */
PROMDLSTYPE_ASM_FIGURE, /* Figure Assembly */
PROMDLSTYPE_MANIKIN_TOP, /* Top level Manikin assembly */
PROMDLSTYPE_MANIKIN_SEG, /* Sub-assembly/part Manikin */
PROMDLSTYPE_ASM_CONFIGURE_ASM, /* Configure Assembly */
PROMDLSTYPE_CE_SOLID,
PROMDLSTYPE_CREO_INTRCH, /* Creo Container Model (interchange) */
PROMDLSTYPE_CREO_CNF_FACTORY, /* Creo conf. structure (variation factory) */
PROMDLSTYPE_ECAD_ASM, /* Ecad assembly */
PROMDLSTYPE_ECAD_BOARD_PART, /* Ecad board part */
PROMDLSTYPE_TRAY_ASSEM, /* Tray Assembly */
PROMDLSTYPE_INSTR_ASM /* Instrumented Assembly */
} ProMdlsubtype;
Hi,
Can anyone please help me in this.
Thanks
Hello!
Do you select the face from an assembly with different kind parts (regular solid and sheetmetal)?
Or from a part?
In any way: sheet metal part have specific part level parameters, for example, SMT_THICKNESS. So you can check type of the part by reading the parameter from surface owner.
Also, take a look ProSmtSurfaceTypeGet()
extern ProError ProMdlSubtypeGet( ProMdl model,
ProMdlsubtype *subtype);
/*
Purpose: Returns the subtype of a model
Input Arguments:
model - A model pointer whose subtype needs to returned
Output Arguments:
subtype - The type of model. If the function fails, this is
set to PROMDLSTYPE_NONE.
Return Values:
PRO_TK_NO_ERROR - The function successfully retrieved the type
PRO_TK_BAD_INPUTS - The input argument is invalid.
PRO_TK_BAD_CONTEXT - the model has no subtype
*/
typedef enum
{
PROMDLSTYPE_NONE = 0,
PROMDLSTYPE_BULK, /* Bulk items */
PROMDLSTYPE_PART_SOLID, /* Solid Part */
PROMDLSTYPE_PART_COMPOSITE, /* Composite Part */
PROMDLSTYPE_PART_SHEETMETAL, /* Sheetmetal part */
PROMDLSTYPE_PART_CONCEPT_MODEL, /* Concept Model */
PROMDLSTYPE_ASM_DESIGN, /* Design Assembly */
PROMDLSTYPE_ASM_INTERCHANGE, /* Interchange Assembly (both func & subst) */
PROMDLSTYPE_ASM_INTCHG_SUBST, /* Substutional interchange */
PROMDLSTYPE_ASM_INTCHG_FUNC, /* Functional interchange */
PROMDLSTYPE_ASM_CLASS_CAV, /* CAV */
PROMDLSTYPE_ASM_VERIFY, /* Verify */
PROMDLSTYPE_ASM_PROCPLAN, /* Assembly Manufacturing plan */
PROMDLSTYPE_ASM_NCMODEL, /* NC Model */
PROMDLSTYPE_MFG_NCASM, /* Manufacturing Assembly */
PROMDLSTYPE_MFG_NCPART, /* Part Manufacturing */
PROMDLSTYPE_MFG_EXPMACH, /* Expert Machinist */
PROMDLSTYPE_MFG_CMM, /* CMM Manufacturing */
PROMDLSTYPE_MFG_SHEETMETAL,/* sheet metal */
PROMDLSTYPE_MFG_CAST, /* cast */
PROMDLSTYPE_MFG_MOLD, /* mold design */
PROMDLSTYPE_MFG_DIEFACE, /* diaface */
PROMDLSTYPE_MFG_HARNESS, /* Harness Manufacture */
PROMDLSTYPE_MFG_PROCPLAN, /* Manufacturing Process */
PROMDLSTYPE_REGEN_BACKUP, /* Regeneration Backup */
PROMDLSTYPE_OLD_REG_MFG, /* Regular Manufacturing (outdated) */
PROMDLSTYPE_ASM_CLASS_SCAN_SET, /* CAV scan set part */
PROMDLSTYPE_ASM_EXT_SIMP_REP, /* External Simplify Representation */
PROMDLSTYPE_ASM_FIGURE, /* Figure Assembly */
PROMDLSTYPE_MANIKIN_TOP, /* Top level Manikin assembly */
PROMDLSTYPE_MANIKIN_SEG, /* Sub-assembly/part Manikin */
PROMDLSTYPE_ASM_CONFIGURE_ASM, /* Configure Assembly */
PROMDLSTYPE_CE_SOLID,
PROMDLSTYPE_CREO_INTRCH, /* Creo Container Model (interchange) */
PROMDLSTYPE_CREO_CNF_FACTORY, /* Creo conf. structure (variation factory) */
PROMDLSTYPE_ECAD_ASM, /* Ecad assembly */
PROMDLSTYPE_ECAD_BOARD_PART, /* Ecad board part */
PROMDLSTYPE_TRAY_ASSEM, /* Tray Assembly */
PROMDLSTYPE_INSTR_ASM /* Instrumented Assembly */
} ProMdlsubtype;
Thank you very much