<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: MagWeb's mmApi scripts in Meshmixer Forum</title>
    <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8776497#M3809</link>
    <description>&lt;P&gt;Yep that works! I changed it to a 'star' to look extra pretty, haha. Thanks again my friend!&lt;/P&gt;</description>
    <pubDate>Tue, 07 May 2019 18:19:59 GMT</pubDate>
    <dc:creator>hfcandrew</dc:creator>
    <dc:date>2019-05-07T18:19:59Z</dc:date>
    <item>
      <title>MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728472#M3784</link>
      <description>&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;&lt;FONT color="#000000"&gt;&lt;STRONG&gt;Instead of spreading scripts all over the forum I'll post them in this thread from now on.&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;&lt;FONT color="#000000"&gt;&lt;STRONG&gt;1 Script: &lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="5" color="#993300"&gt;&lt;SPAN&gt;&lt;FONT color="#000000"&gt;&lt;STRONG&gt;ToolManager&amp;nbsp;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;On a user's request I repost a message I did at MM's old forum on&amp;nbsp;March 23, 2018, 01:30:51 PM:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;Download below&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Here’s a long raw script meant to run api commands without coding a .py file. Well, you’ll need the api to run (important instructions at post’s bottom) or compile the script to a standalone application (recommended it’s easy and seems to be faster) but after that it’s something I find very useful. I post it as it is without any warranty at your own risk in the hope you find it useful and maybe some better coder polishes this…&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Why to use it:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For some tools MM remembers the last used parameter setting. For some tools or special parameters it always loads hard coded default values entering a tool. Now what to do if you want the parameters at a step before „last“ or different to defaults? In MM you always have to set this manually - hopefully your own brain remembers all parameters…..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What this script does:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;With this ToolManager you can save current tool parameters and reload them. Means you can save several settings for the same tool and others as well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;As there is no direct function to get the current tool’s name in mmApi and it needs to be known to call this very tool and its parameters again, I use a pretty ugly workaround: &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;There’s a long list of tools and their parameters (BTW: There are more parameters than listed in the documentation or StoredCommands.h, so see this list as a reference too). As the tools have unique (one exception only: Bridge and Handle use the same parameters!) combinations of parameters one can find the tool itself. So the code iterates through the list of params trying to get that kind of value from MM. If MM responds with an empty list the very parameter isn’t currently available so skip to the next…. This ends in a list of available values and a toollname fitting to this combination which is saved in ToolManager.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Usage:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;+Standard Tool features:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Hitting „&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Save Too&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;&lt;FONT color="#FF0000"&gt;l&lt;/FONT&gt;“ button will save current tool settings to the list at top if MM is in some tool. So do your settings in MM and hit „SaveTool“ before leaving the tool. You may do several saves while being in the same tool too.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- The new entry in the list will be called „setting“ + some number by default. RMB-double click (on MAC),&amp;nbsp; MMB-double click (on WIN) an item in the list opens a dialog where you can set a more &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;meaningful description&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Hitting „&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Delete&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;“ will remove an selected item from the list.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- To &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;restore a saved tool&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; setting LMB-double click the item in the list. Note: It will cancel a tool currently open in MM. So if you want to keep the current result hit Accept in MM first.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- To change saved parameters in a saved setting, double click the item to run the tool with saved settings. Now change your settings&amp;nbsp; in MM and hit &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;UpdateTool&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; in ToolManager. New settings are saved to the item now.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;+ AutoSet features:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Clicking &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;AutoSet&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; will perform listed tool actions from top to bottom and automatically accept them. This way you can perform some kind of simple „scripting“ .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- There are tools in MM not owning some parameters (e.g. Duplicate). Therefor they can’t be detected by my approach as described above. You can add such tools at the list’s bottom by hitting &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;AddCom&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;. A dialog will pop up where you can choose such a command to add.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- You can copy a selected item hitting the &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Copy&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; button it will be copied to the bottom of the list.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- You can &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;move an item&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; up/down LMB-dragging it in the list. This is needed to get the right order of commands running AutoSet&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- By default all added items in the list are active while running AutoSet. If you want to exclude an item without deleting it use the &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;+/-Auto&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; button. This toggles between active and inactive which greys-out&amp;nbsp; selected item in the list.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I/O:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- You can save the current set of saved tools to a .csv file hitting &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;SaveSet&lt;/SPAN&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;SPAN&gt;- You can load such a set via &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;LoadSet&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;. This will replace the current list&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Limitations:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Using mmApi sends each parameter one by one. So expect some „motion“ in the scene while restoring tool settings of tools using a transformation widget.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- There’s no way I found to get/save the brush-type,-falloff,-color,-stencil in SCULPT so it will still use the last used one. Against that all other brush parameters can be saved (even symmetry plane settings)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- In case of SELECT/Edit/Handle and Bridge his approach can’t decide which was used. It will always think it’s Handle (maybe fixed by a decision dialog in the future)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Don’t expect advanced mmApi stuff on this level of simply calling tools.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Maybe bad, inefficient coding for now but working….&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;################&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;How to run this script:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Download and setup mmApi using instructions at: &lt;/SPAN&gt;&lt;A class="bbc_link" href="https://github.com/meshmixer/mm-api" target="_blank" rel="noopener nofollow noopener noreferrer"&gt;https://github.com/meshmixer/mm-api&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;- Download, unzip attached file „ToolManager.py“ to mm-api-master/distrib/python (or python_osx on MAC)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Edit def get_toolparam_mat3f(remote, param_name): in tool.py&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color="#FF0000"&gt; (mm directory) that way&lt;/FONT&gt;:&lt;/P&gt;
