Jump to content

DomC

Member
  • Posts

    604
  • Joined

  • Last visited

Files posted by DomC

  1. Make Planar Nodes

    Often what is missing to make usable Elements of this geometry is the fact, that
    faces need to be planar to make buildable elements. Also it need to be planar to make
    extrudes and other solids out of it. 
     
    The Two nodes "get Planes" and "ProjectPoints" are a step in this direction.
     
    This example do nearly the same the existing Surface Array already can do. Except it directly
    gets geometry from a subdivision object.
     
    Anyway this has to be seen as a first step trying to model hulls with planar AND closed shapes. Which looks like a very hard task.

    18 downloads

       (0 reviews)

    0 comments

    Updated

  2. Creating nice color schemes

    This Marionette uses a Web-Dialog to create color schemes. The created colors can be imported as colors and textures directly in Vectorworks.

    Instruction:

    1. Run the Network
    2. configure colors
    3. Don't forget to click "save"
    4. close Web Dialog, the Vectorworks fetches the created colors and creates a preview with rectangles.

    Hint:
    right click > Wrap Marionette Network > right click > convert to menu command

     

    62 downloads

       (1 review)

    0 comments

    Updated

  3. Vectorworks to SVGnest direct connection

    This Marionette can be interesting for Laser and cutting jobs. But Mainly it is Study how to use the Vectorworks Web-Dialog to access a Web-Application. The Date is send and reveived over (REST) API. The Exchanged Data is an SVG which is parsed over JSON Formats. Used Engine for Nesting is www.svgnest.com

    for rectangular shapes, use this one:
     
    This Marionette Network is sending all shapes on a layer (or by custom criteria)
    to a Web-App which contains a SVGnest installation and a custom API for Vectorworks
     
    1. Draw a BIN on which you want to NEST the other shapes. Place it topleft of the BIN on your Origin
     
    2. Tested with Layer Scale 1:50, 1:20 mm and BINs of ca. 1-2 meters. It works with all
    Units, sizes and scales but the very first Preview may be very small, cropped or too big.
     
    3. No Holes in polys are supported directly (you can have but nothing would be placed inside)
    But if you draw a smaller shape inside another it is taken as a hole.
     
    4. If ready run the Marionette (You will have to cancel by not saving the result or cancel in
    the dialog after the nesting process)
     
    5. If you have multiple CPU cores it will go much faster. It uses one worker for every core.
     
    6. Click on your BIN, choose the settings button (twice).
    If you define an offset between the parts reduce the curve-tolerance smaller than one. 0.5
    as Example or lower if you see any issues.
     
    7. Press START and wait till parts are placed on the BIN. The Process will calculate infinite and
    try to optimize the result till you click STOP.
     
    8. Press SAVE, wait a sec and then just exit the VW WebBrowser by close or press the Button
    Bottom right to close.
     
    9. Choose Option to move your original shapes on the BIN(s) or a copy
     
    Known Limitations:
    - Some shapes are not converted correctly to SVG maybe. Which is not a big accident because the Application do not import some geometry it keep the original geometry.
    - Complex geometry could take (too) long to nest.
     
    - I take took no control on the nesting process which is processes the NESTING the process
    is powered by https://svgnest.com
     
    Notes:
    You can also use an alternative way:
    1. Export DXF to inkscape and export SVG
    2. Or directly export SVG by https://forum.vectorworks.net/index.php?/topic/78280-export-to-svg-menu-command/
    (The exported SVG from the Marionette is not directly accessable and also the quality and compatibility is just fitted to that one usecase so quality of the Marionette SVG is maybe low compared to the above professional Export-PlugIn)
    3. Import it to SVGnest.com or use their new project DeepNest

    As I mentioned. Primary a study how connect to an even bigger world out from a Marionette. BTW such a connection can be a task nearly as big as the nesting-part itself.

    51 downloads

       (0 reviews)

    0 comments

    Updated

  4. Standard Rooms

    This Script it made for users which have an Vectorworks Architecture but have not the core business to draw walls, slabs and roofs to make a presentation ambient for their designs. It helps to create room situations very fast and especially very easy. 

    1. Concept
    It pulls Symbols out of a Symbol folder which are Room-Presets. As Presets Rooms can exist, that have a rectangular shape and inner dimension of exact 2 meters. Slabs are supported also (No extrudes etc.) and roofs. Best Practice maybe is to keep existing presets and just change classes as example. If we are working with presets we can "save" a lot of parameters in the Object-Info-Palette which makes it faster and easier to use.

    2. Workflow
    Copy Symbolfolder and PlugIn in your project and you can use it immediately. If you want to change details you can ungroup (cmd/ctrl. U) the objects into Walls and slabs. So you are able to insert Windows, Doors or changing other Details.

    3. Known Limitations/Details
    - Rectangular Room presets only
    - Switch on/off ceiling with classes
    - Texturize by classes
    - Changing classes by editing preset Symbols and attach other classes/attributes
    - You can Mirror the Room to get left/right rooms


     

    75 downloads

       (0 reviews)

    1 comment

    Submitted

  5. Worksheet based Popup, push Button

    Generally:
    Popups significantly raises usability of Marionette Scripts. Also for advanced marionette scripters often it is hard to search and enter the values.
     
    Situation Now:
    1. The Popup values has to be written in an input node or the params class of the node, which do just execute if node is edited.
    2. Popups are not dynamically unless the values are calculated by the script  and then the Popup will popup every time the script is running.
     
    What does that Node improve:
    1. The popup values can be directly pulled from a worksheet.
    2. The provided node filters one popup with another popup, which is very efficient for fast filtering and combine choices
     

    Worksheet Popup.mp4

    87 downloads

       (1 review)

    0 comments

    Updated

  6. Record Popups

    Generally:
    In everyday life job is very often reading and writing record fields of user record formats
    and PlugIn objects.
     
    Situation Now:
    1. Marionette users have to know the record name and need a lot of knowledge to get the universal name of PIOs
    2. Marionette users needs to manually find and transfer the field names into string nodes and also have to know a
    workflow to find the universal field names of PlugIns.
    3. copy/paste of the names or writing the values is stressful and often results in type errors.
     
    What does this Nodes improve:
    1. Quick access to record formats, PIO records and field names
    2. See the localized and universal names (if exists) of the fields, returns universal names to the script automatically
    3. Can also be used in combination with "print debug" to show names for editing existing networks without using directly
    the node
    Record Popup.mp4

    64 downloads

       (0 reviews)

    0 comments

    Updated

  7. Name Popup

    About This File
    This Node is similar like the Name-Node. Instead of writing the Name in the Node Infos, you can select the Name from a Popup, wich maybe is a little bit more comfortable. Using the Name input is often used by myself for quick testing, debugging or Stand-alone Scripts. This node helps eliminating errors like writing the name on the wrong field or copy/paste the name on wrong place etc.

    A new innovation implemented, is a visual feedback of the node, which zooms the named object while choosing it in the popup. Which is a very interesting advance to improve user friendliness of Marionette nodes.

    Ideas for further improvements:
    1. Checkbox if zoom or not (not sure, because to many checkboxes decreases usability)
    2. A Pick option to pick an object and auto-naming and inputting with this picked object (Not implemented, because I have not got it to work, that a pick callback runs inside of a Marionette script)
     

    Name Popup.mp4

    46 downloads

       (0 reviews)

    0 comments

    Updated

  8. Page Numbering

    This Document contains two Marionette PlugIns.
    Those PlugIns will simplify the workflow where we have more than one page on one sheet layer.
     
    1. Someone who uses your plans will have an advice if the document of the plan layout are complete.
    2. You can see which page you have to print directly on the layout without counting the pages
     
    This Marionettes supports Normal- and Landscape Format. Where pages are printed in a different order.
     
    Note:
    One Marionette (multi label) puts a label on every page and have to be inserted at the center (info-palette x0 y0 > please do not move).
    The other Marionette (single label) can be putted freely on the layout. It returns the page number of its center point.

    The Multi-Label Marionette, do not support uneven pages like 6.2/2.6

    54 downloads

       (0 reviews)

    0 comments

    Updated

  9. Import pillow 2022

    Unsure on which different OS and how long this will work. I just need it for myself and wanted to share, because I know some of you are waiting for external-library-fix with OSX. For my usecase the issue at the Moment seems to be fixed. Not tested with Windows or other OSX Versions. Runs on my Machine intel Mac Book with Big Sur and Vectorworks 2022 SP1.

    Do not run on Windows yet.
    Feedback what it does on your machines is very welcome.

    52 downloads

       (0 reviews)

    0 comments

    Updated

  10. Extracting Geometry from PIOs or Symbols

    This Script is made to made separate objects from geometry which is nested in PlugIns or Symbols. Those could be uses for special usecases. The Script is criteria and class based. So it would be necessary the nested geomtry is in a seperate class.

    The Script uses 3 Criterias
    1. (left) The Input PIOs or Symbols by a free criteria
    2. (middle) The class which contains the required objects we want to extract
    3. (right) The Criteria for deleting the "debris" of the scripts. Which is selectable by class of the source PIOs/Symbols and deletes everything which are groups inside of this class (it deletes not the source objects, because those are symbols or PlugIns)

    This is also a possible method to ungroup things. Many ungrouping workflows do not work with Marionette, because the ungroup script command does not create handles to the resulting objects. But the group after ungrouping will be in the same class as the source objects. So using classes could be a workaround to catch the results by a second criteria. Not noble, but it works 🙂
     
    Use is on your own risk and in a copy of your project (like always)
    This Script is made for troubleshooting special requirements by resorting geometry for IFC Export.

    93 downloads

       (0 reviews)

    0 comments

    Updated

  11. Wall Component Volumes for Custom pSet

    If NetVolume of Wall components has to be written in a custom pSet (if this is a special requirement), this Network maybe provide a solution.

    Note:
    If you export Base Quantities, you get component volumes exported. Which is the normal-case to export the component quantities.

    What does the Script(s) do:
    1. The first Script creates record fields for every component Name exists in the Document (Walls have to be in the drawing, not just as a style).
    2. The Second Script gets Wall component NetVolumes and writes it in the Record attached to the Wall for every component Name.
    3. So you are able to use the Data-Manager to attach this component informations  to the Wall Body and be able to export is as a Custom pSet to ifc (if this is a requirement in a specific project)

     

    145 downloads

       (0 reviews)

    0 comments

    Submitted

  12. Extrude along Path with Ref point

    The standard behaviour of the extrude along path tool is to center the profile on the path and after creation we are able move it. This works pretty good. If we use the extrude along path node, is is not so easy to move the profile group after creation. This example shows how to do.
    1. Put a 2D locus point in your (blue) symbol as a reference point and put it in the background (cmd/ctrl + B)
    2. the script will measure this point and after creation of the extrude along path it will move the profile group
     
    Specials:
    - A custom node to get the profile group of the path
    - A custom node to reset the extrude along path object after moving profile group

    88 downloads

       (0 reviews)

    0 comments

    Submitted

  13. Wonderful Marionette Door

    More and more projects with a high level of individual control or a high level of geometry detail were created in 3D. The leading modelling and scripting capabilities keeps Vectorworks the best choice for BIM models. We have the best tool to make more than just the standard. 

    This Example shows how to parameterize a "hand design" Geometry of a beautiful Door.
     

    274 downloads

       (1 review)

    0 comments

    Updated

  14. Marionette Object shows Values from an xls

    This Example shows a Marionette Object, which contains a Vectorworks Worksheet.
    By clicking "Update" Button in the OIP, the Marionette pulls automatically the new values out of the linked xls sheet. 

    Short Manual:
    1. Import first The Worksheet in Vectorworks 2021
    2. Create a blue symbol (insert as group) that contains the worksheet
    3. Fill out Worksheet Name, Symbol Name, and File Path (Pick File Node)

    Known Limitations:
    - I see it as a fun-gadget
    - It will not enhance the VW Worksheet if new rows are added in the linked xls. 
    - It will not make the VW Worksheet smaller if rows are deleted from the linked xls.
    - It is based on the import xls from 2021 and it will update just values. No Format etc. will be updated.
     

    550 downloads

       (0 reviews)

    0 comments

    Submitted

  15. creating records from txt or xls

    This Network shows how to create fields from an existing xls or txt file.
     

    219 downloads

       (0 reviews)

    0 comments

    Updated

  16. Get Values from XLS

    "XLS Get Values"is to read Data directly out of a XLS Sheet. 
    The Smaller Nodes "XLS GetSheetNames", "XLS GetSheetInfos" are additional Nodes which are not essentially.
     
    use cases:
    Everywhere you want to get Data out of an XLS File instead a Textfile. 
     
    Special Features:
    1. If file Input is wrong the node will do nothing (no crash 🙂 )
    2. If the sheet name is wrong it will import first sheet
    3. If start/end is empty, it will return the complete sheet.
     

    131 downloads

       (0 reviews)

    1 comment

    Updated

  17. Circular Marionette Stairs

    Three Examples of Marionette PIOs of Circular Stairs.
     

    766 downloads

       (0 reviews)

    2 comments

    Updated

  18. Module Importer for numpy scipy and pillow VW2020

    Importer Nodes for the most used external python packages.
    Tested with VW 2020 SP1, Mojave 10.14.6 and Windows 10

    131 downloads

       (0 reviews)

    3 comments

    Submitted

  19. Marionette Translate Character to Geometry

    A Marionette PlugIn, that collects a custom drawing (font character, picture whatever) and refer it to a regular font character. 
    This "Font" is placed into the control geometry container. Also we could just use a blue symbol.
     
    The Heart of the script is a custom node "create font dict" which manage collecting the control geometry. Also it returns a dictionary sequence data type. A dictionary is very useful if you want to have pairs of data. In this case a character and a drawing group with informations forms a pair. 
     
    Sure, the script could be improved by several things (multi-line, alignment, page based etc. )  But I think it is very useful to have that plug in. Have fun with it. Maybe you can share your own fonts and your wonderful handwriting here. Thanks.
     
    Usecases:
    1. Handwriting Font
    2. Vectorfont (ability to use sketch view)
    3. For Milling Machines
    4. Fast inserting of object sequences
    5. ...
     
    Update v2019
    1. Script Crashed if input Geometry was None (Integrated a script blocker and an Alert Dialog )
    2. Input Dict was always None, because use of an outdated Script command (vs.GetType() instead vs.GetTypeN()). Issue in many other scripts. One of the very rare incompatibilites of Script commands the past Years.
     

    121 downloads

       (1 review)

    0 comments

    Updated

  20. Polygon Survey

    A Node which creates Measure Lines in Polygons (Line from every vetex point to every other vertex point).
     
    1. p2p Lines:
      
     

     
     
     
    2. Perpentidular Lines (Perpentidular Line from every poly vertex on every poly edge):

     

     
     
    To sort out needless lines, there are several filters integrated:
    1. Double Lines automatically filtered with an epsilon (p2p is not the same as perpenticular if you look all 15 digits)
    2. Measure Lines, which are identical with poly edges
    3. Measure Lines, which are outside of the polygon
    4. Overlapping lines. If two lines are parallel and both points of the smaller lines are on the bigger line, the bigger line is filtered
     
    5. Filter Lines over and lower than min max values 
     
    6. An Option, to return a number of length (Return first x values). As example if there are measure lines with the length (1.2, 1.2, 1.25, 1.5,) and the value is 1, two lines with 1.2 will be returned. This value is holding on perpendicular and p2p lines. 
     
    Summary:
    Turn off Debug options like "Show Edge", "show Outside Poly", Filter small length (niches) and set "Return first x values" on 1 or 2 to get optimal results. So a normal result will look like this:
     

     
    Attached there are three examples. An Example with spaces, An examples just with polys and an example as PlugIn. PlugIn is good for playing with the options to see changes prompt.
     
     
     
     
     
     

    72 downloads

       (0 reviews)

    0 comments

    Updated

  21. Class Legend Attributes

    This Network ist not very flexible (world based values, just one row) but still useful.
    You can insert and and ungroup for individual layout etc.
     
    Note!
    1. First delete all classes and replace to "none" or "keine"
    2. copy the object on your file
    3. If you do not delete classes on the original, you will paste the classes from the example in your file

    99 downloads

       (0 reviews)

    4 comments

    Updated

  22. 3D Window with 2D content, wall hole and stone curb

    Example of a 2D/3D Marionette PIO with a Custom Wall hole.
    The Geometry of the Window and the embrasure is based on a symbol. Also the 2D Drawing is based on a symbol. The Geometry is reshaped by the 2D and 3D Reshape node. So the Script itself is relatively slim.
     
    Replace the Geometry with everything else you can draw. Generic solids are recommended. Also you could script some additional geometry for window division while frame is parametrized by reshape node.
     
    This will go on. It took about 2 hours to draw the geometry and 2 hours to parametrize it. Impressive, how quick we can produce PIOs with Marionette based on that workflow.
     

    217 downloads

       (0 reviews)

    0 comments

    Submitted

  23. Menu Command - File Info

    Show Size of the active Document

    69 downloads

       (0 reviews)

    0 comments

    Submitted

  24. Open Folder of current Document v.1.0.0

    This Wrapper contains two Marionette Nodes:
    1. GetActFile -> Returns the Path of the Active Document
    2. OpenDocFolder -> Starts a Subprocess of Finder (Macintosh) or Explorer (Windows) to show a Window from the input Path
     
    Just Test by executing Wrapper. If you like it, add it to your Marionette menu commands.

    93 downloads

       (0 reviews)

    0 comments

    Updated

  25. Menu-Command Distribute horizontal

    If you often have objects like imported pictures or imported PDFs with many objects or pages, this Marionette Menu Command can be handy.
    It aligns objects to the bounding box buttom and stick it together to the bounding box width.
     
     

    123 downloads

       (0 reviews)

    1 comment

    Updated

×
×
  • Create New...