Jump to content


  • Posts

  • Joined

  • Last visited


85 Excellent


Personal Information

  • Occupation
  • Homepage
  • Hobbies
    Vectorscript, Python, Objective C developer
  • Location

Recent Profile Visitors

1,929 profile views
  1. I get vs.GetPt() working in an event driven plugin object (VW2022 on MacOS) with this trick: def PickPointCallback(pt): h = vs.PickObject(pt[0], pt[1]) if h != None: resultStatus, parmName, parmHand, parmRecordHand, wallHand = vs.GetCustomObjectInfo() if parmHand != None: #do your things with the picked object #at the end of the callback function call this vs.SetObjPropVS(kObjXHasCustomWidgetVisibilities, True) #plugin event loop theEvent, theButton = vs.vsoGetEventInfo() if theEvent == kObjOnInitXProperties: … elif theEvent == kObjOnAddState: … elif theEvent == kObjOnWidgetPrep: … #then in the button hit event, where the get point is called… elif theEvent == kObjOnObjectUIButtonHit: if theButton == buttonID_2: #set widget visibility to false vs.SetObjPropVS(kObjXHasCustomWidgetVisibilities, False) vs.GetPt( PickPointCallback ) #finally the reset event elif theEvent == kResetEventID: … # Without setting custom widget visibilities, calling vs.GetPt() crashes Vectorworks!
  2. Objects 3D that are constructed within Vectorworks primitive tools (extrusions, extrusions along path, etc.) have full texture controls in the object render pane. This is not true for custom plugin objects that creates parametric 3D objects, as far as I know… Just the texture choice is available… Is there a way to show all the options?
  3. Mouldings Plugin are not developed with the SDK, but in VectorScript (event driven plugin objects). In Vectorscript there is no GetTextureMappingInfoN() function. I am still searching a way to customise the render pane, but until now, I did not found any satisfying solution. I do not know why if you create e 3D object (e.g. a simple extrusion) you get the full options on the object render pane, while if you create a 3D object through a plugin object, the object render pane is limited to the texture popup and texture choices. Somebody knows why?
  4. @ParkerJames have you typed 25 in the price field?
  5. Mouldings Plugins version IV.6 just published on Gumroad® What's new on version IV.6: Version for Vectorworks® 2022 (tested). Added the Mouldings catalog, a pdf file, complete with searchable indexes, that can be consulted and printed for a quick reference of all profiles included in the package. The catalog is available both in A4 and Letter page sizes. Added the ability to choose attributes by class or either override fills and lines with the attribute palette. More complex plugins (frames etc.), where more than just one class is required, will take attributes of their individual parts from their given classes (in OIP see classes popup for each part) unless you choose different fills or lines in the attributes panel. In that case the plugin object attributes will be used for all classes. About textures and renderings, in the OIP rendering tab, choosing: • None: will use the solid color fills as above said • Class Texture: will use each class texture (whenever set) • Texture: selecting a (custom) texture from the ones present in the document, will cause that texture to be applied to the whole parts of the object You can control, as always, some of the texture parameters (scale, rotation etc.) for each part (where available) of the plugin object in the OIP, see texture controls. Thanks to @Andy Broomell and @MarcelP102 for suggesting the point 3
  6. About materials, I am still figuring a way how they would live / interact with classes. I am a little confused at this point... About the other @Andy Broomell suggestions I agree with him. Plugins objects where one class only is required (corner or mouldings on path), are easy to manage: you will be able to set attributes by class or override fills and lines with the attribute palette. The rendering (oip) tab will allow you to set texture to none, class or by one of your choice. More complex plugins (frames etc.), where more than one class is required, will take attributes of their part by their given classes (in oip classes popup for each part) unless you choose different fills or lines in the attributes panel. About the texture, in the rendering tab, choosing none will use the solid color fills in rendering as above said. Using by class, will use each class texture (whenever set), otherwise choosing a texture from the list, will cause that texture to be applied to the whole parts of the object. I am at a good point with these changes, hope to test and finish up them in a short time.
  7. Solved! GetTextureRefN and SetTextureRefN do the trick!
  8. Thank you @K.Lalkovski, I have had confirmation that with the new SP2 the problem has disappeared!
  9. How can I get programmatically the value (in an event driven Plugin Object) of the texture popup in the OIP rendering tab?
  10. It’s not my PC (I am on mac), they gave me these details, hope it’s enough. The build is SP1 2022[27.0.1(619242)] The PC is: Windows Intel64 Family 6 Model 158 Stepping 12, GenuineIntel Windows-10-10.0.22000-SP0 AMD64 10.0.22000 uname_result(system='Windows', node='Asus-ROG-Stix-Z390E', release='10', version='10.0.22000', machine='AMD64') the reported error is the following (issued by the VerifyOrGetLib() function) And after that it comes the alert in my script
  11. Hello @K.Lalkovski, here we are again… still the Marionette.VerifyOrGetLib() does not work on Windows, Vectorworks 2022, importing Pillow module. Here below the code I am using, with the appropriate wheel files. It works on macs (arm or x86), but does not install nothing on Windows. Previously, with Vectorworks 2021, it worked… Can you address me (us) to a fix, even creating a temporary alternative function to the VerifyOrGetLib()? Also I am still getting the same warning (see post dated january 5 in this same thread) after the (correct) module installation on mac. import platform import Marionette arm64 = ('arm64' in platform.machine()) (major, minor, maintenance, platform, buildNum) = vs.GetVersionEx() #vectorworks 2022 has python 3.9.2 if platform == 2: PIL = 'https://files.pythonhosted.org/packages/20/ec/15a263f2c65d71cf62aa767f774c2381077e07beb1e9309a94461ec1cd29/Pillow-8.4.0-cp39-cp39-win_amd64.whl' else: PIL = 'https://files.pythonhosted.org/packages/32/25/32889d2b7c577b5a454dd12194b2ecb9d87d4b49c15c278dc99bc8ff5d2e/Pillow-8.4.0-cp39-cp39-macosx_10_10_x86_64.whl' #for mac M1 if arm64: PIL = 'https://files.pythonhosted.org/packages/7d/88/a59b397f030e131accd4ca5a2ad7f1ac62347e6f4aadbe3dabd329aaded9/Pillow-8.4.0-cp39-cp39-macosx_11_0_arm64.whl' result = Marionette.VerifyOrGetLib('PIL', PIL) if result: vs.AlrtDialog('PIL module is correctly installed:\n', PIL) else: #PIL not installed vs.AlertCritical('Attention!','It has been not possible to install the PIL module.') cc: @tbexon, @DomC
  12. I am still playing with materials. As I have seen, some native objects OIP (extrusions, for example) got an option (checkbox) to choose the use of materials. Once this checkbox is checked, a popup for materials appears to choose from and this overrides the class. Unfortunately there is no way, in the plugin objects parameters list, to get easily this behaviour. I'd have to provide the checkbox, then populate the menu with the document's available materials. In case of objects with more classes (for example the frame plugin), each class needs its own alternative material. I feel that a material menu will be available in the plugin's parameter types soon (as it was for the classes popup), so I am hesitating a while because it needs a bit of an effort… and I do not want to reinvent the wheel.
  13. Hello @Andy Broomell These days I am testing my plugins with Vectorworks 2022 beta, SP0B2 (Build 602031) PRERELEASE (64 bit). About the Mouldings plugins package, simply moving / copying the 2021 files in the corresponding locations in 2022 (and importing your 2021 workspace) it works. Just it takes to manually open and re-save (as 2022) the file in Libraries/Defaults/Moulding - Models/Cornices/MouldingsLib.vwx Pay attention to remove any VWBackup folder that may be eventually created inside Libraries/Defaults/Moulding - Models/Cornices/. As soon as I get a VW2022 final version, I'll provide to upload an update to Gumroad® and let it know to all registered users. Of course, later, I'll explore new functions and possibilities that this new release could allow.
  14. @MarcelP102 About the new material functionality, having to support both 2020 and 2021, I am still sticked with classes. I am studying a way to bridge class to material control, but I am at an early state, though... One profile is one closed polyline (or polygon) and one only. If you want to get, for example a crown moulding composed of two different profiles / materials, you can easily create and save both profiles (.cpf files) sharing the same point of insertion, then create the Mouldings 2D of the first, duplicate and select the second profile / material (material is here meant as class). There are many facilities to manage the mouldings plugins, for example you can start from a 2D path to get a Moulding 2D, or extract a path from a Moulding 2D object. You can even "import" a new path on an existing Moulding object. When you choose a profile (from library or from a saved cps file), the path of the profile is embedded as a symbol in the document. Whenever you modify the symbol in the document, all objects using it, will adopt the changed symbol once they are regenerated. This, of course, does not affect other documents where the same profile is used. Currently only one profile is repeated. You cannot do random stack, but you can create a complex custom profile (made out of three, for example), but you have necessarily to compose them into one (adding a joining surface). Another interesting way is to use wisely the repetition pace, leaving gaps in one siding object, to be filled with another siding object. The use of the offset fields allows to move the starting piece at the right point. In this way you can set different classes for each siding object (though the siding object already takes into account a different class for even and odd pieces). About translations, you are welcome.
  15. I have just updated the Mouldings plugins package (for Vectorworks® 2020 and 2021). https://fitplot.it/vwplugins/mouldings.html Old customers should receive an e-mail to get the update for free. Changelog (version IV.5): The library dialog has been dramatically sped up! Also libraries and symbols are now alphabetically sorted . New library organisation: Basic Profiles folder (containing the mandatory profiles) renamed (previously was named Classic); New England Classic folder now gathers the previously scattered libraries and symbols. 🆕 Lenoble Lumber Mouldings 🆕 Real Cedar (sidings) Updated the script in MouldingsLib to build custom libraries of profiles. Bug fixed in the Sidings plugin. Updated the price (for new users) now starting from €25.
  • Create New...