&lt;P&gt;&lt;CODE class="bbc_code"&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;PRE&gt;def get_toolparam_mat3f(remote, param_name):
    """Returns the current value of the given Tool parameter, or empty list if the parameter is not found."""
    cmd = mmapi.StoredCommands()
    key = cmd.AppendGetToolParameterCommand(param_name)
    remote.runCommand(cmd)
    m = mmapi.mat3f()
    bFound = cmd.GetToolParameterCommandResult(key, m)
    if bFound:
        return tuple(m.m) #MagWeb: added output as tuple
    else:
        return ()&lt;/PRE&gt;
&lt;P&gt;&lt;CODE class="bbc_code"&gt;&lt;/CODE&gt;&lt;SPAN&gt;tuple(m.m) is needed to return 9 element tuples instead of SWIG objects in case of rotation matrices &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;##################&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;enjoy&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;You can do stuff like this:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class="screencast_placeholder"&gt;Screencast will be displayed here after you click Post.
&lt;P class="screencast_id"&gt;bf8ff1a3-6198-4d7d-8e47-90d793fed1fb&lt;/P&gt;
&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 13 Apr 2019 16:09:35 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728472#M3784</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-13T16:09:35Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728738#M3785</link>
      <description>&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;&lt;FONT color="#000000"&gt;&lt;STRONG&gt;2 Script: &lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="5" color="#993300"&gt;&lt;SPAN&gt;&lt;FONT color="#000000"&gt;&lt;STRONG&gt;MM Scene Manager&amp;nbsp;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;Here's another script I posted on the old forum on&amp;nbsp;&lt;SPAN&gt;August 15, 2017, 07:51:01 PM. Think this is&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="caret-color: #993300;"&gt;useful too.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN style="caret-color: #993300;"&gt;&lt;SPAN&gt;Download below&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I needed some advanced features to control a scene with multiple objects.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Using MM API I made a standalone application to replace MM's ObjectBrowser. This is my very first application so expect some issues and ugly source code but I did my best and found it running fine on several macOS machines here (even machines where MM API never was installed).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ATM it is Mac only, sorry, but pure Python 2.7 seems not to support builds for a different OS so I will have to install Python and MM API on Windows to build from the same code over there (or maybe somebody else does?).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Usage:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;No installation procedure. Simply unpack it to somewhere on your HDD.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="bbc_u"&gt;AFTER you've loaded at least one object&lt;/SPAN&gt;&lt;SPAN&gt; to MM's scene launch MMSceneManager.app. Its GUI will show up. This window will be topmost all the time. As it is a separate application you may drag it to anywhere (even to a second monitor). Dragging the lower corners you may resize it to a desired shape.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;MMSceneManager talks and listens to MM's scene. Therefore at launch it shows all objects (Meshes and Pivots) existing in MM's current scene. If you add a new object to MM's scene it will be added to the SceneManager highlighted in red. As soon as you click this highlighted item it will loose this "new" flag. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;At launch SceneManager does not know about the visibility settings in MM. All items are marked with an "O" (= visible). To synchronise visibility you may click on the "&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;ShowAll&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;" Button which will set all meshes in MM to visible.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Hiding via SceneManager is simple: &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;RMB-click&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; on the item to hide in MM's scene. The item will now show a "X" (= non visible).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can rename an item via &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;LMB double click&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;. Enter the new name in the pop up dialog.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now the either sense of this app: It supports sorting in a hierarchical tree structure.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;With &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;LMB-drag&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; you can move an item up and down onto existing &lt;/SPAN&gt;&lt;SPAN class="bbc_u"&gt;and&lt;/SPAN&gt;&lt;SPAN&gt; open levels. As MM does not know something about such levels at start you can move the item only up and down which is fine but not the kind of usage I wrote this app for.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;With &lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Shift+LMB-drag&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt; you can move item "A" (and if there already are "children" its children) onto another item "B" into a new depth of the scene-tree. Now "B" became the parent of "A". Again Shift+LMB dragging "B"&amp;nbsp; onto an item "C" will make C the parent of B which is parent of A....aso.... As you may bind several same level children to a parent&amp;nbsp; you can construct complex structures quickly.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;As soon as you drop an item A onto another item B you will get a little triangle in front of the B entry. Clicking this triangle will open/close the next down level of children.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Back to LMB-dragging (without holding down Shift): With a parent B open you may drag the item to that level as well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So if there's D being a child of C being a child of B being a child of A: LMB clicking of A will activate B, C and D in MM's scene as well. Clicking on B will also activate C and D - a quick way to activate and to set visibility (remember RMB click).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now you may run into a situation where you want to activate a single object (which is a parent of children) only. For this I added the "&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Single&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;" checkbox. This active will activate the clicked item only.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To organize objects without a direct parent there's the option to add "Boxes" to the tree ( "&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;AddBox&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;" button). A box is just a container object ( similar to a file's folder). It acts the same way (same commands) as an object item, but isn't sent to MM.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Open All&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;" button will expand all nodes in the tree to show the whole content.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now when you did all that nice work to construct such a tree it might happen that you want to save this structure. MM can't do this. Therefore the "&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Save&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;" button will save a .cvs table of the current tree. With the "&lt;/SPAN&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN class="bbc_color"&gt;Load&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;" button you may call a previous saved layout. If the loaded scene in MM almost fits to the layout you'll have a nicer start next time you use SceneManager.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So far. Download below (source included in the .app bundle/Contents/Resources/MMSceneManager_01.py). Use it free but at your own risk, without any warranty.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks to all the guys providing info about used modules (Tkinter and Python) all over the web!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;Just an example of what you can do&amp;nbsp;&lt;/SPAN&gt;organising your scene that way:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="iframe-container"&gt;&lt;IFRAME width="640" height="590" src="https://screencast.autodesk.com/Embed/Timeline/8bb2e0df-195a-449a-8a60-7ffe8976ab2f" frameborder="0" scrolling="no" allowfullscreen="allowfullscreen" webkitallowfullscreen="webkitallowfullscreen"&gt;&lt;/IFRAME&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 13 Apr 2019 21:59:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728738#M3785</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-13T21:59:18Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728776#M3786</link>
      <description>&lt;P&gt;Forum soft ate the screencast above:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="iframe-container"&gt;&lt;IFRAME width="640" height="590" src="https://screencast.autodesk.com/Embed/Timeline/bf8ff1a3-6198-4d7d-8e47-90d793fed1fb" frameborder="0" scrolling="no" allowfullscreen="allowfullscreen" webkitallowfullscreen="webkitallowfullscreen"&gt;&lt;/IFRAME&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 13 Apr 2019 22:30:46 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728776#M3786</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-13T22:30:46Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728778#M3787</link>
      <description>&lt;P&gt;Also:&lt;/P&gt;
