Jump to content

Wall Data Tag Component List


Recommended Posts

I would like to create a wall data tag that creates a list of the wall's components, either as separate components or as a list of all the components. I can figure out how to do this in a worksheet but not in a data data tag. Has any one out there tried this?

 

It would be nice to be able to use formulas or run scripts for fields like you can in a worksheet but for data tag text blocks.

  • Like 2
Link to comment
12 hours ago, David Poiron said:

I would like to create a wall data tag that creates a list of the wall's components, either as separate components or as a list of all the components. I can figure out how to do this in a worksheet but not in a data data tag. Has any one out there tried this?

 

It would be nice to be able to use formulas or run scripts for fields like you can in a worksheet but for data tag text blocks.

Yes, that's a great idea or even list the classes would be great!

Link to comment
  • 3 weeks later...
  • Vectorworks, Inc Employee

Currently there is no way to do that using just the Data Tag and its formulas. However, it can be done using the Data Manager:

  1. Create a new record in the document with as many text fields as components you want to show.
  2. Open "Tools" -> "Data Manager...".
  3. Find and select "Wall" in the "Objects" list browser.
  4. In the second list browser select the entity you'd like to add your custom pSet to (for example "IfcWallStandardCase").
  5. Open "Add Data Set...".
  6. Find and select the record you created in 1.
  7. Open "Manage Custom Property Sets...".
  8. Check "Use" in front of the record's name.
  9. Close with OK.
  10. Make sure record is selected under "Ifc PSets (Custom)" (I think it's not nessary but I'm not that experienced with the Data Manager).
  11. Close with OK.
  12. Expand the record.
  13. Select one of its fields.
  14. Open "Define Mapping..."
  15. Select "Expert Formula", "Function", "GETCOMPONENTINFO".
  16. Press "Insert into Formula".
  17. Add its arguments: index* and selector**.
  18. Close with OK.
  19. Repeat 13. - 18. for more components.
  20. Close with OK.
  21. There should be a new pSet in the entity selected in 4. and its fields should have the values for the components you wanted.
  22. I'm assuming you know how to work with Data Tags, create a new or edit an existing style and edit its layout.
  23. Define a dynamic text: the source should be the entity from 4., the pSet - the name of the new custom pSet (same as the record), the property - one of the record fields (now a property in the pSet).
  24. This should extract the data from the pSet which was written there by the Data Manager.

*Currently there is a bug and the indexing is -1-based (the first component has an index of -1). This will be fixed in SP3.

**1 - Name, 2 - Function, 3- Class, 4 - Thickness

 

I've attached an example file.

WallDataTag.vwx

  • Like 2
Link to comment
  • 11 months later...
  • Vectorworks, Inc Employee

@ericjhberg You can maybe try Wall Average Height ( the mean of the height at the start and at the end ) or Wall Overall Height (overall top heigh - overall bottom height but I'm not sure what they represent). I'm not sure what the value in the OIP means but from my testing it appears to be the top offset - the bottom offset. The bottom offset is the height of the control point at the top middle of the wall when you activate the reshape tool. The bottom offset is the bottom middle one. Wall Overall Height provided correct results in my testing so far but I can't be 100% sure that this is what overall height means.

Link to comment
  • 6 months later...
On 1/9/2020 at 4:22 PM, TDimov said:

Currently there is no way to do that using just the Data Tag and its formulas. However, it can be done using the Data Manager:

  1. Create a new record in the document with as many text fields as components you want to show.
  2. Open "Tools" -> "Data Manager...".
  3. Find and select "Wall" in the "Objects" list browser.
  4. In the second list browser select the entity you'd like to add your custom pSet to (for example "IfcWallStandardCase").
  5. Open "Add Data Set...".
  6. Find and select the record you created in 1.
  7. Open "Manage Custom Property Sets...".
  8. Check "Use" in front of the record's name.
  9. Close with OK.
  10. Make sure record is selected under "Ifc PSets (Custom)" (I think it's not nessary but I'm not that experienced with the Data Manager).
  11. Close with OK.
  12. Expand the record.
  13. Select one of its fields.
  14. Open "Define Mapping..."
  15. Select "Expert Formula", "Function", "GETCOMPONENTINFO".
  16. Press "Insert into Formula".
  17. Add its arguments: index* and selector**.
  18. Close with OK.
  19. Repeat 13. - 18. for more components.
  20. Close with OK.
  21. There should be a new pSet in the entity selected in 4. and its fields should have the values for the components you wanted.
  22. I'm assuming you know how to work with Data Tags, create a new or edit an existing style and edit its layout.
  23. Define a dynamic text: the source should be the entity from 4., the pSet - the name of the new custom pSet (same as the record), the property - one of the record fields (now a property in the pSet).
  24. This should extract the data from the pSet which was written there by the Data Manager.

*Currently there is a bug and the indexing is -1-based (the first component has an index of -1). This will be fixed in SP3.

**1 - Name, 2 - Function, 3- Class, 4 - Thickness

 

I've attached an example file.

WallDataTag.vwx 10.01 MB · 26 downloads

 

I've only just got around to looking at this properly. I was hoping it would provide a way of labelling components individually rather than as a single list but unfortunately not. If you have lots of components (10+) then you really want to label them individually which I currently do using Callouts which isn't so bad using the database but obviously be great to be able to do it with a Data Tag. Is there any other way of achieving this? Or the possibility that it might be achievable in future? @Nikolay Zhelyazkov? Thanks

Link to comment
  • Vectorworks, Inc Employee
23 minutes ago, Tom W. said:

 

I've only just got around to looking at this properly. I was hoping it would provide a way of labelling components individually rather than as a single list but unfortunately not. If you have lots of components (10+) then you really want to label them individually which I currently do using Callouts which isn't so bad using the database but obviously be great to be able to do it with a Data Tag. Is there any other way of achieving this? Or the possibility that it might be achievable in future? @Nikolay Zhelyazkov? Thanks

 

Hello @Tom W.,

 

Indeed this is something we are willing to do in the future. Stay tuned. 🙂

 

Best Regards,

Nikolay Zhelyazkov

  • Like 1
Link to comment
  • Vectorworks, Inc Employee
50 minutes ago, Tom W. said:

Great thank you @Nikolay Zhelyazkov!

 

Next question: do you know whether the route to achieving this functionality in data tags would be related in any way to what I requested here:

 

?

 

It would be amazing if not only could wall/slab/roof/etc components be recognised by data tags but could be imported/exported between styles 🙂

 

 

- Unfortunately, I do not have information about this.

 

Link to comment
  • 3 weeks later...
  • Vectorworks, Inc Employee
13 hours ago, tismacfan2 said:

I had a few questions about this tag

1 why is the first component always mentioned 3 times
2 is it also possible to retrieve the thickness per component in such a tag?

thanks for the feedback.

 

Pascal

What do you mean by "always mentioned 3 times"? The thickness is described at the end of my procedure for creating the Data Tag.

Link to comment
  • Vectorworks, Inc Employee

You need to fix your data mapping. It's -1-indexed when it should be 1-indexed if you're using VW2021 SP3 or newer. That's also explained in my original post. In VW2022 each component's "feature" i.e. name, thickness, etc. will be accessed with a corresponding function in the Data Manager. The old function will be translated on file open.


If you have any other problems, please first consult my detailed explanation and if it doesn't help then I'd be glad to help.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...