<?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 How to get annotative scale value from dimension? in ObjectARX Forum</title>
    <link>https://forums.autodesk.com/t5/objectarx-forum/how-to-get-annotative-scale-value-from-dimension/m-p/3453608#M14762</link>
    <description>&lt;P&gt;How to get annotative scale value from dimension?&lt;/P&gt;&lt;P&gt;How to get annotative property from dimension?&lt;/P&gt;&lt;P&gt;plz provide some sample code!!!&lt;/P&gt;</description>
    <pubDate>Fri, 11 May 2012 09:45:57 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2012-05-11T09:45:57Z</dc:date>
    <item>
      <title>How to get annotative scale value from dimension?</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/how-to-get-annotative-scale-value-from-dimension/m-p/3453608#M14762</link>
      <description>&lt;P&gt;How to get annotative scale value from dimension?&lt;/P&gt;&lt;P&gt;How to get annotative property from dimension?&lt;/P&gt;&lt;P&gt;plz provide some sample code!!!&lt;/P&gt;</description>
      <pubDate>Fri, 11 May 2012 09:45:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/how-to-get-annotative-scale-value-from-dimension/m-p/3453608#M14762</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-05-11T09:45:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to get annotative scale value from dimension?</title>
      <link>https://forums.autodesk.com/t5/objectarx-forum/how-to-get-annotative-scale-value-from-dimension/m-p/3453790#M14763</link>
      <description>&lt;PRE&gt;static void CheckAnnotative(void)
{
    ads_name en; ads_point p;
    if (acedEntSel(_T("\nSelect annotative entity: "),en,p) != RTNORM) return;
    AcDbObjectId eid; acdbGetObjectId(eid,en);
    AcDbEntityPointer pEnt(eid,AcDb::kForRead);
    if (pEnt.openStatus() != Acad::eOk) return;
    AcDbAnnotativeObjectPE *ann = ACRX_PE_PTR(pEnt, AcDbAnnotativeObjectPE);
    if (ann &amp;amp;&amp;amp; ann-&amp;gt;annotative(pEnt)) {
      AcDbObjectContextInterface *objInt = ACRX_PE_PTR(pEnt, AcDbObjectContextInterface);
      if (objInt) {
          AcDbObjectContextManager *cManager = acdbCurDwg()-&amp;gt;objectContextManager();
          if (cManager) {
              AcDbObjectContextCollection *col = 
                      cManager-&amp;gt;contextCollection(ACDB_ANNOTATIONSCALES_COLLECTION);
              if (col) {
                    AcDbObjectContextCollectionIterator* iter = col-&amp;gt;newIterator();
                    if (iter) {
                        for (iter-&amp;gt;start(); !iter-&amp;gt;done(); iter-&amp;gt;next()) {
                            AcDbObjectContext *cont = NULL; iter-&amp;gt;getContext(cont);
                            if (cont) {
                                AcDbAnnotationScale *pScale = AcDbAnnotationScale::cast(cont);
                                if (pScale &amp;amp;&amp;amp; objInt-&amp;gt;hasContext(pEnt,*pScale)){
                                    double scale  = 1; pScale-&amp;gt;getScale(scale);
                                    double pUnits = 1; pScale-&amp;gt;getPaperUnits(pUnits);
                                    double dUnits = 1; pScale-&amp;gt;getDrawingUnits(dUnits);
                                    AcString name; pScale-&amp;gt;getName(name);
                                    acutPrintf(_T("\nName = &amp;lt;%s&amp;gt; Scale = %g PaperUnits = %g DrawingUnits= %g"), 
                                        name.kACharPtr(), scale, pUnits, dUnits);
                                }
                            }
                        }
                        delete iter;
                    }
              }
          }
      }
    } else {
        acutPrintf(_T("\nNot annotative entity!"));
    }

}&lt;/PRE&gt;
&lt;P&gt;Minimum error checking done.&lt;/P&gt;
&lt;P&gt;ObjectARX SDK 2008 and 2009 has sample: &lt;EM&gt;&lt;STRONG&gt;samples\misc\AnnotationScaling&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;In order to download those old versions of ObjectARX SDK and &lt;SPAN class="short_text"&gt;&lt;SPAN class="hps"&gt;and see&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;this &lt;/SPAN&gt;&lt;/SPAN&gt;sample: &lt;A href="http://goo.gl/XtJ2x" target="_blank"&gt;http://goo.gl/XtJ2x&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 11 May 2012 12:38:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/objectarx-forum/how-to-get-annotative-scale-value-from-dimension/m-p/3453790#M14763</guid>
      <dc:creator>Alexander.Rivilis</dc:creator>
      <dc:date>2012-05-11T12:38:53Z</dc:date>
    </item>
  </channel>
</rss>