&lt;P&gt;I posted a second script allowing stuff like that:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="iframe-container"&gt;&lt;IFRAME width="640" height="590" src="https://screencast.autodesk.com/Embed/Timeline/8bb2e0df-195a-449a-8a60-7ffe8976ab2f" frameborder="0" scrolling="no" allowfullscreen="allowfullscreen" webkitallowfullscreen="webkitallowfullscreen"&gt;&lt;/IFRAME&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This post, usage instructions, script + screencast was marked and deleted as SPAM.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Should I add some emoji?&lt;/P&gt;</description>
      <pubDate>Sat, 13 Apr 2019 22:34:58 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8728778#M3787</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-13T22:34:58Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8729505#M3788</link>
      <description>&lt;P&gt;OK, the return of the deleted post so a&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;3. Script:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="5"&gt;&lt;SPAN&gt;&lt;STRONG&gt;MM Slicer&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#993300"&gt;&lt;SPAN&gt;Download below&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I did this script to automate a workflow I explained &lt;/SPAN&gt;&lt;A href="https://forums.autodesk.com/t5/meshmixer/how-to-automate-1-quot-slicing-with-registration-plugs-dowels/td-p/8582006" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;here&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; . I post it as it is, without any warranty at your own risk, in the hope you find it useful.&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Why to use it:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Older versions had a tool to horizontally cut an object into 3 dimensional slices of the same height. This functionality had to be removed. This script adds the possibility to insert registration dowels for better mounting the machined output later on.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;What this script does:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The mmApi Python code will cut activated objects. Visible, but not active objects are used to:&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;SPAN&gt;Flip its surface normals and combine them to the active objects to generate inside cavities.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;(optional) Cut a positive duplicate a bit higher to generate dowels to fill the cavities.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&lt;SPAN&gt;The script sorts the resulting parts and fitting dowels and combines the them to final slices with registration dowels.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Usage:&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;SPAN&gt;Hide all objects you don’t want to cut.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;Add some cylinder objects from MESHMIX/Primitives as separate objects dropping them to empty space. Scale and move them inside the objects to be cut.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;Activate the objects to cut, don’t activate the cylinders.&lt;/LI&gt;
