Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

371 Spectacular

About JBenghiat

  • Rank
    1000 Club

Personal Information

  • Homepage
  • Location
    United States

Recent Profile Visitors

4,665 profile views
  1. You can use https://developer.vectorworks.net/index.php/VS:OLDMassRealToStr and the other similar commands. Anywhere the mass gets stored, the units are in grams.
  2. Data gets stored in a field called WeightDouble, though it's always in grams, so you have to remember to convert the result to whatever your document units may be.
  3. What render mode are you using? Custom Renderworks has an option whether to render shadows. Do you have a texture applied to the objects receiving light?
  4. Are you looking at the drawing of the actual projector or visualizing the image? For the video screen tool, you can select an aspect ratio that is inverted, for example 9:16 is an option. For the projector symbol, you have to separately swap it out with one where the projector is oriented on its side. The standard library has side versions for all the projectors. I offer a plug-in called ProjectionViz that focuses more on planning and image visualization than the physical screen and projector. You can set the projector to any rotation along its axis, and parameters like lens shift function as they would in real life. If you display a projector at the projection cone, the symbol will rotate in 3D along with the image, though the 2D representation does not change. https://benghiatlighting.com/software/products/pv-1
  5. Yes Assuming you would want the breaker ID to apply to all cells in a multi-cell, yes. I’m actually not sure what would happen if you have discrete data in Beaker ID and then call SetRField. Yes. Using a cell index of -1 and 0 is effectively the same for a one cell lighting device. Yes No idea, but it’s from 2019, so not relevant to the data discussion. I think it relates to your next question. No idea what this does, but Layout is a dialog ID and Control is an item in the dialog. My guess is this fills a symbol resource picker with eligible lighting device symbols and selects SymbolName. Anything in the edit mode is just there for editing. I can’t remember if the accessory objects are PIOs or if the objects just have a special object info display (like text in Data Tags or Title Blocks). The edit objects get created at edit time, and then the data, location, and orientation write back to the Lighting Device on exit.
  6. There’s a bug where if any of the component symbols (L, C, R) include a symbol, label legends don’t place correctly. Otherwise, you should see a label legend at the insertion point for each of the component symbols.
  7. For 2021, there is no separate accessory object. There are objects that represent the accessory geometry, but the data stores in a data structure attached to the lighting device. So there really is no handle to an accessory any more. The new function call looks at the data structure attached to the lighting device and retrieves data by cell index, accessory index, and field name. If you want to see which fields can hold discrete data for cells and accessories, open Spotlight preferences and look at the parameter list. The two right columns of check marks show which data can be discrete.
  8. You almost answered your own question. https://developer.vectorworks.net/index.php/VS:GetFileN
  9. See https://developer.vectorworks.net/index.php/VS:BuildResourceListN and https://developer.vectorworks.net/index.php/VS:BuildResourceListN2
  10. The problem is that when you remove choices, each removal changes the list. For example, if you have n choices, removing choice 0, you now have n-1 choices. Removing choice 1, you have n-2 choices, etc. About half way through the range, you'll be trying to remove choices that don't exist. Two options: You can remove items from last to first, which preserves the list as you remove options. You can remove choice 0 n times. That essentially pops the front choice off the list until the length of the list is zero. Separately, any actions in python, even if they are illegal, should produce an error message and not crash Vectorworks. I recommend also reporting this as a bug.
  11. You’re thinking of a regex string, which still needs a function call in python. Do a web search for python strings. You should be able to find a substring call. I believe the keyword “in” will work as well (“BST” in outValue).
  12. You can use the imp module to force externals to re-import. See here:
  13. Is there a way to tell if a plug-in object is rotating based on input in the OIP rotation field as opposed to rotation via a tool or menu command? Other than setting kObjXPropDontShowZRotation to true and manually adding an angle widget that gets actively managed in the shape pane provider.
  14. The arc-type vertex is based on a radius and a tangent point. As long as both segments share an end point, they should be tangent. Otherwise… maths. https://developer.vectorworks.net/index.php/VS:ArcTo
  15. You can think of the knot as the point where the mathematical function defining the curve changes (that would be the non-uniform part of Non-Uniform Rational Basis Spline). I think your best option is to create the arc via a 2D arc method, and then convert to NURBS.


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