cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Did you get an answer that solved your problem? Please mark it as an Accepted Solution so others with the same problem can find the answer easily. X

How to remove the weight of a part without changing part parameters & density from an assembly?

AC_10506276
2-Guest

How to remove the weight of a part without changing part parameters & density from an assembly?

How is it possible to remove from an assembly the weight of a part without changing part parameters and without changing part density? I mean just to remove the part mass from an assembly total mass

 

 

 

 

1 ACCEPTED SOLUTION

Accepted Solutions

Hello

Yes, you can do it using flexibility:

  1. Make the component Flexible if it is not already

  2. Add these parameters to Varied Items and give these values:

    PRO_MP_SOURCE: PARAMETERS

    PRO_MP_ALT_AREA: 0

    PRO_MP_ALT_MASS: 0

    PRO_MP_ALT_VOLUME: 0

  3. The weight, area and volume of the components will not be included when calculating the mass properties of the assembly

You can select the component and run mapkey com0 to do this:

mapkey com0 ~ Activate `main_dlg_cur` `page_Model_control_btn` 1;\
 ~ Command `ProCmdEditMakeFlexible` ;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Open `params_dlg` `ParamsPHLay.OMPrmType`;\
 ~ Close `params_dlg` `ParamsPHLay.OMPrmType`;\
 ~ Select `params_dlg` `ParamsPHLay.OMPrmType` 1 `alternative_mp`;\
 ~ Select `params_dlg` `ParamsPHLay.ParTable` 56 `rowPRO_MP_SOURCE` `name` \
 `rowPRO_MP_SOURCE` `value` `rowPRO_MP_SOURCE` `attribute` `rowPRO_MP_SOURCE` \
 `access` `rowPRO_MP_SOURCE` `source` `rowPRO_MP_SOURCE` `description` \
 `rowPRO_MP_SOURCE` `restricted` `rowPRO_MP_SOURCE` `unit_quantity` \
 `rowPRO_MP_SOURCE` `unit` `rowPRO_MP_ALT_MASS` `name` `rowPRO_MP_ALT_MASS` \
 `value` `rowPRO_MP_ALT_MASS` `attribute` `rowPRO_MP_ALT_MASS` `access` \
 `rowPRO_MP_ALT_MASS` `source` `rowPRO_MP_ALT_MASS` `description` \
 `rowPRO_MP_ALT_MASS` `restricted` `rowPRO_MP_ALT_MASS` `unit_quantity` \
 `rowPRO_MP_ALT_MASS` `unit` `rowPRO_MP_ALT_VOLUME` `name` \
 `rowPRO_MP_ALT_VOLUME` `value` `rowPRO_MP_ALT_VOLUME` `attribute` \
 `rowPRO_MP_ALT_VOLUME` `access` `rowPRO_MP_ALT_VOLUME` `source` \
 `rowPRO_MP_ALT_VOLUME` `description` `rowPRO_MP_ALT_VOLUME` `restricted` \
 `rowPRO_MP_ALT_VOLUME` `unit_quantity` `rowPRO_MP_ALT_VOLUME` `unit` \
 `rowPRO_MP_ALT_AREA` `name`;~ Activate `params_dlg` `PBInsert`;\ 
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_SOURCE*TYPE*5*` \
 `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_SOURCE*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `PARAMETERS`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 \
 PRO_MP_ALT_VOLUME*TYPE*5*` `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_ALT_VOLUME*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `0`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 \
 PRO_MP_ALT_AREA*TYPE*5*` `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_ALT_AREA*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `0`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 \
 PRO_MP_ALT_MASS*TYPE*5*` `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_ALT_MASS*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `0`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Activate `flexdiffstabdlg` `OkButton`;\
 ~ Activate `main_dlg_cur` `dashInst0.stdbtn_1`;

 

View solution in original post

2 REPLIES 2

Hi,