&lt;LI&gt;Run the script. A little GUI will pop up. &lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" style="width: 999px;"&gt;&lt;IMG src="https://autodesk.i.lithium.com/t5/image/serverpage/image-id/626026iFA30E3A398CFC9C1/image-size/large?v=1.0&amp;amp;px=999" alt="Ohne Titel.jpeg" title="Ohne Titel.jpeg" /&gt;&lt;/SPAN&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;Click &lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;Slice&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;Save STLs&lt;/SPAN&gt;&lt;/FONT&gt; generates a folder. Put in its name in the file dialog (e.g: Bunny). Now MM writes all slices as individual files to that folder (e.g.: Bunny1.stl)&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The script in action:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="iframe-container"&gt;&lt;IFRAME width="640" height="590" src="https://screencast.autodesk.com/Embed/Timeline/73c4f79d-252a-4c95-b1f9-c0fc9023d69f" frameborder="0" scrolling="no" allowfullscreen="allowfullscreen" webkitallowfullscreen="webkitallowfullscreen"&gt;&lt;/IFRAME&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 14 Apr 2019 19:28:56 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8729505#M3788</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-14T19:28:56Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8732452#M3789</link>
      <description>&lt;P&gt;nice&lt;/P&gt;</description>
      <pubDate>Mon, 15 Sep 2025 21:22:48 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8732452#M3789</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2025-09-15T21:22:48Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8732515#M3790</link>
      <description>&lt;P&gt;Things can be improved...&lt;/P&gt;
&lt;P&gt;There are some tools needing some "seed selection". &amp;nbsp;One could construct such a seed for SelectVisible (for the actual seed is ignored by SelectVisible if it in not visible) by ray casting. Pretty sure that's doable...&lt;/P&gt;
&lt;P&gt;Think a Invert selection can be called via api as well...&lt;/P&gt;
&lt;P&gt;Contract/ExpandRing: These one click actions need to count the times you call the commands... let's see...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Break points to perform the cue?: Think there's something here which I can polish and add to the code...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 Apr 2019 23:41:06 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8732515#M3790</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-15T23:41:06Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8734480#M3791</link>
      <description>&lt;P&gt;.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Sep 2025 21:23:11 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8734480#M3791</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2025-09-15T21:23:11Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8738116#M3792</link>
      <description>&lt;P&gt;.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Sep 2025 21:23:32 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8738116#M3792</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2025-09-15T21:23:32Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8738700#M3793</link>
      <description>&lt;P&gt;Instead of writing the rotation matrix to the .csv there's still the SWIG object.&lt;/P&gt;
&lt;P&gt;Did you e&lt;SPAN&gt;dit &lt;EM&gt;def get_toolparam_mat3f(remote, param_name)&lt;/EM&gt;: in tool.py ? This file is in the mm directory. You need to change it the way I described above (see 1. post here and the code snippet in its &lt;EM&gt;How to run this script&lt;/EM&gt; section).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Seems to be a bug in the api....&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 18 Apr 2019 00:33:20 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8738700#M3793</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-18T00:33:20Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8742930#M3794</link>
      <description>&lt;P&gt;Argh... just noticed: I posted a wrong ToolManager script version above. Sorry.&lt;/P&gt;
