<?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: Filtering - Dynamic Blocks in .NET Forum</title>
    <link>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/1652167#M81631</link>
    <description>&lt;DIV id="jive-html-wrapper-div"&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;FONT face="Arial" size="2"&gt;Now i tried this code, didn't work, &lt;BR /&gt;
too.&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;PRE&gt;&lt;FONT size="2"&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;[] filList = {&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;(-4, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"&amp;lt;AND"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;((&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;DxfCode&lt;/FONT&gt;&lt;FONT size="2"&gt;.ExtendedDataRegAppName, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"AcDbDynamicBlockTrueName"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;((&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;DxfCode&lt;/FONT&gt;&lt;FONT size="2"&gt;.ExtendedDataAsciiString, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"GTP*"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;(-4, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"AND&amp;gt;"&lt;/FONT&gt;&lt;FONT size="2"&gt;)};&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;BR /&gt;-- &lt;BR /&gt;Roland Feletic&lt;BR /&gt;Ingenieurbuero A. Pauser Ges.m.b.H.&lt;BR /&gt;&lt;A&gt;&lt;BR /&gt;
href="http://www.pauser.at"&amp;gt;http://www.pauser.at&lt;/A&gt;&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;hp workstation xw4200, 3GB&lt;BR /&gt;quadro fx1400&lt;BR /&gt;AutoCAD 2007, 3DSMax 8.0 SP &lt;BR /&gt;
2&lt;/DIV&gt;
&lt;/DIV&gt;</description>
    <pubDate>Tue, 23 May 2006 15:23:43 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2006-05-23T15:23:43Z</dc:date>
    <item>
      <title>Filtering - Dynamic Blocks</title>
      <link>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/1652166#M81630</link>
      <description>&lt;DIV id="jive-html-wrapper-div"&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;FONT face="Arial" size="2"&gt;I tried to filter Blocks with this &lt;BR /&gt;
code&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;PRE&gt;&lt;FONT size="2"&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;[] filList = {&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;(-4, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"&amp;lt;AND"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;((&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;DxfCode&lt;/FONT&gt;&lt;FONT size="2"&gt;.Start, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"INSERT"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;((&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;DxfCode&lt;/FONT&gt;&lt;FONT size="2"&gt;.BlockName, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"GTP*"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;(-4, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"AND&amp;gt;"&lt;/FONT&gt;&lt;FONT size="2"&gt;)};&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;BR /&gt;
&lt;DIV&gt;This works without any problems with nomal Blockreferences, but if there &lt;BR /&gt;
are Dynamic Blocks and you change a parameter the filter does not work anymore. &lt;BR /&gt;
Is it possible to filter for the effective name?&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;FONT face="Arial" size="2"&gt;-- &lt;BR /&gt;Roland Feletic&lt;BR /&gt;Ingenieurbuero A. &lt;BR /&gt;
Pauser Ges.m.b.H.&lt;BR /&gt;&lt;/FONT&gt;&lt;A href="http://www.pauser.at"&gt;&lt;FONT face="Arial"&gt;&lt;BR /&gt;
size=2&amp;gt;http://www.pauser.at&lt;/FONT&gt;&lt;/A&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;hp workstation xw4200, 3GB&lt;BR /&gt;quadro &lt;BR /&gt;
fx1400&lt;BR /&gt;AutoCAD 2007, 3DSMax 8.0 SP 2&lt;/FONT&gt;&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 May 2006 09:57:54 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/1652166#M81630</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2006-05-23T09:57:54Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering - Dynamic Blocks</title>
      <link>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/1652167#M81631</link>
      <description>&lt;DIV id="jive-html-wrapper-div"&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;FONT face="Arial" size="2"&gt;Now i tried this code, didn't work, &lt;BR /&gt;
too.&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;PRE&gt;&lt;FONT size="2"&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;[] filList = {&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;(-4, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"&amp;lt;AND"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;((&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;DxfCode&lt;/FONT&gt;&lt;FONT size="2"&gt;.ExtendedDataRegAppName, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"AcDbDynamicBlockTrueName"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;((&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;int&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;DxfCode&lt;/FONT&gt;&lt;FONT size="2"&gt;.ExtendedDataAsciiString, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"GTP*"&lt;/FONT&gt;&lt;FONT size="2"&gt;), &lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;new&lt;/FONT&gt;&lt;FONT size="2"&gt; &lt;/FONT&gt;&lt;FONT color="#008080" size="2"&gt;TypedValue&lt;/FONT&gt;&lt;FONT size="2"&gt;(-4, &lt;/FONT&gt;&lt;FONT color="#800000" size="2"&gt;"AND&amp;gt;"&lt;/FONT&gt;&lt;FONT size="2"&gt;)};&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;BR /&gt;-- &lt;BR /&gt;Roland Feletic&lt;BR /&gt;Ingenieurbuero A. Pauser Ges.m.b.H.&lt;BR /&gt;&lt;A&gt;&lt;BR /&gt;
href="http://www.pauser.at"&amp;gt;http://www.pauser.at&lt;/A&gt;&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;hp workstation xw4200, 3GB&lt;BR /&gt;quadro fx1400&lt;BR /&gt;AutoCAD 2007, 3DSMax 8.0 SP &lt;BR /&gt;
2&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 May 2006 15:23:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/1652167#M81631</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2006-05-23T15:23:43Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering - Dynamic Blocks</title>
      <link>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/3642402#M81632</link>
      <description>&lt;P&gt;Did you ever find an answer to this. I am having same problem and I am stuck&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 02 Oct 2012 11:52:12 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/3642402#M81632</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-10-02T11:52:12Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering - Dynamic Blocks</title>
      <link>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/3642490#M81633</link>
      <description>&lt;P&gt;Try this one&lt;/P&gt;&lt;PRE&gt;     static public string EffectiveName(Transaction tr, BlockReference bref)
        {
            BlockTableRecord btr = null;

            if ((bref.IsDynamicBlock) | (bref.Name.StartsWith("*U", StringComparison.InvariantCultureIgnoreCase)))
            {
                btr = tr.GetObject(bref.DynamicBlockTableRecord, OpenMode.ForRead) as BlockTableRecord;
            }
            else
            {
                btr = tr.GetObject(bref.BlockTableRecord, OpenMode.ForRead) as BlockTableRecord;
            }
            return btr.Name;
        }
        [CommandMethod("dyb", CommandFlags.Modal)]
        public static void SelectDynamicBlocks()
        {
            Document dwg = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
            Editor ed = dwg.Editor;
            Database db = dwg.Database;
            ObjectIdCollection ids = new ObjectIdCollection();
            string blkname = "wall";
            using (Transaction tr = db.TransactionManager.StartTransaction())
            {
           
                TypedValue[] tvs = new TypedValue[]
            {new TypedValue(0, "insert"),
                new TypedValue(2, "*,`*U*,wall")
            };
                SelectionFilter filter = new SelectionFilter(tvs);
                PromptSelectionOptions pso = new PromptSelectionOptions();
                pso.MessageForRemoval = "\nSelect blocks only";
                pso.MessageForAdding = "\nSelect dynamic blocks: ";
                pso.RejectObjectsOnLockedLayers = true;
                pso.AllowSubSelections = false;
                pso.AllowDuplicates = false;
                
                PromptSelectionResult result = ed.GetSelection(pso, filter);
                if (result.Status == PromptStatus.OK)
                {
                    ObjectId[] objs = result.Value.GetObjectIds();
                    ed.WriteMessage("\n{0}", objs.Length.ToString());
                    foreach (SelectedObject sobj in result.Value)
                    {
                        Entity ent = (Entity)tr.GetObject(sobj.ObjectId, OpenMode.ForRead, false);
                        BlockReference bref = ent as BlockReference;
                        if (bref != null)
                        {
                            if (EffectiveName(tr, bref) == blkname)
                            {
                                ids.Add(sobj.ObjectId);
                            }
                        }

                    }
                    Autodesk.AutoCAD.ApplicationServices.Application.ShowAlertDialog(
                        string.Format("Selected: {0} blocks named \"{1}\"",ids.Count,blkname));
                }
                tr.Commit();
            }
        }&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tested on A2010,2009&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#800000"&gt;~'J'~&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 02 Oct 2012 12:27:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/3642490#M81633</guid>
      <dc:creator>Hallex</dc:creator>
      <dc:date>2012-10-02T12:27:04Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering - Dynamic Blocks</title>
      <link>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/3642578#M81634</link>
      <description>&lt;P&gt;Kean walmsley recently wrote an article on this topic, implementing both XData and the BlockTableRecord's list of anonymous references.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A target="_blank" href="http://through-the-interface.typepad.com/through_the_interface/2012/09/creating-a-selection-filter-that-finds-dynamic-blocks-in-autocad-using-net.html"&gt;http://through-the-interface.typepad.com/through_the_interface/2012/09/creating-a-selection-filter-that-finds-dynamic-blocks-in-autocad-using-net.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 02 Oct 2012 13:06:03 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/net-forum/filtering-dynamic-blocks/m-p/3642578#M81634</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-10-02T13:06:03Z</dc:date>
    </item>
  </channel>
</rss>

