Jump to content

JBenghiat

Member
  • Posts

    2,031
  • Joined

  • Last visited

Posts posted by JBenghiat

  1. On 9/10/2022 at 10:35 AM, Hippocode said:

    Try this: gSDK->EditObjectSpecial(hObject, kObjXPropSpecialEditEditGroup);
     

    That would get me into the profile group, but I want to get the properties of a render light in the profile group without the user seeing the other stuff I store there. Basically the equivalent of right-clicking on the light in Visualization and choosing edit. So far, I get the entire plug-in in the properties dialog, not the object passed to EditObjectSpecial.

  2. EditObjectSpecial() appears in both ISDK and VS. 

     

    I was hoping it would let me edit an object in a profile group, but unfortunately, it always shows the parent object of the passed handle.

  3. @klinzey @mjm @scottparker An inherent issue with cell numbers is that they traditionally follow unit number rules, which are respect to SL

    and plaster, while VW cell order remains constant with respect to the fixture’s origin, with no regard to orientation. 
    There needs to be some discussion on cell order standards. There likely need to be an OIP toggle to reverse the cell order, as well as selection highlight of the active cell. 

  4. 6 minutes ago, mjm said:

    @JBenghiatSuper. Thanks ever so. Assuming I can do that to the symbol in current use

     

    Yes — and if you've numbers with Savvy, you should immediately see the numbers in the correct order.

    I'm also going be memory here — I believe cells order is front to back, but there's always a chance I have that backwards.

  5. 11 minutes ago, mjm said:

    Numbering issues there as well. Is it possible for me to somehow re-build the multicell fixtures myself so they number correctly?

    Yes — just edit the symbol and use Send Forward/Send back until the cells are in the right order. Usually, I select cells in order (starting with 1) and Send to Back.

  6. 4 hours ago, mjm said:

    Also gonna throw a shoutout to the poor results from the Spotlight auto-numbering tool. I have attached two Screenshots, one shows the SL autonumbering of two multicell positions, the other show numbering through @JBenghiat's Savvy Sequencer. Couple things of note:

    • Let's note how much actual paid work is getting done here 
    • the SL fixtures are all fresh from the VW RM. No editing by me.
    • the Hanging Positions show in OIP as HPs.

     

     

    @mjm FYI, Savvy Sequencer and Select Similar use the cell numbers for multi-circuit numbering. The cell order is determined by the stacking order in the MC symbol. You should see A1 align with the channel and color for cell one, for example.

     

    If these directly from the content library, then there is a bug that the cells are not in the correct stacking order.

    • Like 1
  7. VW will recognize aliases/shortcuts for both plug-in files and resource libraries. Keep the originals in your development folder and link into your user folder. 
    Also, include files can reside anywhere on your system, which is where git really becomes useful. 

  8. The Spotlight Numbering tool will do what you describe.

     

    Savvy Sequencer and Savvy Select Similar Instrument have some additional numbering features, but can only target one field at a time:

    https://benghiatlighting.com/software/product/savvy-sequencer-2/

    https://benghiatlighting.com/software/product/savvy-select-similar-instrument-3/

     

    The first version of Savvy Sequencer was in VS, and there's quite a bit to take into account to do this properly, both in terms of resetting Lighting Devices, dealing with cells and accessories, and providing for multi-dimensional sorting.

  9. 1 hour ago, JHangstoerfer said:

    VWViewObj only is for temporary saved views like when you want to change camera, layers and then restore to how it was previously afterwards. For creating a saved view that shows up in the navigation palette there is ISDK::CreateSavedViewWithUI or the python/vss SaveSheet. To modify a saved view you also need to use the ISDK calls directly as VWViewObj operates on a duplicate.

     

    It looks like the saved view is actually a script with a view object attached. Untested, but in theory:

    - Use ISDK::CreateScriptResource to create a new script in the "Saved Views" palette. The name of the script is the name of the view.

    - Use VWViewObj to create the view

    - Set the parent of the view object to the aux list of the script object

  10. If that didn't work, then there isn't a way to suppress the NURBS vertex info. Are you copying the path from the path group? If so, then as an alternative you can iterate over the path and use the vertex locations to draw a new NURBS curve in your object code. That way it really doesn't matter if someone changes the degree.

     

    I think the only other option would be to make the object a point object and use a custom tool to define the path (point objects can still have a path and profile group). In this solution you loose an easy way to edit the path, though.

  11. All the elements have to be connected like a tree. So the first label would have a horizontal connection to the edit box and a vertical connection to the next label. 
     

    You can also preview the dialog from within DB, via a mode bar button when you have the edit tool selected. The code generated for the preview should be very close to what gets exported, with the exception that the preview includes a handler and the ability to show sample data. 
     

    You should be able to do 100% of your interface coding via DB, so that no hand coding is involved. The only thing it will not code is the handler. 

  12. On 6/6/2022 at 12:05 PM, Mark Aceto said:

    is there a way to control visibility of the slide template thingy with classing or in Viewport settings or would that be a feature request?

     

    It's necessary for rendering, so it shows any time you're projecting the image. In order to get a projection in Vectorworks you have to simulate a slide that the light shines through. If you make the image too small, you start to lose resolution. I realize that the image appearing in the line renders is less that ideal, but I'm not aware of a way for objects to hide for one render style only. I fear that if I allowed it to be classed, to many people would have issues with the image not projecting properly.

     

    You can link ProjectinViz to a Video Screen object for your object visualization, though I'm not sure if VS handles rotating the 3D component of the projector in the same way.

    • Like 1
  13. 13 hours ago, Mark Aceto said:

    In this analogy, I want to click on the center of the rectangle, and drag it. Or rotate it.

     

    I've been locking Plan Distance but that isn't always the best option.

     

    I've been locking Throw as a substitute for Plan Distance but that's not always the best option either.

     

    If you want to maintain the relationship between the image and projector, either of those locks will work. The best one depends on how you want the object to reshape when you enter other parameters (throw, tilt, focus height, etc). If you're not changing other parameters, there's not any benefit of one over the other.

     

    You'll need to update to the version released today for rotation on groups, multiple projectors, or the rotation tool to work as expected.

    • Like 1
  14. Here's an analogy relating to how locks work, which will hopefully clarify why "unlock all" isn't an option.

     

    The locks are like anchors in the standard 2D geometric shapes. For example, when you select a Rectangle, Obj Info shows a little widget with nine possible anchor points. You must have one of these selected, otherwise if you change the Width or Height fields, the location of the new geometry would be unpredictable. These anchor points do not come into play if you drag one of the rectangle's reshape control points, as you are explicitly indicating how you want the object to reshape.

     

    Now let's say that Area was not a read-only field. In order for Area to work in a predictable way, we would need a way to choose how the object reshapes to the new area: maintain the Width, maintain the Height, or maintain the Ratio.

     

    The locks in ProjectionViz and BeamViz accomplish the same thing: they allow you to accurately predict how changing a parameter will change the object's geometry. You just have a more complex set of parameters that design the shape of the object, as well as features that help you work through real-world scenarios (e.g. you know where your image plane will be, and you need to move the projector around to find the ideal location).

    • Like 2
×
×
  • Create New...