&lt;P&gt;Unfortunately forum soft doesn't allow editing former posts.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As V2 is almost ready I recommend waiting for this...&lt;/P&gt;</description>
      <pubDate>Sat, 20 Apr 2019 06:37:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8742930#M3794</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-20T06:37:04Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8743223#M3795</link>
      <description>&lt;P&gt;Oh okay. Good to know, I'm excited! Haha and feel no rush my friend.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I did try editing the code as outlined, but I must have done it wrong, it only partially fixed the rotate, but then made translate not work correctly anymore. I think I misinterpreted your instructions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Again as a non-coder, I tried a couple different combinations of editing the single line, then tried adding that whole section in, then adding that whole section in but deleting the old one.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Which method is correct? ...or ya, I can easily wait until v2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks again! (ps. Not all heroes wear capes)&lt;/P&gt;</description>
      <pubDate>Sat, 20 Apr 2019 13:26:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8743223#M3795</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2019-04-20T13:26:18Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8746373#M3796</link>
      <description>&lt;P&gt;In thew hope it might be useful, at your own risk:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;ToolManager&amp;nbsp;V2:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;not tested that much ( bunnies were busy last days to hide egges):&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Added:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- You can run a cue of commands towards the list’s end from a current item (&amp;gt; PlayDown)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- You can add a break to a cue of commands. (&amp;gt; AddBreak). Use PlayDown to continue the listed commands below a break.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- You can modify a current selection (&amp;gt; AddSel)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- detection of tools needing a selection: Script will pause if a tool needs some selection( use PlayDown to continue).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- You can store a certain aspect (StoreCam). Useful for actions like SelectVisible…&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- You can undo a PlayAll cue via UndoAll&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- You can undo a PlayDown cue via UndoLast&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Changes (compared to ToolManager(V1):&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- Label of AutoSet changed to PlayAll&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- Label of +/- Autro changed to +/- Skip&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Hacking&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;of mm/tool.py&lt;SPAN class="Apple-converted-space"&gt;&amp;nbsp; &lt;/SPAN&gt;NOT needed any more. So if you did the hack to run ToolManager V1 (see 1. post of this thread) undo it to:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;PRE&gt;def get_toolparam_mat3f(remote, param_name):
    """Returns the current value of the given Tool parameter, or empty list if the parameter is not found."""
    cmd = mmapi.StoredCommands()
    key = cmd.AppendGetToolParameterCommand(param_name)
    remote.runCommand(cmd)
    m = mmapi.mat3f()
    bFound = cmd.GetToolParameterCommandResult(key, m)
    if bFound:
        return m 
    else:
        return ()&lt;/PRE&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;&lt;FONT color="#000000"&gt;+ some bugs (as the rotation&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;SPAN style="caret-color: #000000;"&gt;matrix issue) should be fixed.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 23 Apr 2019 00:46:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8746373#M3796</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-23T00:46:53Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8753848#M3797</link>
      <description>&lt;DIV&gt;Thank you so much! So I'm been playing around and you're correct in that there is definitely some functionality/ideas/quality of life/workflow/debugging things required, haha! Some more important than others, but I'll be your debugger and list all I've come across.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;UL&gt;
&lt;LI&gt;I forgot to mention the 'Click and Drag' was not working for me previously of v1 or currently on v2 for moving items on the GUI. Might be a PC mouse vs Mac mouse issue?&lt;/LI&gt;
&lt;LI&gt;On the GUI the display text that pops up often fills the whole screen pushing and hiding all other buttons &amp;amp; info out of the way, especially when a function fails as it displays a long text error (Normal and with Error.png)&lt;/LI&gt;
&lt;LI&gt;The 'pause to select' on the 'select' tool you mentioned does not pause&lt;/LI&gt;
&lt;LI&gt;Face transforms with XYZ translations of a selection do not save, so it just runs through the the tool without apply anything.&lt;/LI&gt;
&lt;LI&gt;While using the script every time I use the undo/undo all it autosaves&amp;nbsp; a copy of a .mix in "Documents\meshmixer\autosave" and changes the current working filename to 'managersave.mix'&lt;/LI&gt;
&lt;LI&gt;The 'storecam' is a great idea but not quite working. There is like this disconnect between the view cube and the screen. And also the panning mouse function doesnt work when the camera is messed up, it kind of pans and zooms instead of the just panning. However if you go to rotate as normal with the mouse, it corrects itself 100% (Cam bug.png)&lt;/LI&gt;
&lt;LI&gt;Can't 'update cam' (as you can update the tool)&lt;/LI&gt;
&lt;LI&gt;The update tool is inconsistent and doesn't always seem to work on all tools, still trialing which ones work and which ones dont&lt;/LI&gt;
&lt;LI&gt;So far for sure the 'update tool' does not update the 'flip' check box for 'align'&lt;/LI&gt;
&lt;LI&gt;When you 'save set' it saves the .cvs with a empty row in between each row, so when you reload it, it loads in the GUI with lots of blank lines filling up the screen. (I have just been opening the cvs and deleting the blank rows, but would nice cosmetically if it did not make any blank lines)&lt;/LI&gt;
&lt;LI&gt;The 'select visible' does not work when doing 'play all' but works when you just double click on it to run it.&lt;/LI&gt;
&lt;LI&gt;After some functions complete, it seems to 'deselect' the selection. This interrupts the workflow chain of commands so I need to add a break so I can reselect a facegroup again&lt;/LI&gt;
&lt;/UL&gt;
&lt;DIV&gt;It might be a good idea if the script does not 'auto accept' each tool, make it an 'AddCom' option that you need to put in after each tool. Maybe that will fix some things.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Right now, for at least my personal usage, the pause for selection is the most important.&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Thu, 25 Apr 2019 19:40:08 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8753848#M3797</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2019-04-25T19:40:08Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8758488#M3798</link>
      <description>&lt;DIV&gt;Thanks for your feedback!&lt;/DIV&gt;
&lt;DIV&gt;Sorry for the late reply but there are several fires here to fight right now.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;I forgot to mention the 'Click and Drag' was not working for me previously of v1 or currently on v2 for moving items on the GUI. Might be a PC mouse vs Mac mouse issue?&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;I know about a difference of RMB and MMB (on WIN the right mouse button is 3 while it is 2 on a MAC. The middle mouse button is 2 on WIN while it is 3 on MAC). But that should not affect &amp;nbsp;LMB dragging (keeping LMB pressed) in the list. For the RMB action (renaming an item via RMB double click) you need to change the code (there's a comment in the&amp;nbsp;&lt;EM&gt;# Tkinter GUI stuff&amp;amp; trigger buttons&lt;/EM&gt; section in line 699) or use MMB instead.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Did you try the SceneManager code above? Does dragging the items work there for you?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;On the GUI the display text that pops up often fills the whole screen pushing and hiding all other buttons &amp;amp; info out of the way, especially when a function fails as it displays a long text error (Normal and with Error.png)&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Thanks, I called the wrong column of the table (parameters instead of the tool's name) &amp;gt; fixed for the next release.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;The 'pause to select' on the 'select' tool you mentioned does not pause&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;SELECT doesn't &lt;U&gt;need&lt;/U&gt; a selection and therefor the cue doesn't stop. Only the tools you get in MM after you did a selection pause automatically if there's no selection and call SELECT at pause. So you don't have to store SELECT before a tool needing selection. Store SELECT only if you want to define stuff like the brush size or to get rid of an existing selection.&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;Face transforms with XYZ translations of a selection do not save, so it just runs through the the tool without apply anything.&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Can't reproduce that. If you store the tool without having used the transform widget it will be skipped. But if you did a transformation and stored the tool it in this state it should apply the transformation. Doesn't that work on your side?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;While using the script every time I use the undo/undo all it autosaves&amp;nbsp; a copy of a .mix in "Documents\meshmixer\autosave" and changes the current working filename to 'managersave.mix'&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Yes, instead of undoing the whole cue of commands I write a restore .mix at a Play start. Unfortunately there's no way I know to get the name of the loaded file via mmApi to name that restore file. The only way would be to do loading of the file in MM via the Manager or to implement a entry box to name the restore file manually. Maybe I add an optional real MM Undo/Redo (keeping the current file) step by step in the future.&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;The 'storecam' is a great idea but not quite working. There is like this disconnect between the view cube and the screen. And also the panning mouse function doesnt work when the camera is messed up, it kind of pans and zooms instead of the just panning. However if you go to rotate as normal with the mouse, it corrects itself 100% (Cam bug.png)&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Hmm, I know that the cam jumps back to the position it had before setting a certain position via mmApi if you navigate in MM again. So this feature is meant mainly for SelectVisible and that works fine here. But what I see on your screenshot seems to be some MM rendering issue.... Or is it a result of a cue? If you &amp;nbsp;play a cue of several (cam positions plus a following &amp;nbsp;appendVisible (from AddSel)): Does that work?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;Can't 'update cam' (as you can update the tool)&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Maybe in the future - if we can solve such issues as above&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;The update tool is inconsistent and doesn't always seem to work on all tools, still trialing which ones work and which ones dont&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;That may be a focus handling issue: If you set new parameters in MM don't click on the UpdateTool button directly but give the ToolManager window (it's a different application) the focus first (e.g. by clicking on the help text) and then hit the update button.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;So far for sure the 'update tool' does not update the 'flip' check box for 'align'&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Here it updates fine. Could you try with explicit focus on the manager window?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;When you 'save set' it saves the .cvs with a empty row in between each row, so when you reload it, it loads in the GUI with lots of blank lines filling up the screen. (I have just been opening the cvs and deleting the blank rows, but would nice cosmetically if it did not make any blank lines)&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Saw that loading your .csv. Seems separation of lines acts different on Win. Gonna look into that...&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;The 'select visible' does not work when doing 'play all' but works when you just double click on it to run it.&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;SelectVisible discards the current selection and selects the currently visible faces. To append faces to the current selection you need to add&amp;nbsp;appendVisible to the list of commands. Is that what you want to get?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT color="#333399"&gt;After some functions complete, it seems to 'deselect' the selection. This interrupts the workflow chain of commands so I need to add a break so I can reselect a facegroup again&lt;/FONT&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Maybe that's a result of not&amp;nbsp;&lt;SPAN style="caret-color: #333333;"&gt;needed SELECT steps in the cue or a switch to a tool not using a selection at all? As in pure MM you&amp;nbsp;will loose selections doing certain tasks.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333399"&gt;&lt;SPAN style="caret-color: #333333;"&gt;&lt;SPAN&gt;It might be a good idea if the script does not 'auto accept' each tool, make it an 'AddCom' option that you need to put in after each tool. Maybe that will fix some things.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN style="caret-color: #333333;"&gt;&lt;SPAN&gt;I had such a auto accept option in my very first code (and it's still in the table). Let's see...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN style="caret-color: #333333;"&gt;&lt;SPAN&gt;Thanks!&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Sun, 28 Apr 2019 23:01:59 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8758488#M3798</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-28T23:01:59Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8760752#M3799</link>
      <description>&lt;DIV dir="ltr"&gt;
&lt;DIV&gt;&lt;FONT color="#000000"&gt;Oh my, fires!? Be safe out there, don't worry about me if you got bigger things to worry about!&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color="#000000"&gt;As usual you are right about many things here. A few of the things that were not functioning, or at least I thought were not, now are after trying again. It was a combination of restarting/reloading everything and of course user error on my end. See below for my responses and an update on the issues&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;I know about a difference of RMB and MMB (on WIN the right mouse button is 3 while it is 2 on a MAC. The middle mouse button is 2 on WIN while it is 3 on MAC). But that should not affect &amp;nbsp;LMB dragging (keeping LMB pressed) in the list. For the RMB action (renaming an item via RMB double click) you need to change the code (there's a comment in the&amp;nbsp;&lt;EM&gt;# Tkinter GUI stuff&amp;amp; trigger buttons&lt;/EM&gt;&amp;nbsp;section in line 699) or use MMB instead.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Did you try the SceneManager code above? Does dragging the items work there for you?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#cc0000"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;- I have not tried changing TKinter or downloading the SceneManger yet, I will try it later this week&lt;/FONT&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV dir="ltr"&gt;
&lt;DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Thanks, I called the wrong column of the table (parameters instead of the tool's name) &amp;gt; fixed for the next release.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &lt;FONT color="#FF0000"&gt;&amp;nbsp; &amp;nbsp;- Nice!&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;SELECT doesn't&amp;nbsp;&lt;U&gt;need&lt;/U&gt;&amp;nbsp;a selection and therefor the cue doesn't stop. Only the tools you get in MM after you did a selection pause automatically if there's no selection and call SELECT at pause. So you don't have to store SELECT before a tool needing selection. Store SELECT only if you want to define stuff like the brush size or to get rid of an existing selection.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;- Understood. Yes I was using too many.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Can't reproduce that. If you store the tool without having used the transform widget it will be skipped. But if you did a transformation and stored the tool it in this state it should apply the transformation. Doesn't that work on your side?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;FONT color="#FF0000"&gt;- Clicking on the toolmanager window first has fixed this, I think was also just doing something wrong with the order of actions&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Yes, instead of undoing the whole cue of commands I write a restore .mix at a Play start. Unfortunately there's no way I know to get the name of the loaded file via mmApi to name that restore file. The only way would be to do loading of the file in MM via the Manager or to implement a entry box to name the restore file manually. Maybe I add an optional real MM Undo/Redo (keeping the current file) step by step in the future.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Okay. Not a big concern of mine.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Hmm, I know that the cam jumps back to the position it had before setting a certain position via mmApi if you navigate in MM again. So this feature is meant mainly for SelectVisible and that works fine here. But what I see on your screenshot seems to be some MM rendering issue.... Or is it a result of a cue? If you &amp;nbsp;play a cue of several (cam positions plus a following &amp;nbsp;appendVisible (from AddSel)): Does that work?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- No is does not work. See screencast.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Maybe in the future - if we can solve such issues as above&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Yep!&lt;/SPAN&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;That may be a focus handling issue: If you set new parameters in MM don't click on the UpdateTool button directly but give the ToolManager window (it's a different application) the focus first (e.g. by clicking on the help text) and then hit the update button.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Clicking on the toolmanager window first has fixed this, I think was also just doing something wrong with the order of actions&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Here it updates fine. Could you try with explicit focus on the manager window?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Clicking on the toolmanager window first has fixed this, I think was also just doing something wrong with the order of actions&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Saw that loading your .csv. Seems separation of lines acts different on Win. Gonna look into that...&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Thanks&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;SelectVisible discards the current selection and selects the currently visible faces. To append faces to the current selection you need to add&amp;nbsp;appendVisible to the list of commands. Is that what you want to get?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;FONT color="#FF0000"&gt;&lt;SPAN&gt;- Yep. Works fine. User error again&lt;/SPAN&gt;&amp;nbsp;&lt;/FONT&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;Maybe that's a result of not&amp;nbsp;&lt;SPAN&gt;needed SELECT steps in the cue or a switch to a tool not using a selection at all? As in pure MM you&amp;nbsp;will loose selections doing certain tasks.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT color="#FF0000"&gt;- Ya mentioned above already, user error again&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN&gt;I had such as auto accept option in my very first code (and it's still in the table). Let's see...&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN&gt;&lt;FONT color="#FF0000"&gt;- Sounds good. It may be a good option for scenarios when needing to pull up a tool up with most the defaults preset but want to change like 1 parameter before accepting and moving on&lt;/FONT&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So see the below screencast of playing around building a work flow and the .stl and .cvs.&lt;/P&gt;
&lt;P&gt;Have any thoughts on what I'm doing wrong with the camera?&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#333333"&gt;&lt;SPAN&gt;Also I found another issue, when doing a rotational transform, it saves properly when in World but not Local&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Mon, 29 Apr 2019 21:04:52 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8760752#M3799</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2019-04-29T21:04:52Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8760778#M3800</link>
      <description>&lt;P&gt;Didn't allow two attachments in one post. .stl below&lt;/P&gt;</description>
      <pubDate>Mon, 29 Apr 2019 21:18:31 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8760778#M3800</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2019-04-29T21:18:31Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8765642#M3801</link>
      <description>&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 Sep 2025 21:25:27 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8765642#M3801</guid>
      <dc:creator>hfcandrew</dc:creator>
      <dc:date>2025-09-15T21:25:27Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8765700#M3802</link>
      <description>&lt;P&gt;Thanks for the screencast.&lt;/P&gt;
&lt;P&gt;Just a hint on your workflow: If you insert a SelectAll above SelectVisible you can run the whole cue without any interaction.&lt;/P&gt;
&lt;P&gt;I see the rendering issues on restoring a cam position. But it seems that the following SelectVisible and the cue below does its job as intended. Restoring such a cam position works fine here and there are no such rendering failures (but there's a TitanX GPU built in...). You might try whether it works disabling ShowViewCube and disable EnableAntiAliasedRendering in Preferences or even switch to BasicRendering.&lt;/P&gt;
&lt;P&gt;For there are rendering issues MM when no printer is selected maybe you try it with the printer bed being visible&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also compiling the code to a standalone application and running the resulting .exe (or .app on a Mac) should work better (but I'm not sure if it fixes that rendering problem). Compiling also allows to run the app on systems where Python or mmApi isn't installed at all.&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2019 23:23:21 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8765700#M3802</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-05-01T23:23:21Z</dc:date>
    </item>
    <item>
      <title>Re: MagWeb's mmApi scripts</title>
      <link>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8765729#M3803</link>
      <description>&lt;P&gt;Wait, seems I can reproduce the issue now...&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2019 23:44:52 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/meshmixer-forum/magweb-s-mmapi-scripts/m-p/8765729#M3803</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-05-01T23:44:52Z</dc:date>
    </item>
  </channel>
</rss>

