Verify that naming of type and families complies with office standard

Hello,
I’m doing my master thesis and the topic is about model checking using Dynamo. What I am exactly doing is to verify that a model meets the standards defined by the office for a specific project.
I started working on this script a month ago and I got several results, but right now I can not solve a problem.
One of these checks that I’m developing through Dynamo concerns the naming of types and families.
For example, the walls are named following the rule that each layer has a capital letter and two numbers associated with it, that identify the specific material. The code for the wall ends with the thickness of the wall indicated in centimeters (A00_00cm). A wall made up of two layers will then be coded with A00_B00_00cm.
What I want to achieve is verify that all the types complies with these standards and generate a report able to shows the ID of the type that are note conforms with these standards.
How can I verify if all the types within a category of the model complies with the standards explained above? Do you have any advice on this?

2 Likes
  1. Clearify things. What do you want to achieve in the end.
  2. if that is clear: what info is needed
  3. then how to do it.

So

  1. either A00_B00_00cm or A00_00cm
  2. you need A and B and thickness
  3. get that.

use regex forexample to “wildcard” your selection
etc?

Perhaps you can show what you already have, and where you bump into problems?

The first thing I want to know is if the type is named correctly, following the format:

  • capital letter
  • number
  • number
  • underscore
  • number
  • number
  • cm
    After this I would like obtain a list of “true” and “false” and export from dynamo all the ID of the “false” .
    This is what I’ve done for the moment but I think to be quite far from getting a solution at the moment.
    Thanks for helping me anyway

So … without exploding all the wall-type-names and verifying all …

Whatif you compile a correct name according to the firms naming protocol and compare that name with the current names. if the same: true, else false?

The true, else false in the script is referred to the node String.EndWith. From this i know if all walls end with “cm”.
But what I want to know is if the format (A00_A00_00cm) is verified, and I don’t know how to do this

regex

for example:

1 Like

It looks interesting, thank you. But, how can I convert this to a Dynamo node?

Clockwork has a node for it, works fine!

1 Like

@3Pinter Thanks for this, really helpful, I’m going integrate it into my batch plotter :smiley:

Edit: it doesn’t actually need to be as generic as you have made it… for example, we have consistant names for most of the file name… CPL-ROC_HTA-A_[A-Z]{2}_[0-9]{4} this just checks the variable end part of the name ::slight_smile:

Thanks again…

Mark

It works really well. Thanks a lot :slight_smile:

You are welcome! Btw: to help others, please mark it as a solution.

Thanks to let me know this :slight_smile: I’m not new only in Dynamo but also in the forum eheh

This looks interesting.
I have tried to play with this on some of our line elements and cant quite seem to get it right. I would like to see if lines in a project meet naming standards and i thought i could use your method.

For example, if we had a line style named CHAIN (WT1) BLACK, i would like to create a string to find this style, but im not too sure on how to write the string for it.
The WT1 will be the variable part as this represents the line weight, so i had
CHAIN (WT[0-9]) BLACK
It picked up the lines but came back with false results. Not sure why

As here maybe?

Hope that helps,

Mark