Jump to content
barkest

Use marionette to create parameters on object

Recommended Posts

Can I use marionette to assign parameters to an existing object?

 

This means size, scale, rotation and also face size

 

Not used marionette before but not fazed if the solution is complex as long as it can do it

 

thank you

Share this post


Link to post

Yes, you can use Marionette for this, but this is the type of thing that I think Vectorscript (VS) is better at than Marionette.

 

Many of the things you have listed above are a single line of code in VS once you get a couple of 10-20 line "wrappers" that you can basically reuse. In Marionette since everything is a node, you end up having to add a lot of extra nodes to do some of these things.

 

It will also depend on more explicitly what you are trying to do. If you want to operate on a single selected object that will be much easier than if you want to operate on multiple objects in the drawing.

 

The Marionette Gurus and I have a friendly ongoing debate about Marionette vs VS.

 

What type of object are you talking about with a Face Size?

 

Give us a little better description of what you want to do and we can offer better recommendations.

  • Like 1

Share this post


Link to post
Posted (edited)
2 hours ago, Pat Stanford said:

Yes, you can use Marionette for this, but this is the type of thing that I think Vectorscript (VS) is better at than Marionette

 

Thanks Pat

 

Would I be correct in saying that if you can use VS you can do it in Python as well?

 

I also use Blender so it could be a win win for me as my Py skills, that I don't currently have, are transferable.

 

With Py I could move verts as needed. I have no idea if I want to do this but if I can move verts then I could do most things with a mesh.

 

thank you again for your help

 

Edited by barkest

Share this post


Link to post

Yes,

 

Anything you can do in VS you can also do in Pythonscript. In Pythonscript you can actually do more. I just personally dislike the white space as delimiter notion of Python. Makes it very hard for me to debug.

 

Quote

Python:

def  vs.SetMeshVertex(hMesh, index, pt):

   return None

 

Yes you can get and set vetches of mesh objects with Python. You need a handle to the mesh, an index to the vertex you want to move, and just pad the X/Y/X positions you want it to take.

  • Like 1

Share this post


Link to post

Ask as you have more questions. I can help with the VS calls to use. The Python syntax will have to be someone else.

 

Regards,

Pat

  • Like 1

Share this post


Link to post
Posted (edited)

@Pat Stanford,

This thread caught my attention, but didn't go where I was hoping it would. I'd like to control the display of parameters relating to objects that all share the same record(s). I think VectorScripts or Marionnette might be able to help...

 

Currently when doing a site plan, I use a few custom records to track polygons that represent various types of site planning areas. These relate to zoning designations, planning tabulations, storm water coverages, etc. It's basically a catch-all system for identifying and tracking any areas relevant to site planning and fit studies. In other words, it's become a site plan version of the space tool for me.  The problem I'm running into is that the record is getting bloated, and so I would like to add conditional formatting to it. Is it possible to filter or funnel an object's pop-up options based on some primary selections?

 

Example:

  • Project proposes a Commercial building. Property belongs to a zone that represents a sub-designation belonging to all Commercial zones (i.e.- "C-1")
  • All other Zoning options (Agriculture, Residential, Industrial, etc.) are non-applicable.
  • Currently, if I were to attach the building footprint to this zoning/planning record, it would show the selection related to Commercial\C-1, and then maintain a bunch of "n/a" selections related to the other zone groups. The object would have to carry around all this "n/a" data, which then makes it overly complicated to apply worksheets and data tags to these objects (which is the whole point).
  • What I'd like to have happen is to select Commercial from a list of major category designations, and have this filter out all other lists of minor zone designations, so that I can then select from a filtered list of sub-categories only related to Commercial.

This might seem trivial, but without this capability, it's a lot harder to make useful and simple "Project Info." worksheets, as well as a small and simple set of data tags. So filtering the data is a critical first step in an overall attempt to track and document project info.

 

The attached screenshots show this issue in a simple zoning record. Keep in mind I have other records containing many more parameters than this one. The need to filter the OIP using conditional forms becomes more apparent the greater the record becomes.

 

 

1522861165_ScreenShot2019-06-25at11_54_02AM.thumb.png.6995015ae0726e36ad18049646d49823.png

576722387_ScreenShot2019-06-25at11_55_37AM.thumb.png.5924bdf07385191ce27b86b965857cb3.png

 

I hope this makes sense!

 

Thanks,
Matt

Edited by mgries
incomplete

Share this post


Link to post

You should be able to do this in Vectorscript. I don't know enough about Marionette to know if you can do it there or not.

 

Check out the VSOWidgetPopupAdd command. With that  you should be able to get the data from the first popup and use that to filter the items that you pass to the second popup.

 

I have some other information I will send you off line.

  • Like 1

Share this post


Link to post

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.

Guest
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.


 

7150 Riverwood Drive, Columbia, Maryland 21046, USA   |   Contact Us:   410-290-5114

 

© 2018 Vectorworks, Inc. All Rights Reserved. Vectorworks, Inc. is part of the Nemetschek Group.

×
×
  • Create New...