Jump to content
Developer Wiki and Function Reference Links ×

Changing window custom sash options in Marionette

Recommended Posts



I have a project where I have to create about 500 windows with custom sash options (multiple panels, some operable-openable, others fixed). There are reasonable constraints like the operable parts being the same width everywhere. This seems like a perfect place for using Marionette to set all the custom sash options according to some pattern from a record or sth similar.


Is there a way to access the custom sash options of windows inside a marionette script? Looking through all the nodes, I cannot find anything for this purpose. The Vectorscript/Python reference does not give me much either.






Edited by taavilooke
Link to comment

@taavilookeI am thinking the best option is to modify a styled window close to the one you need, and save it as a style.

Keep making different styled ones either new or from the previous one created.

Marionette will only create you a window object and you would need to convert it to a styled window anyways. (Happy to be corrected)

Link to comment

I'll try to explain the situation a bit more:


I have already created all the windows in the model with the correct rough opening sizes. Now I have to specify how they are divided up into panes. Style-wise they are all the same style, just that the dimensions and sash patterns are different. The tricky part is that almost none of the windows will have the same sash-panel patterns. I'm hoping I can specify the sash pattern through some code and then make Marinonette (or vectorscript/python) set the custom sash options for all the windows. Styling all the 500 windows manually will be a headache...

Link to comment

A better option may be to use a worksheet.  You can add columns for the parameters you want to be able to control. Edit the first one and then copy that cell, select all the other cells in the column and Paste.  Kind of works like Fill Down in Excel.


Scripts can work, but you will need to have either one script that changes all of the parameters or multiple scripts for each different parameter. And in order to make a change you will need to edit the script first and then run it. You could put in dialog boxes, but the time you spend writing and editing the scripts is likely to be more than the time to make the changes manually.


Take a look at the following thread to find how to see what formulas you would need in a worksheet.


You probably should read back through the thread to see what the script is supposed to do. Make sure you run the script with a window NOT In Wall as the only selected item in the drawing.

  • Like 1
Link to comment
  • 1 month later...

Sorry for replying so late, I didn't have time to look into it before the summer break.


Thanks Pat, this script worked perfectly. I modified it slightly so that it also displays the current value next the field names and types: https://pastebin.com/Dq0baJmH. It makes it a bit easier to understand which field is which. With these field names it was really easy to create a worksheet that displays and changes all the custom sash options.


For future reference, these fields mostly control the custom sash options:

'Window'.'Cols''Window'.'Rows'  -> the columns and rows

'Window'.'CustSashWdth' & Window'.'CustSashHght'  -> semicolon separated list of widths and heights of the openings between the sashes

Window'.'CustSashOp'  -> semicolon separated list of integers indicating the window opening type

Window'.'CustMullWidth''Window'.'CustMullDepth'  -> mullion dimensions

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...