Jump to content

Image Function =IMAGE


Recommended Posts

I am using the following image function in my worksheet.

=IMAGE(S='My Symbol Name')

 

It seems the calculation of this function depends on how many symbols are present in the drawing. If there is no iteration on the drawing the value shown is 0 (zero).

If I have only a single iteration in the drawing the work sheet calculates quickly. As soon I have many iterations (I tested with 50+) the work sheet is calculating itself to death.

Is there a better function I can use to show case an image of a symbol without using a dataset?

Link to comment

What version of VW are you using? I just tried 50 symbols in a file and it recalculated in less than a second. This is VW2021SP2.

 

What rendering mode are you using? What Resolution? Try putting the symbols in a different file and see what happens there to rule out there being something else in your file that is causing the problem.

 

Ask again if you still need more help.

Link to comment
  • Vectorworks, Inc Employee

This is because your criteria is set to find all instances of the named symbol. It will then generate an image for each instance found in your document but will only display one in the cell. That function would need to be a bit smarter and avoid generating images that won't be able to be displayed anyway.

What you could do is set your criteria to narrow down the result to a specific instance of the symbol.

Link to comment
  • Vectorworks, Inc Employee
33 minutes ago, spries said:

@Hugues that's what seems to be the case. What do I need to do to modify the current function in order to prevent this from happening?

 

As I said above. Currently I am using.    =IMAGE(S='My Symbol Name')

S='My Symbol Name'  will find all instances of the named symbol in the drawing. You could modify it to isolate a single instance of the symbol. For example you find an instance of the symbol and give it a name, then use (S='My Symbol Name') & (N='name')

Or you could place an instance of the symbol in a layer and make sure it is the only instance in that layer, then use (S='My Symbol Name') & (L='layer name')

Or you could place an instance of the symbol in a class and make sure it is the only instance in that class, then use (S='My Symbol Name') & (C='class name')

Or you can use any other criteria that only one instance (or maybe just very few instances) of the symbol would match.

 

 

 

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...