.NET

Reply
Valued Contributor
Ertqwa
Posts: 88
Registered: ‎10-03-2011
Message 1 of 2 (319 Views)
Accepted Solution

Insert wblock - annotative

319 Views, 1 Replies
01-19-2012 01:00 PM

Hello forum,

 

I use the following code to insert a wblock:

 

using (dbInsert = new Database(false, true))
{
    dbInsert.ReadDwgFile(strDwgPath, System.IO.FileShare.Read, true, "");
    oidInsert = dbActive.Insert(System.IO.Path.GetFileNameWithoutExtension(strDwgPath), dbInsert, true);
}

 Works as it should, and I can create a reference and use it. But when strDwgPath is an annotative block, it is inserted as a non-annotative block (BlockReference.Annotative == false).

 

I can use the following code, but then ALL blocks are inserted as annotative:

 

// Get the new blocktablerecord.
btrInsert = transActive.GetObject(oidInsert, OpenMode.ForWrite) as BlockTableRecord;
btrInsert.Annotative = AnnotativeStates.True;

 

How am I suppose to insert a wblock so annotative wblocks will be annotative and non-annotatives wont be?

 

Thank you.

Active Contributor
cincir
Posts: 32
Registered: ‎08-12-2011
Message 2 of 2 (315 Views)

Re: Insert wblock - annotative

01-19-2012 01:51 PM in reply to: Ertqwa

 

bool bIsAnnotative = false;

using (dbInsert = new Database(false, true))
{
    dbInsert.ReadDwgFile(strDwgPath, System.IO.FileShare.Read, true, "");
    oidInsert = dbActive.Insert(System.IO.Path.GetFileNameWithoutExtension(strDwgPath), dbInsert, true);
    bIsAnnotative = dbInsert.AnnotativeDrawing;
}

 

will help you i think. then

 

// Get the new blocktablerecord.
btrInsert = transActive.GetObject(oidInsert, OpenMode.ForWrite) as BlockTableRecord;
if (bIsAnnotative)
    btrInsert.Annotative = AnnotativeStates.True;

 


 


You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

Announcements
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.

Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Ask the Community