<?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: in ObjectARX Forum</title>
    <link>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315827#M37898</link>
    <description>Hi!&lt;BR /&gt;
&lt;BR /&gt;
Thanks for your help! It works now...&lt;BR /&gt;
&lt;BR /&gt;
Markus</description>
    <pubDate>Thu, 23 Jan 2003 00:44:58 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2003-01-23T00:44:58Z</dc:date>
    <item>
      <title>Explode with the ACAD EXPLODE Command</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315823#M37894</link>
      <description>Hi all!&lt;BR /&gt;&lt;BR /&gt;
&lt;P&gt;&lt;BR /&gt;
My problem:&lt;BR /&gt;&lt;BR /&gt;
I have a DWG File with some AcDbBlockReferences. Every&lt;BR /&gt;&lt;BR /&gt;
Blockreference contains of a Polyface Mesh. This Polyface&lt;BR /&gt;&lt;BR /&gt;
Mesh has some X-Data with information I want to read.&lt;BR /&gt;&lt;BR /&gt;
&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;
If I explode the Block with the ACAD EXPLODE Command,&lt;BR /&gt;&lt;BR /&gt;
the resulting Polyface Mesh contains the X-Data and&lt;BR /&gt;&lt;BR /&gt;
I can read them out. &lt;BR /&gt;&lt;BR /&gt;
Now I want to do this automatically with my ARX-App.&lt;BR /&gt;&lt;BR /&gt;
If I explode the Block using eplode()-function, I get&lt;BR /&gt;&lt;BR /&gt;
a pointer to the Polyface Mesh, but this Entity has&lt;BR /&gt;&lt;BR /&gt;
no X-Data saved.&lt;BR /&gt;&lt;BR /&gt;
&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;
Here is a codesnip:&lt;BR /&gt;&lt;BR /&gt;
&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;
if(pBlkRef-&amp;gt;explode(EntArray) == Acad::eOk){&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(EntArray.length() &amp;lt;= 0){&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pModelSpace-&amp;gt;close();&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pBlkRef-&amp;gt;close();&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return(false);&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for(int i = 0; i &amp;lt; EntArray.length(); i++){&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;es = pModelSpace-&amp;gt;appendAcDbEntity(ObjId, &lt;BR /&gt;&lt;BR /&gt;
(AcDbEntity*)EntArray&lt;I&gt;);&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;((AcDbEntity*)EntArray&lt;I&gt;)-&amp;gt;close();&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(es == Acad::eOk)&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ObjArray.append(ObjId);&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pModelSpace-&amp;gt;close();&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pBlkRef-&amp;gt;close();&lt;BR /&gt;&lt;BR /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return(true);&lt;BR /&gt;&lt;BR /&gt;
}&lt;BR /&gt;&lt;BR /&gt;
&lt;/I&gt;&lt;/I&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;
Thanks for any help, Markus&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 20 Jan 2003 23:49:24 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315823#M37894</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-01-20T23:49:24Z</dc:date>
    </item>
    <item>
      <title>Re: Explode with the ACAD EXPLODE Command</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315824#M37895</link>
      <description>&lt;DIV&gt;&lt;FONT face="Arial" size="2"&gt;AcDbBlockReference::explode() uses &lt;BR /&gt;
getTransformedCopy() on each entity in the block definition to create the &lt;BR /&gt;
explode set.&amp;nbsp; Unfortunately, AcDbPolyFaceMesh::getTransformedCopy() doesn't &lt;BR /&gt;
copy the xdata to the copy.&lt;/FONT&gt;&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;FONT face="Arial" size="2"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;FONT face="Arial" size="2"&gt;All I can think of is that you could have your code &lt;BR /&gt;
find the source polyfacemesh and copy the xdata from it to the polyfacemesh copy &lt;BR /&gt;
after the explode is complete.&lt;/FONT&gt;&lt;/DIV&gt;&lt;BR /&gt;
&lt;BLOCKQUOTE dir="ltr"&gt;&lt;BR /&gt;
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px"&amp;gt;&lt;BR /&gt;
  &lt;DIV&gt;"Markus Griesser" &amp;lt;&lt;A&gt;&lt;BR /&gt;
  href="mailto:markus.griesser@gmx.at"&amp;gt;markus.griesser@gmx.at&lt;/A&gt;&amp;gt; wrote in &lt;BR /&gt;
  message &lt;A&gt;&lt;BR /&gt;
  href="news:f13aa79.-1@WebX.maYIadrTaRb"&amp;gt;news:f13aa79.-1@WebX.maYIadrTaRb&lt;/A&gt;...&lt;/DIV&gt;Hi &lt;BR /&gt;
  all!&lt;BR /&gt;&lt;BR /&gt;
  &lt;P&gt;My problem:&lt;BR /&gt;I have a DWG File with some AcDbBlockReferences. &lt;BR /&gt;
  Every&lt;BR /&gt;Blockreference contains of a Polyface Mesh. This Polyface&lt;BR /&gt;Mesh has &lt;BR /&gt;
  some X-Data with information I want to read.&lt;BR /&gt;&lt;BR /&gt;
  &lt;/P&gt;&lt;P&gt;If I explode the Block with the ACAD EXPLODE Command,&lt;BR /&gt;the resulting &lt;BR /&gt;
  Polyface Mesh contains the X-Data and&lt;BR /&gt;I can read them out. &lt;BR /&gt;Now I want &lt;BR /&gt;
  to do this automatically with my ARX-App.&lt;BR /&gt;If I explode the Block using &lt;BR /&gt;
  eplode()-function, I get&lt;BR /&gt;a pointer to the Polyface Mesh, but this Entity &lt;BR /&gt;
  has&lt;BR /&gt;no X-Data saved.&lt;BR /&gt;&lt;BR /&gt;
  &lt;/P&gt;&lt;P&gt;Here is a codesnip:&lt;BR /&gt;&lt;BR /&gt;
  &lt;/P&gt;&lt;P&gt;if(pBlkRef-&amp;gt;explode(EntArray) == &lt;BR /&gt;
  Acad::eOk){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(EntArray.length() &lt;BR /&gt;
  &amp;lt;= &lt;BR /&gt;
  0){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pModelSpace-&amp;gt;close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pBlkRef-&amp;gt;close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return(false);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for(int &lt;BR /&gt;
  i = 0; i &amp;lt; EntArray.length(); &lt;BR /&gt;
  i++){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;es &lt;BR /&gt;
  = pModelSpace-&amp;gt;appendAcDbEntity(ObjId, &lt;BR /&gt;
  &lt;BR /&gt;(AcDbEntity*)EntArray&lt;I&gt;);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;((AcDbEntity*)EntArray&lt;I&gt;)-&amp;gt;close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(es &lt;BR /&gt;
  == &lt;BR /&gt;
  Acad::eOk)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ObjArray.append(ObjId);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pModelSpace-&amp;gt;close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pBlkRef-&amp;gt;close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return(true);&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;
  &lt;/I&gt;&lt;/I&gt;&lt;/P&gt;&lt;P&gt;Thanks for any help, Markus&lt;BR /&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Tue, 21 Jan 2003 08:51:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315824#M37895</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-01-21T08:51:53Z</dc:date>
    </item>
    <item>
      <title>Re:</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315825#M37896</link>
      <description>Hi!&lt;BR /&gt;
Hi!&lt;BR /&gt;
&lt;BR /&gt;
Thanks for your help!&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt; Unfortunately, AcDbPolyFaceMesh::getTransformedCopy() doesn't copy the&lt;BR /&gt;
&amp;gt; xdata to the copy. All I can think of is that you could have your code&lt;BR /&gt;
&amp;gt; find the source polyfacemesh and copy the xdata from it to the &lt;BR /&gt;
&amp;gt; polyfacemesh copy after the explode is complete.&lt;BR /&gt;
&lt;BR /&gt;
How can I do this? Can you give me a hint or some&lt;BR /&gt;
documentation?&lt;BR /&gt;
&lt;BR /&gt;
Markus</description>
      <pubDate>Wed, 22 Jan 2003 05:12:14 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315825#M37896</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-01-22T05:12:14Z</dc:date>
    </item>
    <item>
      <title>Re:</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315826#M37897</link>
      <description>You'll have to get the objectId of the AcDbBlockTableRecord that the&lt;BR /&gt;
blockReference references, then get an interator for that BlockTableRecord&lt;BR /&gt;
and iterate through its contents looking for the polyfacemesh.  Once you've&lt;BR /&gt;
got the source polyfacemesh object you can use it's xData() method to get&lt;BR /&gt;
its xdata.  You can then use the setXData() method on the copy passing in&lt;BR /&gt;
the data list you got from the source object's xData() method.&lt;BR /&gt;
&lt;BR /&gt;
"Markus Griesser" &lt;MARKUS.GRIESSER&gt; wrote in message&lt;BR /&gt;
news:AEAC4C6A2C2B4766BF34368C765FA5F8@in.WebX.maYIadrTaRb...&lt;BR /&gt;
&amp;gt; Hi!&lt;BR /&gt;
&amp;gt; Hi!&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; Thanks for your help!&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; &amp;gt; Unfortunately, AcDbPolyFaceMesh::getTransformedCopy() doesn't copy the&lt;BR /&gt;
&amp;gt; &amp;gt; xdata to the copy. All I can think of is that you could have your code&lt;BR /&gt;
&amp;gt; &amp;gt; find the source polyfacemesh and copy the xdata from it to the&lt;BR /&gt;
&amp;gt; &amp;gt; polyfacemesh copy after the explode is complete.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; How can I do this? Can you give me a hint or some&lt;BR /&gt;
&amp;gt; documentation?&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; Markus&lt;/MARKUS.GRIESSER&gt;</description>
      <pubDate>Wed, 22 Jan 2003 08:26:21 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315826#M37897</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-01-22T08:26:21Z</dc:date>
    </item>
    <item>
      <title>Re:</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315827#M37898</link>
      <description>Hi!&lt;BR /&gt;
&lt;BR /&gt;
Thanks for your help! It works now...&lt;BR /&gt;
&lt;BR /&gt;
Markus</description>
      <pubDate>Thu, 23 Jan 2003 00:44:58 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/explode-with-the-acad-explode-command/m-p/315827#M37898</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-01-23T00:44:58Z</dc:date>
    </item>
  </channel>
</rss>

