Jump to content

Jayme McColgan

Member
  • Posts

    196
  • Joined

  • Last visited

Everything posted by Jayme McColgan

  1. sorry shot that one off quickly with no good context... lol when a user updates a field in OIP, is it possible to see what field they updated before jumping into the ResetEvent flow where it redraws everything?
  2. hey everyone, is it possible to know which field is being updated in Object Info tab?
  3. because we mostly do shows in ballrooms, if we are doing spanner truss its probably connected directly to the truss below it and not using any drop down motors. i guess for the sake of running weights i could fake it and add a drop motor to get the weights and then put it back before sending it off for approval.
  4. bumping this again before i start asking the VW guys.
  5. i need some guidance on understanding how the influence lines work. I'm trying to determine if the Center Point Loads on my spanner trusses are too much but the truss website gives me a lbs rating but Braceworks uses lbf-ft for everything.
  6. I got a 2 part question on dealing with linked text. i built a dialog that shows a symbol that has linked text on it using vs.CreateSymbolDisplayControl() i would like to fill out that linked text in the symbol thats being displayed in the dialog box. is that possible? then after I'm done in the dialog, the plugin drops that symbol into the drawing and i want to be able to manipulate the linked text (sizing, style, etc)... is it possible to inset a symbol (with linked text) into a drawing, then dive into that symbol and get access to the text thats in it?
  7. omg that worked... lol man that really should be a note on the VS reference page for vs.RemoveChoice() lol
  8. hey everyone, I'm having some trouble in my dialog with populating a dropdown based on another dropdown. i can't figure out how to properly clear the list and repopulate it with the new data... it always seems to leave behind something from the previous list. i've tried various combination of vs.SelectChoice(), vs.RemoveChoice(), and vs.AddChoice(). here's my current iteration... def Dialog_Handler4(item ,data): if item == 33: for i in range(vs.GetChoiceCount(dialog1, 36)): vs.RemoveChoice(dialog1, 36, i) for j in range(len(formattted_labels[data][2])): vs.AddChoice(dialog1, 36, formattted_labels[data][2][j], j)
  9. heres another take on how i insert lighting devices for a stage wash plugin i built.... def placelights(): cur_lights = [] vs.Symbol(symbolName, x, y, -22.5) last = vs.LNewObj() vs.Move3DObj(last, 0, 0, z_location - 3) vs.ResetObject(last) cur_lights.append(last) vs.DSelectAll() for i in range(len(cur_lights)): vs.DSelectAll() vs.SetSelect(cur_lights[i]) vs.DoMenuTextByName('Convert To Instrument',0) although i didn't know vs.ApplyLightInfoRecord() existed at the time. lol
  10. everything i go into 3D mode it takes forever because its "Caching Graphics"... does this need to happen every time even if nothing has changed? is there a setting I'm missing?
  11. well i'll have to mess around with that when i get some more time. couldn't really come up with a script that would dive deep enough to the point of adding a .VSO to a pallet.
  12. is it possible to add a point object plugin to an existing tool set? i was messing around with vs.ws2GetMenusCnt() and all them but gave up after not understanding how to use them.
  13. yeah i've been trying that but when i go to print the sizing is all messed up and based on the print paper size not but the size i set with SetDrawingRect()... i guess back to banging my head against the wall trying different ways. lol
  14. i got that setup already, but how do i choose that custom page size with my script.
  15. after creating a new sheet layer, id like to change the paper size. normally this is done by Page Setup > Printer Setup > Paper Size. ideally id like to select a custom paper size or create a custom paper size. anyway of doing this?
  16. I'm new to braceworks so bare with me.... I'm trying to hand a projection screen and keep getting an error of "The load is part of a hanging position, but cannot be assigned to a structural element." not sure how to fix this i also seem to be getting this when same error when using the cable tool that has cable dropping to the ground off the truss.
  17. the one of the outdoor stage with the white background? thats shaded?!
  18. there seems to be guru for just about every micro topic here, which is awesome! who's the person thats the wizard at braceworks? we finally got braceworks and i have some questions about integrating some of my plugins with it.
  19. hey yall, I'm gonna start here and might move this to the bracework forum if its better there... an i attach a custom PIO to a truss system and have it carry weight? if so what do i need to add to my PIO for this to work? and also can can i attach custom symbols to a truss system? you know when you hover over a truss and you get the red line and such.
  20. when i run a menu command plugin is it possible to sort selected objects by the order they were selected in?
  21. yeah I'm not sure where it pulled these endpoints from. is there another "external" API for vectorworks?
  22. i was bored on a show so i decided to ask the ChatGPT from OpenAI to "build a python Vectorworks plugin that horizontally distributes all the selected items evenly" and this is what it spit out. interesting. # Import the Vectorworks Python API import Vectorworks as vw # Import the VWObjects module from Vectorworks.VWObjects import * # Define the plug-in class class CExamplePlugin: # Called when the plug-in is loaded def Load(self): # Get the selected objects selectedObjects = vw.selection.GetAllObjects() # Calculate the total width of the selected objects totalWidth = 0 for obj in selectedObjects: bounds = obj.GetBounds() totalWidth += bounds.GetRight() - bounds.GetLeft() # Calculate the space between the objects space = (totalWidth / len(selectedObjects)) - totalWidth # Distribute the objects horizontally for obj in selectedObjects: bounds = obj.GetBounds() obj.SetBounds(bounds.GetLeft() + space, bounds.GetTop(), bounds.GetRight() + space, bounds.GetBottom()) # Called when the plug-in is unloaded def Unload(self): # Clean up resources here pass # Create an instance of the plug-in class plugIn = CExamplePlugin()
  23. well thats a damn shame. ill post back here if i come up with some sort of workaround or solution.
×
×
  • Create New...