<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Using the Bridge Tool]]></title><description><![CDATA[<p dir="auto">Hello, I'm trying to use the Bridge Tool with the SendModelingCommand but I'm having trouble as there are attributes I don't know how to use. Could someone explain to me what these are for ?</p>
<p dir="auto">MDATA_BRIDGE_ELEMENT1				= 1100, //LONG<br />
MDATA_BRIDGE_ELEMENT2				= 1101, //LONG<br />
MDATA_BRIDGE_ELEMENT3				= 1102, //LONG<br />
MDATA_BRIDGE_ELEMENT4				= 1103, //LONG<br />
MDATA_BRIDGE_OBJINDEX1			= 1104, //LINK<br />
MDATA_BRIDGE_OBJINDEX2			= 1105, //LINK<br />
MDATA_BRIDGE_OBJINDEX3			= 1106, //LINK<br />
MDATA_BRIDGE_OBJINDEX4			= 1107, //LINK<br />
MDATA_BRIDGE_DELETE					= 1108, //BOOL<br />
MDATA_BRIDGE_ISO						= 1109, //BOOL</p>
<p dir="auto">Also, given  the type of elements I'm bridging and subsequently the modeling mode in which I will be using the Tool should I look out for specific things like the sequence of edges or points between the two parts to be connected ? Should I be treating Edge Selections like a sequence of point IDs or can I use them with their own IDs ?</p>
<p dir="auto">Thank you for your time.</p>
]]></description><link>http://developers.maxon.net/forum/topic/16404/using-the-bridge-tool</link><generator>RSS for Node</generator><lastBuildDate>Sun, 19 Apr 2026 06:25:34 GMT</lastBuildDate><atom:link href="http://developers.maxon.net/forum/topic/16404.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 17 Apr 2026 11:29:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Using the Bridge Tool on Sat, 18 Apr 2026 01:24:12 GMT]]></title><description><![CDATA[<p dir="auto">I'm still having trouble with this.</p>
<p dir="auto">I'm trying to bridge polygon selections on a single merged object, but it keeps returning False.</p>
<p dir="auto">My setup:</p>
<ul>
<li>Single polygon object (2 cylinders under a Connect, then Connect+Delete)</li>
<li>Two polygon selection tags with different names on the merged object</li>
<li>Polygon mode (MODELINGCOMMANDMODE_POLYGONSELECTION)</li>
</ul>
<p dir="auto">All settings:</p>
<pre><code>python  settings[MDATA_BRIDGE_RESTRICT] = True
settings[MDATA_BRIDGE_OBJINDEX1] = merged_obj
settings[MDATA_BRIDGE_OBJINDEX2] = merged_obj
settings[MDATA_BRIDGE_OBJINDEX3] = merged_obj
settings[MDATA_BRIDGE_OBJINDEX4] = merged_obj
settings[MDATA_BRIDGE_ELEMENT1] = 48  # First polygon of source selection
settings[MDATA_BRIDGE_ELEMENT2] = 56  # Last polygon of source selection
settings[MDATA_BRIDGE_ELEMENT3] = 19  # First polygon of target selection
settings[MDATA_BRIDGE_ELEMENT4] = 30  # Last polygon of target selection
//+ subdivision, tension, mode, etc.
</code></pre>
<p dir="auto">The bridge tool returns False. The selections are verified to exist on the object (9 polygons at indices 48-56, and 12 polygons at indices 19-30).</p>
<p dir="auto">Questions:</p>
<ul>
<li>Do all MDATA_BRIDGE_OBJINDEX# need to be filled when bridging in polygon mode ?</li>
<li>Do I need to apply the selections to the active BaseSelect, or should they only be in tags?</li>
<li>Are there other required parameters for polygon mode ?</li>
<li>Does RESTRICT=True have any meaning when using the tool programmatically ?</li>
<li>If MDATA_BRIDGE_DELETE is "Keep Original Polygons" when bridging polygons then what is the MDATA_BRIDGE_KEEP_POLYGONS  ?</li>
</ul>
<p dir="auto">Thanks!</p>
]]></description><link>http://developers.maxon.net/forum/post/77125</link><guid isPermaLink="true">http://developers.maxon.net/forum/post/77125</guid><dc:creator><![CDATA[Dimitris_Derm.]]></dc:creator><pubDate>Sat, 18 Apr 2026 01:24:12 GMT</pubDate></item><item><title><![CDATA[Reply to Using the Bridge Tool on Fri, 17 Apr 2026 22:07:00 GMT]]></title><description><![CDATA[<p dir="auto">Oh ! we can bridge independent objects ? That simplifies things as I thought I would have to Connect+Delete first and then bridge...<br />
Thank you for the explanation of the attribute calls.</p>
]]></description><link>http://developers.maxon.net/forum/post/77124</link><guid isPermaLink="true">http://developers.maxon.net/forum/post/77124</guid><dc:creator><![CDATA[Dimitris_Derm.]]></dc:creator><pubDate>Fri, 17 Apr 2026 22:07:00 GMT</pubDate></item><item><title><![CDATA[Reply to Using the Bridge Tool on Fri, 17 Apr 2026 17:18:53 GMT]]></title><description><![CDATA[<p dir="auto">Hey <a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/dimitris_derm.">@<bdi>Dimitris_Derm</bdi></a>. ,</p>
<p dir="auto">Thank you for reaching out to us. The bridge tool in Cinema supports (in point mode) up to four objects as inputs. <code>MDATA_BRIDGE_OBJINDEX1</code> to <code>MDATA_BRIDGE_OBJINDEX4</code> are <code>BaseLink</code> parameters where you must link the <code>PolygonObject</code> instances you want to bridge. When you want the common case of bridging  within one object, you set the same object for all four slots.</p>
<p dir="auto"><code>MDATA_BRIDGE_ELEMENT1</code> to <code>MDATA_BRIDGE_ELEMENT4</code> are then the element (e.g. point) indices to bridge (which can be scattered over multiple objects). They will be evaluated in relation to what you have set for the object indices.</p>
<p dir="auto"><code>MDATA_BRIDGE_DELETE</code> is "Delete Original Polygons" when you are bridging polygons in polygon mode. <code>MDATA_BRIDGE_ISO</code> seems to be related to SDS isoparms in the viewport, you can probably ignore it.</p>
<pre><code class="language-cpp">// Only use case of MDATA_BRIDGE_ISO in our code base, very likely a dormant parameter.
Bool BridgeTool::MouseInput(...)
{
  // ...
  if (bd-&gt;GetEditState()&amp; DISPLAYEDITSTATE::SDS)
    data.SetBool(MDATA_BRIDGE_ISO, true);
  else
    data.SetBool(MDATA_BRIDGE_ISO, false);
  // ...
</code></pre>
<p dir="auto">When bridging in edge mode, you likely will have to operate with half-edge indices, as for example described under <a href="https://developers.maxon.net/docs/py/2026_2_0/modules/c4d/C4DAtom/GeListNode/BaseList2D/BaseObject/PointObject/PolygonObject/index.html#PolygonObject.GetEdgeS" target="_blank" rel="noopener noreferrer nofollow ugc">GetEdgeS</a>. I would personally either go for point or polygon mode bridging, as edges are a virtual construct which can be a pain in the ***  to deal with in code.</p>
<p dir="auto">Cheers,<br />
Ferdinand</p>
<p dir="auto"><video class="embed-video-local" controls src="/forum/assets/uploads/files/1776445599717-blah.mp4">
</video></p>]]></description><link>http://developers.maxon.net/forum/post/77123</link><guid isPermaLink="true">http://developers.maxon.net/forum/post/77123</guid><dc:creator><![CDATA[ferdinand]]></dc:creator><pubDate>Fri, 17 Apr 2026 17:18:53 GMT</pubDate></item></channel></rss>