in https://community.ptc.com/t5/3D-Part-Assembly-Design/Volume-calculation-with-interfering-parts/m-p/879902 discussion you can download my example and see how mass properties feature can be used.


Martin Hanák

Hello

Yes, you can do it using flexibility:

  1. Make the component Flexible if it is not already

  2. Add these parameters to Varied Items and give these values:

    PRO_MP_SOURCE: PARAMETERS

    PRO_MP_ALT_AREA: 0

    PRO_MP_ALT_MASS: 0

    PRO_MP_ALT_VOLUME: 0

  3. The weight, area and volume of the components will not be included when calculating the mass properties of the assembly

You can select the component and run mapkey com0 to do this:

mapkey com0 ~ Activate `main_dlg_cur` `page_Model_control_btn` 1;\
 ~ Command `ProCmdEditMakeFlexible` ;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Open `params_dlg` `ParamsPHLay.OMPrmType`;\
 ~ Close `params_dlg` `ParamsPHLay.OMPrmType`;\
 ~ Select `params_dlg` `ParamsPHLay.OMPrmType` 1 `alternative_mp`;\
 ~ Select `params_dlg` `ParamsPHLay.ParTable` 56 `rowPRO_MP_SOURCE` `name` \
 `rowPRO_MP_SOURCE` `value` `rowPRO_MP_SOURCE` `attribute` `rowPRO_MP_SOURCE` \
 `access` `rowPRO_MP_SOURCE` `source` `rowPRO_MP_SOURCE` `description` \
 `rowPRO_MP_SOURCE` `restricted` `rowPRO_MP_SOURCE` `unit_quantity` \
 `rowPRO_MP_SOURCE` `unit` `rowPRO_MP_ALT_MASS` `name` `rowPRO_MP_ALT_MASS` \
 `value` `rowPRO_MP_ALT_MASS` `attribute` `rowPRO_MP_ALT_MASS` `access` \
 `rowPRO_MP_ALT_MASS` `source` `rowPRO_MP_ALT_MASS` `description` \
 `rowPRO_MP_ALT_MASS` `restricted` `rowPRO_MP_ALT_MASS` `unit_quantity` \
 `rowPRO_MP_ALT_MASS` `unit` `rowPRO_MP_ALT_VOLUME` `name` \
 `rowPRO_MP_ALT_VOLUME` `value` `rowPRO_MP_ALT_VOLUME` `attribute` \
 `rowPRO_MP_ALT_VOLUME` `access` `rowPRO_MP_ALT_VOLUME` `source` \
 `rowPRO_MP_ALT_VOLUME` `description` `rowPRO_MP_ALT_VOLUME` `restricted` \
 `rowPRO_MP_ALT_VOLUME` `unit_quantity` `rowPRO_MP_ALT_VOLUME` `unit` \
 `rowPRO_MP_ALT_AREA` `name`;~ Activate `params_dlg` `PBInsert`;\ 
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_SOURCE*TYPE*5*` \
 `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_SOURCE*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `PARAMETERS`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 \
 PRO_MP_ALT_VOLUME*TYPE*5*` `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_ALT_VOLUME*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `0`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 \
 PRO_MP_ALT_AREA*TYPE*5*` `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_ALT_AREA*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `0`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Arm `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 \
 PRO_MP_ALT_MASS*TYPE*5*` `NewValue`;\
 ~ Select `flexdiffstabdlg` `ParamTable` 2 `*ID*1 -2 PRO_MP_ALT_MASS*TYPE*5*` \
 `NewValue`;~ Update `flexdiffstabdlg` `ParamTable_INPUT` `0`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `GeomTolerances`;\
 ~ Select `flexdiffstabdlg` `VarItemsTab` 1 `Parameters`;\
 ~ Activate `flexdiffstabdlg` `OkButton`;\
 ~ Activate `main_dlg_cur` `dashInst0.stdbtn_1`;

 

Top Tags