Community Tip - You can Bookmark boards, posts or articles that you'd like to access again easily! X
Solved! Go to Solution.
There may be other ways, but you could define a String parameter in the generic model, named something like "txtLen".
If your Len dimension is always going to be integer values like you've shown, you could then define a relation in the model that builds the text to represent your dimension plus its tolerance:
txtLen = ITOS ( Len ) + "±0." + ITOS ( 10 * Tol )
Put txtLen in a column of your family table, then use the Tools->Verify function of the family table to "fill in" all the values of txtLen for each instance defined.
You could now use txtLen in your drawing table and it will show the length as desired.
If someone has a better less complicated way to make dimensions show tolerances in a repeat region, I'd sure like to know it.
There may be other ways, but you could define a String parameter in the generic model, named something like "txtLen".
If your Len dimension is always going to be integer values like you've shown, you could then define a relation in the model that builds the text to represent your dimension plus its tolerance:
txtLen = ITOS ( Len ) + "±0." + ITOS ( 10 * Tol )
Put txtLen in a column of your family table, then use the Tools->Verify function of the family table to "fill in" all the values of txtLen for each instance defined.
You could now use txtLen in your drawing table and it will show the length as desired.
If someone has a better less complicated way to make dimensions show tolerances in a repeat region, I'd sure like to know it.
Thank you for your help. It worked for me as original data was integer. But if the data involves decimals ITOS function rounds it off. In that case @Chris3 solution work perfectly.
If you want to use @KenFarley 's solution you can get the decimals if you add to the relation like is described here:
I show this solution but because I had less time I used your method for decimal one and used @KenFarley method for the integers one. I will look into the above solution and understand how the relation are working, Thank you both for the help @KenFarley @Chris3 , you guys saved a lot of time for me.
Here's a past discussion where I posted a bit of relations that gets you a decimal number. I do this a LOT when using part dimensions to put markings on parts, to automatically generate part descriptions from part dimensions, etc.
https://community.ptc.com/t5/3D-Part-Assembly-Design/Convert-real-number-in-string/m-p/570701
I believe the latest version(s) of Creo include a built-in function to do this, but I'm not running any of those versions.
Unfortunately, you need to include these chunks of code once for each string you are trying to generate. This can make your relations listing rather long, but hey, that's what computers are for.
At the last PTC user meeting I mentioned this use case to @Mfridman. PTC is looking into repeat region upgrades in a future release.
You are not going to like this answer, but the way I have done this on some of my drawings is to not use a repeat region and instead call out the dimension or parameter with its instance ID in each cell of the table.
IE: &d0:1 where 1 is the instance ID. and d0 is the dimension or parameter name.
This is tedious but it works and it is parametric.
I've done this too, Chris3. It works nice and to be honest I prefer it over my idea.
Don't forget you have to "Add Model" for all instances of the family table that I want to have represented in the table. It does get tedious for lots of different versions, but it's wonderfully reliable.