All,
We currently place a manufacturing UDF with a variant dimension that is an angle around an axis. We have found it best practice to always place this udf at a certain angle (5 degrees) and then modify the dimension to the desired angle after it is placed. We do this because the udf orientations get interpreted differently in different quadrants around the axis. While any input angle into this UDF looks fine in Pro, when the ncl is posted, it doesn't post right. This practice of changing the angle after it is placed works fine, until you try to programmatically place this UDF. Having an ID that changes depending on the part it is placed into, I cannot determine a way to get and handle on this dimension to programmatically change after the udf is placed. I have also tried manipulating the orientations at different input angles, but there are certain angles that will not post correctly no matter what I set them to.
Has anyone ever seen anything like this before? Or better yet, found a way around it? I am using the VB API.
Thanks,
Corey
> This practice of changing the angle after it is placed works fine,
> until you try to programmatically place this UDF. Having an ID
> that changes depending on the part it is placed into, I cannot
> determine a way to get and handle on this dimension to programmatically
> change after the udf is placed.
If you change the symbol name of your dimensions in the UDF (i.e. from
d3 to X_ROT), those names will be preserved (if they're not already
being used) when the UDF has been placed. ProE will also try to preserve
the feature names (again, if they're not already being used). When you
need to change the dimension values after UDF placement, look for the
named dimensions using pfcSolid.GetItemByName().
Be sure to check results of BaseDimension.GetExtendsinNegativeDirection()
as ProE can be vague about dimensions that show as positive but really have
negative values.
In Reply to Marc Mettes:
>If you change the symbol name of your dimensions in the UDF (i.e. from
>d3 to X_ROT), those names will be preserved (if they're not already
>being used) when the UDF has been placed. ProE will also try to preserve
>the feature names (again, if they're not already being used). When you
>need to change the dimension values after UDF placement, look for the
>named dimensions using pfcSolid.GetItemByName().
Marc,
Thanks for the reply. Your solution is definitely a sound one, but the remaining issue is that we are looking to place the same UDF multiple times, with different rotations on each instance. Creating multiple UDFs with the same variable name and changing the variable with thatname would result in all the UDFs being placed at the same rotation angle, wouldn't it?