Jump to content

WORKSHEET - in struggle to quickly recalculate (vsel = true)


Recommended Posts

Hi vw community,

 

I hit my limits to find reason why my worksheet (spreadsheet setup) is working perfectly fine in blank file (with only one slab style and worksheet itself) but have real struggle to recalculate in file with model - building in it (many layers, viewports ...etc). Takes 10-15 minutes! 

I attach one screenshot with shown and described formula structure and other with look of desired result. Core criteria is vsel=true, so I basically select any slab that has slab style and while worksheet opened hit 'recalculate active worksheet' and get all information about individual components and result of object as a whole. There must be something ill with formulae...but I dont know what.

 

I have noticed that whenever i import worksheet to any full project file, worksheet for some reason picks up some very high componentthicknessvalue for component no.1...? (3945 mm or similiar). It doesnt happen in blank file....

 

Would appreciate your time and help as I cant seem to resolve it.

I will be willing to share worksheet if needed.

 

Thanks in advance.

 

Snímka obrazovky 2020-10-17 o 14.32.19.png

Snímka obrazovky 2020-10-17 o 15.13.42.png

Edited by drelARCH
Link to comment

Here is simple file with worksheet (actually two types) and slab with slab style in it. 

Now in attached file everything works perfectly fine...as intended. Real issue starts whenever I bring - import any of attached worksheet into not blank file but file where content  is already build up and there are are many layers, viewports, styles with content in it...(I dont know if there is some connection between content of file and the problem itself, but so far recalculating worksheet never worked properly in such files with more content in it...?)

Ultimate goal is to create wall/slab/roof style reports of present structures in those files .... but for some reason recalculating worksheet takes that long.

 

I have suspicion that my formulas might be missing something and it is not written syntax correctly---but I am not sure...I don't know.

Thanks for your time it would be of huge help as I spent quite some time to build these worksheet and materials resources and styles and I have no succes with final step...

Thanks.

spreadsheet__20201018.vwx

Edited by drelARCH
Link to comment
  • Vectorworks, Inc Employee

@drelARCH I looked at your worksheets is here are somme comments and advices.

- Worksheets calculations will definitely be faster in an almost empty file because there are less objects to process.

You are using many criteria functions in this worksheet. Each function needs to evaluate the criteria to find the matching objects. The more objects there are to process, the slower the speed. 10-15 minutes is a lot. But it depends on the number of objects in your file.

 

- The criteria that you are using in your Image functions are very broad. I imagine that your intent is to set a criteria that identifies one single object, in this case a particular slab. But your criteria is simply looking for any selected object.  Any selected object of any kind would be a match, and if you happen to have more than one objet selected, the speed would be affected because it would attempt to create images for each one of them.

 

On 10/17/2020 at 9:19 AM, drelARCH said:

I have noticed that whenever i import worksheet to any full project file, worksheet for some reason picks up some very high componentthicknessvalue for component no.1...? (3945 mm or similiar). It doesnt happen in blank file....

 

The componentthickness function will return the sum of the thicknesses if more than one object match the criteria. 

In other words =COMPONENTTHICKNESS( SLST=B5, 1) will find all objects that use the specified slab style and return the thickness of the first component. If it finds more than one object using this slab style, it will sum up the values. 

  • Like 1
Link to comment

Thanks @Hugues for your input into my issues.

Aha... I thought that criteria 'visible selection state' is already quite narrow when one single object (this time slab with slab style) is present on current screen...? I was really hoping that it can be that simple.

So do I have to add additional criteria to my criteria functions...like on which Layer it is present...and so on? I want to keep it as simple as possible and as universal as possible. 

How you would add more criteria to image function or componentthickness?

Thanks for your time.

Link to comment
  • Vectorworks, Inc Employee
9 hours ago, drelARCH said:

Aha... I thought that criteria 'visible selection state' is already quite narrow when one single object (this time slab with slab style) is present on current screen...? I was really hoping that it can be that simple.

It is actually that simple. I was just warning you about using the 'visible selection state' criteria. The results in your worksheet will differ depending on your selection on the drawing. This can feel unpredictable if you happen to have objects that are unexpectedly selected on the drawing. You have to be careful to recalculate the worksheet only when your target object is the one and only selected object in your drawing.

 

9 hours ago, drelARCH said:

So do I have to add additional criteria to my criteria functions...like on which Layer it is present...and so on? I want to keep it as simple as possible and as universal as possible. 

You may have to narrow your criteria a bit more. Because you indicated that the performance was great in a small file but degraded in a very large file, and if you can confirm that you didn't have many objects selected when you recalculated the worksheet, the plausible explanation is just that the criteria is processing too many objects.

If your criteria is just "VSEL = true" , all objects in the document will be visited to test for selection. If you have 1 million object in the document, that's 1 million checks.

You could narrow your criteria to a specific layer and only the objects on that layer will be visited. If you have only 1 object on that layer, that's 1 check. You can imagine the difference it would make.

 

9 hours ago, drelARCH said:

How you would add more criteria to image function or componentthickness?

Your criteria for the Image function could as simple as (L='Layername') & (VSEL=TRUE)

 

For the componentthickness function, since you are not looking to get the total thickness, you would what to narrow your criteria to point it to one specific object. One option is to give that object a name and the use the criteria (N='objectname'). Another option is to place that object on a layer and make sure it is the only one of that style on the layer. Then you could use =COMPONENTTHICKNESS( (L='Layername') & (SLST=B5) , 1)

 

 

 

 

 

  • Like 1
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...