Jump to content

Samuel Derenboim

Member
  • Posts

    476
  • Joined

  • Last visited

Posts posted by Samuel Derenboim

  1. I wrote the nested script in a matter of minutes once i figured out that i have to create a reference name for the zone name in the conditional statement...

    I'm thinking of just using an excel script to create a script for me that includes the maximum amount of zones the building house in one story. Turns out, it works on multiple stories !! I'm thinking about how i can do this in a simple manner and... will this crash VW?

     

    attached file below.

     

    Also, do you know if referencing the object name (=N) with a record using the datamanager would eliminate all these complications?

     

    count by zone nested-working.vwx

  2. yes, creating several database tables is possible for each zone. I thought it would be easier putting this in the criteria of the database, however, it isolates zones from the light fixtures in the space. So yes, the only other choice is to create a separate database for every zone, and thats only for one story. if i wanted to include a worksheet with all stories, and they had a different number of zones, thats when the worksheet will get a bit cumbersome to read as some stories that have less zones would return a blank record (unless database tables would be specified for every zone, and every floor).

     

    right now im working on a 5 story, 80 thousand square foot building, approximately 6-7 tenant spaces per story, and probably upwards of 5-6 lighting zones per tenant. it would be easier to match the name record between light fixtures and zones than to do it this way. or not use LOC altogether unfortunately.

     

    file attached is my second attempt. I tried to list all zones in one database row, and reference them for the zones and light fixtures in another. It separates the rows and the zones in the database row in the 1st one.

    count by zone test2.vwx

  3. I can see what you mean. With lighting you can have 10-20 zones easy (if i were to use the criteria energy code for example) per story, which is why i wanted to use a nested value rather than sorting it by different columns. Same goes for other criteria i wanted to list for 'building code' objects that would be located in separate tenant spaces. Those criteria can also exceed 20 objects per LOC....

     

    the way i wanted to get around it was to create a zone that didn't have anything in it and say LOC<>'Zone 3' to include all objects in all other zones, but alas it still reports an incorrect number.

     

    I'm guessing the script is the only other way to go? or to create a separate database table for each zone....which is also cumbersome

  4. regarding LOC='' in worksheets - the function only allows me to select one zone by name in the criteria selection, not all of them. Is there a criteria that can include all objects that have a record, and then print out all objects within them?

     

    i've tried multiple variable condition (if) statements without success. i've included a sample file with lighting zones with object names as Zone 1, 2, & 3, but the count reports the incorrect number of fixtures in each after moving them around.

    count by zone test1.vwx

  5. The areas there the most of my concern were the areas of the walls, the fact that they were on the energos worksheet, the R values seen, and the correct orientation is shown.

    The particular energos record for this is the 'energos wall' record, or 'energos window' record / energos 'door' record. The records for calling out wall areas to match that shown is wallareagross / wallareanet. However, i think it has a few bugs :

     

    1. wall orientation record referenced in the worksheet does not match the record of the object. It returns numbers instead of orientations. I'm guessing 6, 9, etc... are clock orientations, but i'm not sure. I don't know how 4 - became a 'south' orientation.

    2. Regarding wall area gross / wall area net - it still calculates to the center of the wall rather than to the finishes. in the attached image you will notice that this is true. 8'10 5/8"  x 10' = 88.845 s.f.

     

    I haven't done any experiments for windows or for doors just yet. But this is among my biggest gripes when calculating for wall areas for energy purposes (not wall take-offs).

    P.S. - If you add the width plus the length of the wall multiplied by the height, then you will get the true area value for the outside of the wall. If you subtract the width from  the length and multiplied by the height - you will get the interior side. But there are two problems. :

    1. These numbers can not be used in tags as they are calculated areas rather than being global operations. several global records may needed to be added with the formulas above (maybe this can be avoided if i calculated component areas that are abutting the outside , but i still do not know how to do that yet)

    2. That calculation will not work if two walls are directly abutting each other (capped or uncapped mode) would require 2 conditional statements for i.e. -

    If wall joined in capped mode on both sides : =(LENGTH+WALLTHICKNESS)*WALLOVERALLHEIGHT

    If wall joined in capped mode on one side : =(LENGTH+(WALLTHICKNESS/2))*WALLOVERALLHEIGHT

    If wall not joined in cap mode : =WallAreaGross

     

    Note - both problems can be fixed if using the worksheets - but picking up an error in the callouts might cause major headaches with the buildout or with the building department later.

     

    image.thumb.png.50885a3aa4b8ca1eb334b7a823e17ff4.png

     

     

    image.thumb.png.e3812290cf71acdb5646dfd44ad5b541.png

     

     

    EDIT NOTE:

     

    Is there a conditional format I can use to include or exclude walls that join in capped or uncapped mode?

     

  6. I'm not sure if this is possible in Vectorworks yet, but there are times when I need to count a number of objects/symbols inside the geometrical boundary of another object such as a rectangle or square. My question is - Is something like this possible to do ? Count the number of fixtures inside a geometrical figure and post it into a 'tag' and / or worksheet?

     

     

     

    image.png

  7. Hi Everyone, 

     

    quick question, have a VS script here, taken from a script that calculated occupancy load calculations from a space object using custom fields in the space plugin object. After VW has now transferred alot of the space objects capabilities into regular, geoemetry, I was curious if anyone can help me port a similar functioning script for polygons / rectangle objects. Script (and original author name is below)

     

    I attached a VW that shows some of the information I use in my documents. What I wanted to do is integrate occupancy in these areas, and some building code information. 

     

    Note - The script operates without any errors, but, for some reason it doesn't actually change the record. Maybe someone can be pointed in the right direction from some of the VSwizards out there? (This is a duplicate post from the architectural forum, but I deleted that post, and reposted in here, since I thought it could be more relevant) Thanks in advance!!!

     

    Modified Script (Original Script at the bottom)

     

     

    Procedure MaxOccupancy;
    {Badly scripted by Michael Klaers modified to General Object Areas}

    {November, 2015}
    {© 2015, Small Group, Inc - Michael Klaers michaelk@verysmallgroup.com}
    {Licensed under the GNU Lesser General Public License}

    VAR
        
        recordhand, WSResource, WSImgHand                :    HANDLE;                 
        StringOccRating                                                :    STRING;
        xArea, OccRating                                            :    REAL;
        TruncOccSpace, SqrFeetPerPerson                                :    LONGINT;
        
    PROCEDURE HowManyPeople(recordhand:HANDLE);

    BEGIN  {How Many People}
        
        SqrFeetPerPerson :=Str2Num(GetRField(recordhand,'!Zoning_Area','BC_persons/sf'));
        
        xArea := AreaN((INSYMBOL & INOBJECT & INVIEWPORT & (R IN ['!Zoning_Area'])));
        
        OccRating := xArea/SqrFeetPerPerson;
        
        TruncOccSpace := Trunc(OccRating);
        
        StringOccRating := Num2Str(0,TruncOccSpace);
        
        SetRField(recordhand,'!Zoning_Area','BC_#ofpersons',StringOccRating);

        ResetObject(recordhand);
        
        END;

    BEGIN
        ForEachObject(HowManyPeople, ((INSYMBOL & INOBJECT & INVIEWPORT & (R IN ['!Zoning_Area']))));

        WSResource := GetObject('Zoning Area Summations_Poly');
        WSImgHand :=GetWSImage(WSResource);
        RecalculateWS(WSResource);
        ResetObject(WSImgHand);
        
        END;

    RUN(MaxOccupancy);

     

    Original Script Below 

     

    Procedure MaxOccupancy;
    {Badly scripted by Michael Klaers}

    {November, 2015}
    {© 2015, Small Group, Inc - Michael Klaers michaelk@verysmallgroup.com}
    {Licensed under the GNU Lesser General Public License}

    VAR
        
        SpaceHand, WSResource, WSImgHand        :    HANDLE;                 
        StringOccRating                            :    STRING;
        xArea, OccRating                        :    REAL;
        TruncOccSpace, SqrFeetPerPerson            :    LONGINT;
        
    PROCEDURE HowManyPeople(SpaceHand:HANDLE);

    BEGIN  {How Many People}
        
        SqrFeetPerPerson :=Str2Num(GetRField(SpaceHand,'Space','11_User-Def Info 2'));
        
        xArea := Str2Num(GetRField(SpaceHand,'Space','Area'));
        
        OccRating := xArea/SqrFeetPerPerson;
        
        TruncOccSpace := Trunc(OccRating);
        
        StringOccRating := Num2Str(0,TruncOccSpace);
        
        SetRField( SpaceHand ,'Space','11_User-Def Info 1',StringOccRating);

        ResetObject(SpaceHand);

        END;

    BEGIN
        ForEachObject(HowManyPeople, ((PON='Space')));

        WSResource := GetObject('Space Occupancy Schedule');
        WSImgHand :=GetWSImage(WSResource);
        RecalculateWS(WSResource);
        ResetObject(WSImgHand);
        
        END;


    RUN(MaxOccupancy);

     

     

    Area Test_Poly v2020.vwx

  8. Rob and Wes, thank you very much for the tip. You're right, Unified view is something i didn't know about, unfortunately. It was probably switched off because of what you mentioned Wes, which was the saved views. I remember switching the save different view for each design layer, and that could've been the cause.

     

    Thank you again.

  9. More weird behavior 

     

    image.thumb.png.c5659ec62f4cc402ae019892deab6f76.png

     

    The same file - cannot display a layer based reflected ceiling plan and a BIM plan model at the same time. It is like the BIM plan freezes in place, while the reflected ceiling plan is rotated, panned, zoomed. This isn't a plane based issue because all objects on the reflected ceiling plan are layer based. 

    This also isn't a scale issue either, given that both layers are at 1:48....

     

    Not sure how to react to this. Can anybody offer some assistance?

  10. Not sure if it was an update, or something else, but graphics seem very glitchy / not smooth when panning and rotating a bim model. 

     

    Specs :

    Win10 Pro

    Intel Core i7 5820k @ 3.3 ghz

    32 GB ram - DDR4 2400, 16-16-16-39 CAS

    Graphics - Nvidia GeForce GTX 1070 Ti

     

    Is there a possibility VW might be using CPU for opengl? Although, I thought that this chip didn't have an on-board graphics module. Either way, maybe something I'm doing wrong?

     

    I attached DXdiag Output. 

     

    UPDATE: 

     

    As a test, I referenced the same file in a freshly made document, and the 3d animation is almost flawless. I now understand it's probably the file itself. Are there preferences that might be causing glitchy behavior?

     

     

     

    Thanks in advance!

    DxDiag.txt

  11. Is it me, or are textured hatches not appearing on curtain wall objects? They seem to appear on other wall objects / geometry, but not on curtain walls. Could anyone please confirm?

     

    image.thumb.png.d5b545161cb582d8d459acad909f1b26.png

     

    *Edit, Yea, thought maybe it was a file, but copied an element from the file for a test and it seems to me that it's a bug. 

     

     

    image.thumb.png.7d18711c28b9a295650db7945499d62a.png

    Cwall Hatch Test.vwx

  12. Hi everyone, just curious, is there a reason why 3d locus's cannot be seen in opengl?

     

    and second question is - can a series of locus points be used to create a 3d surface ? does such a tool exist? or would something like that be possible through Marrionette?

  13. Not sure why, but when I publish a fairly large amount of pdf files using the publish command, vectorworks 2020 crashes. This was never an issue before.

     

    Also, texture / hatches are not properly appearing on screen. Perhaps a scaling issue? Can anyone confirm these findings? or is it just me?

     

     

  14. Can someone please confirm - when editing the railing tool - the position feature, when you enter a number into the offset position dialog, it enters the numbers backwards (i.e. when you enter 24, it puts the 4 in front of the 2 making it 42 instead of 24)

     

    image.thumb.png.843e9262907933edbd0906ecc4e239c0.png

     

     

    Also, if you enter the offset position and then modify the length of the railing, it resets the entire tool. 

     

    Could anyone confirm this please?

     

     

  15. Hi everyone, 

     

    So I'm creating a new database for our firm, specifically a model database with proprietary and IFC record formats. I'm using a combination of methods in order to import revit, however, so far the operation seems very successful. There are a few snags however, which is why i'm posting on here.

     

    With different manufacturers, the record formats are also proprietary, and are often different formats. merging them into one can be a hassle. I know that there is a merge record function. However, it is on a one by one basis, which makes it a bit difficult.

     

    The problem is this, when i import revit, it makes duplicate record formats for every model that I import into a file. So let's say for the sake of arguement, I import 15-20 GE light fixtures. Out of those light fixtures I will probably get 8-12 separate record formats that are duplicates for every model. 

     

    Is there a way to mass merge record formats? The reason being - if i delete them, it will ask me to either replace them or delete them outright. Some fields in some fixtures are added, and can be slightly different from record to record - so my question is -

    Is there a function to mass merge record formats? rather than mass delete?

     

    Thank you in advance everyone!

×
×
  • Create New...