Jump to content

klinzey

Vectorworks, Inc Employee
  • Posts

    2,796
  • Joined

  • Last visited

Posts posted by klinzey

  1. Uninstall is now done via the Vectorworks Install Manager located in the Vectorworks Application folder.
    Once launched, from the hamburger menu in the upper right hand corner you can choose uninstall, but you might try the repair option first.

  2. Yes, it required the object to be event enabled and in the kObjOnInitXPropertiesSetObjPropVS event:
    kObjOnInitXPropertiesSetObjPropVS( kObjXIs2DSurfaceEligable {= 14} , TRUE); { Weiler operations operate on 2D path }

    You can take a look here for more information on setting up your plug-in to be event enabled.

  3. You can move the labels so they don't overlap but other than that not really, It's the nature of 3D text.
    You can apply a data tag to each lighting device. This would allow you to better control the location in 3D to place the tag in front of the light.
     

     

    • Like 1
  4. I took a look at your file and I don't see any label legends in the document?
    I made one quickly to test and I think the issue will be clear when you look at the drawing in an isometric view. 

    In 3D you can't manually control the stacking order, the stacking order is determined by the location in 3D space.
    Text is place on a 3D plane based on the origin of the lighting device so it will be behind the body of the other lights.

    Screenshot 2025-06-09 at 5.49.10 PM.png

  5. The worksheet name is not modifiable. It is the internal name used by Vectorworks.
    Once the field is created that name needs to be maintained.

    What I would do is create the new field.
    Use Spotlight Find and Modify to copy the data from the old field to the new field.
    Delete the old field.
    It should be a quick operation but requires a few steps.
     

  6. Yes, I ran into the same issue.
    It's not documented but try using {$IFX ...} rather than {$IF ...}
    It was implemented for 2025 but I don't know if it was ever fully tested.

    Additionally,  {$IFX ...} would not function in older versions so it probably would not help in your case because 2024 and prior would not understand the {$IFX ...} directive.

    You can try conditionally include functions with matching parameters.
    I can't remember if this worked or not when I tried it years ago. The functions do nothing but would allow the compiler to resolve the names but because of the if statement would never be accessed.

  7. @Arleta PDF editing is restricted in the student version to prevent the removal of the educational watermark. Opening the PDF for editing is not permitted, but you should be able to combine the PDF into another document. Indesign is likely trying to open the PDF for editing.

    I'm not sure why you are having issues exporting to DWG, Exporting to DWG is allowed in the student version.

  8. I gave the script a quick look and it looks like you are storing the path in the dialog control and no where else?

    In your Dialog_Handler procedure you need to react to the events that happen in the dialog.
    https://github.com/Vectorworks/developer-scripting/blob/main/VectorScript/pages/Creating a Custom Dialog Box.md#handling-dialog-box-events
    In your case when the user clicks the OK button you need to get the values you stored in the dialog and save them somewhere.
    The values in the dialog are only available while the dialog is open.

    You can either assign then the a variable in the scope of the main object and/or the paths as parameters of the plugin object.
    If you store the values as parameters of the plugin object they will be available the next time the object is reset.
    https://github.com/Vectorworks/developer-scripting/blob/main/VectorScript/pages/Plug-in Parameter Types.md

    If you want to have the object reset automatically when moved you will need to enable the property in the plugin editor for the script.
    https://github.com/Vectorworks/developer-scripting/blob/main/VectorScript/pages/Object Events.md#enable-script-specified-events

    • Like 1
  9. @BillW That parameter type is a little deceiving, it's only used to store the Material value, you need to use other mechanisms, such as a dialog, to set/get the value.
    The same thing applies to the other types like Symbol Definition etc.
    These parameters are usually hidden in the OIP and managed by the plug-in.

    These types are used to make sure the Material, Symbol, and other resource types, do not get purged, will be copied to a new document, follow name changes tracked, etc.
    For Materials you will usually use this if your object needs to support more than 1 Material.

    If you simply want your object to support Materials like the Rectangle, you need to enable the extended property in the script.
    ...
    kObjXPropSupportBuildingMaterialInOIP = 86;
    ...
    vsoGetEventInfo(theEvent, theButton);
        CASE theEvent OF
            kObjOnInitXProperties:
                BEGIN
                 bool := SetObjPropVS(kObjXPropSupportBuildingMaterialInOIP, TRUE );
    ...
    (I haven't tested this portion but that is how it should work.)

  10. 9 hours ago, LMorga said:

    There is no way to adjust the internal or user z origin.

    @LMorga is correct but there was a bug there moving the XY origin would effect the how the Trim Height is reported.
    Your method of copy and pasting into a new file likely fixed the problem because the user origin was not moved in the new file.

    • Like 1
×
×
  • Create New...