Jump to content

Marissa Farrell

Marionette Maven
  • Content Count

    1,250
  • Joined

  • Last visited

Posts posted by Marissa Farrell


  1. 15 minutes ago, zoomer said:

    Just opened VW by a File from Explorer,

    - empty OpenGl 3D view

    - yellow rulers

    - just a single 12345e52637 number instead of ruler scale

     

    Last time I ran into this, it was a corrupt file.

    Can you send me that file privately?


  2. You could create a script in your Resource Manager (set the language to Python Script from the drop down) and place this code in it:

    def ResetThem(h):
    	vs.ResetObject(h)
    
    vs.ForEachObject( ResetThem, "SEL = True" );

    This script will reset all selected objects.

     

    Another option is to create a set of scripts that reset objects based on criteria, for example, the following script will reset all Space objects:

    def ResetThem(h):
    	vs.ResetObject(h)
    
    vs.ForEachObject( ResetThem, "((PON='Space'))" )

     

    You can also add these scripts as menu commands using the Plug In Manager.

    • Like 1

  3. Here's my progress so far -

    The Focus Points no longer end up in a nested group, though the LDs are still selected. I tried using the Set Selection node, but unfortunately that's not working for some reason (looking into it). This also fixes the issue where they are not immediately selectable.

    I did filter at the beginning of your network so that only LDs are queried, you/we may need to adjust the criteria for filtering because I'm not positive that my criteria is always true (I don't often look at the records of LDs.)

    I'm also going to look into some error handling for the naming, as I've mentioned above.

    FP_Generator_V1_MFarrell.vwx


  4. I'm looking at this now and trying to diagnose some of your issues, but I wanted to make a quick note about when you're naming your Focus Points.

    If you re-run this network without deleting the focus points created on the last run, the names of these objects may end up incorrect (they will be incremented by one)

    I would suggest doing some handling for this because the lighting devices may end up pointing to the wrong FP after this happens (at least it did in my testing).

     

    I'm not sure why these objects are being created in a group/unable to be selected immediately after this brief examination, but hopefully I can figure it out.

     

    I've also begun adding filtering after your Objs by Criteria node to sort out objects that are actually lighting devices rather than allowing focus points to also be queried. I'll share my revisions once I make more sense of your other issues.


  5. There's not currently a way to automate the running of individual networks in a particular order, my suggestion would be to connect these networks together, possibly with pass nodes. 

    I'll try to mock something up once I find some free time as an example.


  6. I am going to say yes, but the time to produce something like this will vary based on how complex the objects are/how they are being defined/etc.

     

    Do you have an example of the outcome you're hoping for with variations?


  7. Here's a short network that returns these values.

    Often, values for Parametric Objects are stored in hidden records - this demonstrates how to extract the ones you've asked for.

    Record fields are returned as strings (text), so they will need to be converted to numbers if you plan to use them elsewhere.

     

    If you want to assign values to the object, you would instead use the Set Record Field node.

     

     

    Marionette_ReturnColumnInfo_MFarrell.vwx

    • Like 1

  8. @Thomas Gillioz

    In 2019, the Objects by Criteria node has a button below it allowing you to define the Criteria using a dialog.

    When I placed a column in my document and used that button, I was given

    ((PON='Column2'))

    as my criteria.

    If you are not seeing the button in the Object Info Palette with the Objs by Crit node selected, please replace the existing node with a new one from default content.

     

    Screen Shot 2019-03-11 at 10.12.02 AM.png


  9. If you're referring to a tool in a tool palette, you can sometimes click-hold on it to see other tools. (The tools with other items "sitting" below them are identified with an arrow indicator - tools named by text will have an arrow pointing right at the end of the text, tools with just an icon will have an arrow in the lower-right corner.)


  10. Here's the beginning of my trapezoid node - there is no error handling in this version, so you may end up with results you don't want if your dimensions aren't reasonable.

     

    My later improvements list:

    • Allow orientation defined in the node
    • Allow an origin point
    • Allow user to flip which side is shorter
    • Allow user to define an angle for the trapezoid

    Marionette_trapezoid_MFarrell.vwx

    Screen Shot 2019-03-07 at 11.29.31 AM.png

    • Like 1

  11. Well I took a look at this - and here is my finding 🙂

    It is indeed related to our fix for the Rotate node.

    The description has always read that the objects will be rotated around their center point if there was no point attached to "cent" (or what is now called "pCent")

    As you can tell, the old node from your top network is not following that requirement, it is still rotating about the point (0,0).

    Our fixed node correctly rotates the objects around their individual center points, as you can see in your lower network.

    The fix is to add a Point3 node with the coordinates (0,0,0). (Unfortunately, it looks like a bug remains when using a Point2 node, so I'll file a bug and try to get that fixed.)

    Screen Shot 2019-03-06 at 1.08.33 PM.png

    • Like 1

  12. @Chuck Davidson

    Most of the nodes will have no difference for code behavior between 2016 and 2019; the port naming is just a cosmetic change. My best guess prior to debugging this is the Rotate node, that node had a bug at one point that we fixed between these versions.

    I'll take a deeper look and get back to you.

    • Like 1

  13. Maybe this will help - you need to use "random.randrange(value)"

     

    import random
    
    size = 50
    posX = 0
    posY = 0
    steps = 100
    
    for i in range(steps):
        vs.Rect(posX, posY, posX + size, posY + size)
        r = random.randrange(4) #corrected to include namespace
        if r == 0:
            posX += size
            posY += size
        if r == 1:
            posX -= size
            posY += size
        if r == 2:
            posX -= size
            posY -= size
        if r == 3:
            posX += size
            posY -= size
    • Like 1

  14. Here's where I'm sitting right now. The Set Record Field node is reporting that it was successful, but the field in the record isn't being updated on trusses in the Hanging Positions.

    I tried making duplicates of the trusses and putting them back into the hanging position without success, this is not shown in my file, (though when I do make copies and they appear on the Design Layer, the fields DO update appropriately) so it's really an issue of 'why can't I get this value to push to the object in this container?'

     

    I asked some coworkers at the office today and didn't find anyone who could help immediately, but I'll try some more next week and see if someone else has some intel.

    HPMarionette_MFarrell.vwx

 

7150 Riverwood Drive, Columbia, Maryland 21046, USA   |   Contact Us:   410-290-5114

 

© 2018 Vectorworks, Inc. All Rights Reserved. Vectorworks, Inc. is part of the Nemetschek Group.

×
×
  • Create New...