<?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: Using acedSSGet with :V selection mode in ObjectARX Forum</title>
    <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632601#M9453</link>
    <description>&lt;P&gt;I've tried this solution. The problem is that I want to use:&lt;/P&gt;&lt;P&gt;acedSSGet( L"_:V", NULL, NULL, NULL, sset )&lt;/P&gt;&lt;P&gt;and not the:&lt;/P&gt;&lt;P&gt;acedSSGet(NULL, NULL, NULL, NULL, sset)&lt;/P&gt;&lt;P&gt;Because in the first case user can see what he selects. The faces get highlighted when mouse hovers over them. In the latter case the entire solid is being selected.&lt;/P&gt;&lt;P&gt;And when I use&amp;nbsp;the selection mode string the&lt;/P&gt;&lt;P&gt;pEnt-&amp;gt;getSubentPathsAtGsMarker( AcDb::kFaceSubentType, marker, pickpnt, xform, numIds, subentIds );&lt;/P&gt;&lt;P&gt;returns different face, then the one I've selected.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;By the way, it is very strange, that there is a new special selection mode and no sample code uses it...&lt;/P&gt;</description>
    <pubDate>Wed, 19 Oct 2016 17:59:55 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2016-10-19T17:59:55Z</dc:date>
    <item>
      <title>Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6631319#M9450</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to assign some XData values to a solid (box) face.&lt;/P&gt;&lt;P&gt;I try to use:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ads_name selSet;&lt;/P&gt;&lt;P&gt;acedSSGet( L"_:V", nullptr, nullptr, nullptr, selSet );&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;to let user specify the face. It seems to work fine, but how can I then get the face(s) selected ?&lt;/P&gt;&lt;P&gt;I tried:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ads_name entity;&lt;BR /&gt;acedSSName( selSet, 0, entity );&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;but it returns the entire solid...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Oct 2016 10:08:10 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6631319#M9450</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-10-19T10:08:10Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632315#M9451</link>
      <description>&lt;P&gt;You have to use not&amp;nbsp; acedSSName but acedSSName&lt;STRONG&gt;X&lt;/STRONG&gt;. As an example you can see in the ObjectARX SDK: samples\entity\polysamp&lt;/P&gt;
&lt;P&gt;hilit.cpp has the function &lt;STRONG&gt;&lt;EM&gt;hilitSolid&lt;/EM&gt;&lt;/STRONG&gt; which allow to highlight selected Face/Edge of AcDb3dSolid. &lt;/P&gt;</description>
      <pubDate>Wed, 19 Oct 2016 16:26:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632315#M9451</guid>
      <dc:creator>Alexander.Rivilis</dc:creator>
      <dc:date>2016-10-19T16:26:04Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632337#M9452</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@Anonymous wrote:&lt;BR /&gt;&lt;BR /&gt;
