Jump to content

Pat Stanford

Moderator
  • Posts

    12,616
  • Joined

  • Last visited

Posts posted by Pat Stanford

  1. I always try to past scripts into a "code" block  (click on the <> icon above the edit window). That will ensure that everything is truly text and not some extended unicode text like object. It also keeps tab formatting correct rather than compressing everything to the left margin.

     

    My question would be what browser you are each using and what operating system. I know Michael is on Mac and it looks like Boh is on Windows.

     

    My guess is that whatever browser Boh is using is sticking some invisible characters into the text when copied that are then confusing the VS compiler.

  2. Probably has to be a wish list item, but there might be some possible work arounds.

     

    1. There is currently no way (that I know of) to have a record or field permanently linked to the symbol definition. As soon as you insert a symbol instance, it gets its own copy of the record and if forever after independent.

     

    2.  Potentially the easiest solution would be a script that when run would read all the data from the record attached to the symbol definition and write that to every symbol instance. Down side is that you have to remember to run the script.

     

    3.  If you don't need to be able to see the data in the OIP, another possibility would be to create a hidden record format and attach that. You could then edit the data with a worksheet or a script. Also, you would still need the script from Option 2 as changes would not propagate to each instance.

     

    4.  It might be possible to create a PIO that could act as a "container" around a symbol and have effectively the script Option 2 included in the PIO code so that when the PIO regenerates it "grabs" the current data from the symbol definition. But you still have to remember to regenerate the PIO.

     

    5.  It might be possible to create a "master" layer that would hold a single instance of each Symbol/Record/Field. Potentially a link to the correct "master" could be stored in a record attached to the instance. With the correct (probably a worksheet script) functions, it might be possible to extract the data from the "master" rather than the instance.

     

    I understand and can see the benefit of what you are asking. Can you better explain your exact use case/need right now so we can possible offer a better solution?

     

  3. Or any of the following depending on your needs. The ones were the field name starts with 11 return a formatted text field. The others return a number of type Real.

     

    'Space'.'Proposed Area'
    'Space'.'Area'
    'Space'.'Gross Area'
    'Space'.'GSA BIM Area'
    'Space'.'Custom Area'
    'Space'.'11_Proposed Area'
    'Space'.'11_Area'
    'Space'.'SubtractionArea'        TEXT
    'Space'.'SubtractionAreaNum'   REAL
    'Space'.'MeasuredNetArea'        TEXT
    'Space'.'MeasuredNetAreaNum'       REAL
    'Space'.'11_Gross Area'
    'Space'.'EnergyArea'
    'Space'.'EnergyAreaFac'
    'Space'.'SpaceCommon_NetPlannedArea'
    'Space'.'SpaceOccupancyRequirements_AreaPerOccupant'
    'Space'.'SpaceThermalDesign_BoundaryAreaHeatLoss'
     

  4. Worksheet Database

     

    Criteria  Class IS "My Class Name".  Check the In Group and InSymbol check boxes.

    Set Columns for:

    =L  (gives the layer name)

    =T (gives the object type)

    =N (gives the object name if there is one)

     

    You can then right click in the row header and Select the object. It will work like Force Select and change the visibilities so the object will be visible and zoom in to show it.

    • Like 4
  5. I think there is a script floating around to change record values, but I don't have time to search for it now.

     

    On an ad hoc basis, I would use a worksheet.

     

    Set the criteria to Record "My Record Name" is present. If you want to do a subset then also add an Is Selected.

     

    Create a column containing the Record.Field that you want. 

    Edit one cell to the value you want applied to all. Select the cell and Copy.

    Select all the cells that you want changed. Paste. The single value will be placed into each instance of the symbol.

     

    If you want different values for the same symbol on a regular basis, then a PIO might be the best way to go as you will be able to see the value on the Shape tab of the OIP instead of having to switch to the Data tab.

     

    Actually try and see if VW will let you edit the Data Tab values if you have more than one object selected. I don't have VW open right now.

     

    • Like 1
  6. Each Symbol Definition can have it's own "default" value for the record.field.

     

    So you can create a Sofa Symbol Definition with a value of 3. Each Symbol Instance Placed from the Resource Manager or the Symbol Insertion Tool will get a "copy" of that record.field with a value of 3. 

     

    You can then have a separate Chair Symbol Definition with a value of 1. Each Symbol Instance Placed from the Resource Manager or the Symbol Insertion Tool will get a "copy" of that record.field with a value of 1.

     

    If you want to use the same symbol for a Sofa and a Chair, you are our of luck except to manually change the value on each Symbol Instance.

     

    If someone changes the value on a Symbol Instance (a Sofa to 4 instead of 3 for instance) and then Duplicates the symbol instead of Inserting a new one, that duplicate will have a value of 4. 

    • Like 1
  7. Can you attach a sample file so we don't have to try and recreate your setup to investigate?

     

    It is likely that you are going to have a hard time doing what you want on a full drawing. The best work around would probably be to place a single "example" of each wall style on a single layer and then limit the database criteria to just that layer.

     

    The 2017 and before worksheet used a second SUM tile to "UnSUMmarize" a given column. I know the functionality still exists, but I don't have VW open to test right now. Perhaps something like that would be what you need.

     

    • Like 1
  8. Hi Andrew,

     

    Yes, you can assign the Record Format to the Symbol Definition and set the values for that symbol there. Each instance will then have a version of the Record Format attached with the default value.

     

    Two catches:

    1. Once a Symbol Instance is placed, it gets its own version of the Record attached. So each Symbol Instance can be edited and the value changed for that specific instance. This is a great feature, unless someone makes changes that they shouldn't and you have to try and find which objects have the wrong values.

    2. Similarly, one a Symbol Instance is placed, there is not longer a connection to the Record.Field values associated with the symbol definition. So when you decide you can squeeze 4 people onto the sofa instead of 3, you can't just change the Symbol Definition, you have to edit every Symbol Instance (power user tip: Create a worksheet, copy the value you want, select the [continuous] range that you want that value to be in, and paste. This will put that value into every cell).

    • Like 1
  9. @JBenghiat Joshua,  Can you please also comments on the idea of not using the actual parameter records in the dialog box and rather copying the original value into a variable to use in the dialog box and then writing the value back to the parameter record after the OK button is clicked.

     

    I seem to remember that this was considered best practice, but don't have time to find the appropriate threads right now.

  10. I will go out on a limb and say yes it is a bug and that I know what it is.

     

    1 ft2 = 144 in2 

     

    1 inch = 25.4 mm

     

    144*25.4*25.4 = 9230404 mm2

     

    Internal units in VW are millimeters.

     

    The conversion to local units is not getting made either in the storing of the data to the record or more likely in the display in the worksheet.

     

    Your division is the best current work around.

     

    Please submit the file as a bug and include a link to this thread.

     

    Good find.

     

  11. Normally VW will only import named Blocks from VW as symbols. Anonymous blocks are normally imported as groups.

     

    This sounds like the AC file might be constructed strangely.

     

    If you really want just lines to work with, just Select All, Convert to Group, and Ungroup.  Repeat this process as many times as necessary to get to the point where the file can be used for your purpose.

     

    As @Gadzooks says, there are some options in the import dialog about how the file is imported. You might want to try some different options and see if you get a better import. I don't think there are a lot of options about handling blocks/symbols.

     

    It sounds like you might be more familiar with AC. In which case you might be better off doing an EXPLODE on the drawing prior to doing the import. That should get rid of all the blocks/symbols also.

     

    As always, work on a copy and not the only original of the file. Most of what I have suggested is destructive to the file.

     

    • Like 2
  12. Space.Volume and Space.GrossVolume should return numbers.  Space.11_Volume returns a string.

     

    No there is not a good way to edit the record format. You can go to Tools:PlugIns:PlugIn Manager and view the record format and even change the field names and defaults, but the next time NNA updates the program and edits the space object you will lose all your changes and have to make them again. If you need more stuff, you are better off attaching a second Custom Record format.

     

    This thread has a script that will show you all of the fields in a PIO record and their types. I linked to the latest version, but you probably should scan the thread to see how to use the script.

     

     

  13. That probably means that the area and volume are defined as Strings instead of numbers.

     

    I don't have time to check the record format right now. Take a close look and see if there is an alternate version (maybe something like 11_Volume) that is formatted as a number/dimension instead of text.

  14. Not a really good list. I guess someone should make one.

     

    There are three ways to bring data into a worksheet. You can use the normal worksheet functions. You can use the Record.Field syntax.  Both of these are available to choose from the database header row.

     

    The third way is the use the function that are part of the Criteria. You can use the Insert Criteria menu item to get something close that will show you the "abbreviations" for a given criteria. They are listed in the Vectorscript Appendix also.

    • Like 1
  15. What happens if you put the symbol in a different file and run the report. Is it off there also?  If it is, can you post that sample file and we can take a look.

     

    If the symbol reports correctly in the other file, then there is something off in your file. Have you double checked your user origin?

  16. Hi Scott,

     

    What version of VW are you running? The interface changed a little for VW2018. You can still do it in earlier versions, just in a different fashion.

     

    It looks like you are in VW2017 or earlier.  Select a Row in the database and then drag the "tile" (button) that says SUM to the Column Header (A, B, C, ...) of the column that you want to Summarize.  The other tiles work similarly but for sorting ascending/descending.

     

     

     

     

  17. Holding down the Shift key while you click on objects will either add or remove them from the current selection.

     

    Once you have the objects you want selected, Modify menu, Group will make a group out of them.

     

    You can edit the objects in the group by using Modify:Edit Group to enter the group. There is an option in the Preference to show objects that are not in the group to to hide objects that are not in the group. Click the Exit Group button at the top right of the window to get back to the drawing.

     

    If you have an object you need to add into a group, you can CUT the object from the layer, EDIT the group and then PASTE IN PLACE to get it into the group in the same relative location.

     

     

    • Like 1
×
×
  • Create New...