&lt;P&gt;...I need to assign some XData values to a solid (box) face....&lt;/P&gt;
but it returns the entire solid...
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;It is impossible to assign Xdata to AcDb3dSolid&amp;nbsp; face, because XData can be assigned only to the &lt;U&gt;whole&lt;/U&gt; object/entity&lt;/P&gt;
&lt;P&gt;Face of AcDb3dSolid is not independent entity.&lt;/P&gt;</description>
      <pubDate>Wed, 19 Oct 2016 16:30:25 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632337#M9452</guid>
      <dc:creator>Alexander.Rivilis</dc:creator>
      <dc:date>2016-10-19T16:30:25Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632601#M9453</link>
      <description>&lt;P&gt;I've tried this solution. The problem is that I want to use:&lt;/P&gt;&lt;P&gt;acedSSGet( L"_:V", NULL, NULL, NULL, sset )&lt;/P&gt;&lt;P&gt;and not the:&lt;/P&gt;&lt;P&gt;acedSSGet(NULL, NULL, NULL, NULL, sset)&lt;/P&gt;&lt;P&gt;Because in the first case user can see what he selects. The faces get highlighted when mouse hovers over them. In the latter case the entire solid is being selected.&lt;/P&gt;&lt;P&gt;And when I use&amp;nbsp;the selection mode string the&lt;/P&gt;&lt;P&gt;pEnt-&amp;gt;getSubentPathsAtGsMarker( AcDb::kFaceSubentType, marker, pickpnt, xform, numIds, subentIds );&lt;/P&gt;&lt;P&gt;returns different face, then the one I've selected.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;By the way, it is very strange, that there is a new special selection mode and no sample code uses it...&lt;/P&gt;</description>
      <pubDate>Wed, 19 Oct 2016 17:59:55 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632601#M9453</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-10-19T17:59:55Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632629#M9454</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/481027"&gt;@Alexander.Rivilis&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;It is impossible to assign Xdata to AcDb3dSolid&amp;nbsp; face, because XData can be assigned only to the &lt;U&gt;whole&lt;/U&gt; object/entity&lt;/P&gt;&lt;P&gt;Face of AcDb3dSolid is not independent entity.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;BR /&gt;I expected&amp;nbsp;this. AFAIK the face is not a DBRO. But I suppose I could assign to the solid the xdata containing face number along with the data which belongs to the face. I suppose there is some kind of consistent face numbering, to know for example which is the first face of the solid box, the second, etc.&lt;/P&gt;</description>
      <pubDate>Wed, 19 Oct 2016 18:08:38 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6632629#M9454</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-10-19T18:08:38Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6633255#M9455</link>
      <description>&lt;P&gt;Maybe this code will be a sample:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;static void RivilisTestGetSubent() {
  ads_name ss;
  AcArray&amp;lt;SubentType&amp;gt; subTypes;   subTypes.append(kFaceSubentType);
  acedSSSetSubentTypes(subTypes);
  if (acedSSGet(_T("_:V"), nullptr, nullptr, nullptr, ss) == RTNORM)
  {
    Adesk::Int32 nEnts = 0, nSubs = 0;
    acedSSLength(ss, &amp;amp;nEnts);
    for (int i = 0; i &amp;lt; nEnts; i++) 
    {
      acedSSSubentLength(ss, i, &amp;amp;nSubs);
      for (int j = 0; j &amp;lt; nSubs; j++)
      {
        AcDbFullSubentPath path;
        acedSSSubentName(ss, i, j, path);
        AcDbObjectId id = path.objectIds()[0];
        AcDbObjectPointer&amp;lt;AcDb3dSolid&amp;gt; pSolid(id, AcDb::kForWrite);
        if (pSolid.openStatus() == Acad::eOk) {
          AcCmColor cm; cm.setColorIndex(1);
          pSolid-&amp;gt;setSubentColor(path.subentId(), cm);
        } else {
          acutPrintf(_T("\nSelected entity is not solid!"));
          break;
        }
      }
    }
    acedSSFree(ss);
  }
}
&lt;/PRE&gt;
&lt;P&gt;&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class="iframe-container"&gt;&lt;IFRAME src="https://screencast.autodesk.com/Embed/Timeline/cdea153d-298d-4a3d-b5fc-3c85d6085d89" scrolling="no" allowfullscreen="allowfullscreen" webkitallowfullscreen="webkitallowfullscreen" style="display: inline;" height="620" frameborder="0" width="640"&gt;&lt;/IFRAME&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 19 Oct 2016 22:49:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6633255#M9455</guid>
      <dc:creator>Alexander.Rivilis</dc:creator>
      <dc:date>2016-10-19T22:49:04Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6634032#M9456</link>
      <description>&lt;P&gt;This is &lt;STRONG&gt;really&lt;/STRONG&gt; a sample! Thanks a lot, Alex.&lt;/P&gt;&lt;P&gt;It would take me a long time to invent this solution.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;One more question, if you be so kind:&lt;/P&gt;&lt;P&gt;As I mentioned earlier I need to know which face is it (geometrically). For this I would need the coords of the face vertices. For now, I found the not very elegant solution for this task. Namely:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;AcDbEntity* pEnt = nullptr;&lt;BR /&gt;pSolid-&amp;gt;copyFace( path.subentId( ), pEnt );&lt;BR /&gt;AcDbRegion* pFace = AcDbRegion::cast( pEnt );&lt;BR /&gt;AcGePlane regionPlane;&lt;BR /&gt;pFace-&amp;gt;getPlane( regionPlane );&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;and having the plane I could identify, which face it was and get the coords of vertices from the solid. Any better idea, please ?&lt;/P&gt;</description>
      <pubDate>Thu, 20 Oct 2016 09:24:06 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6634032#M9456</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-10-20T09:24:06Z</dc:date>
    </item>
    <item>
      <title>Re: Using acedSSGet with :V selection mode</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6634050#M9457</link>
      <description>This way is look like easiest. Other way is use BREP API.</description>
      <pubDate>Thu, 20 Oct 2016 09:33:39 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/using-acedssget-with-v-selection-mode/m-p/6634050#M9457</guid>
      <dc:creator>Alexander.Rivilis</dc:creator>
      <dc:date>2016-10-20T09:33:39Z</dc:date>
    </item>
  </channel>
</rss>

