• Industries
  • Products
  • Buy
  • Services & Support
  • Communities
  • Discussion Groups

    .NET

    Reply
    Valued Contributor
    Ertqwa
    Posts: 73
    Registered: ‎10-03-2011
    Accepted Solution

    Changing position of AttributeDefinition

    152 Views, 4 Replies
    12-18-2012 01:16 AM

    Hello Forum,

     

    I am trying to change the position of an AttributeDefinition in a block, but it nothing is changed:

     

    foreach (ObjectId oidAttribute in btrBlock)
    {
        adOrg = taTransaction.GetObject(oidAttribute, OpenMode.ForRead) as AttributeDefinition;
        if (adOrg != null)
        {
                adOrg.UpgradeOpen();
                adOrg.Position = new Point3d(0, 0, 0);
                // Break;
                break;
        }
        adOrg = null;
    }
    ...
    Commit();

     What is wrong? How do I change the position?

     

    Thank you.

    Please use plain text.
    Valued Contributor
    Posts: 71
    Registered: ‎09-26-2007

    Re: Changing position of AttributeDefinition

    12-18-2012 03:54 AM in reply to: Ertqwa

    Don't forget to go back thru the blockreferenceid's and update all the block references with the new difinition.

     

    After you change the difinition insert a new block.  you will see the new position.  But, the old block references do not have that position.

    Please use plain text.
    Distinguished Contributor
    khoa.ho
    Posts: 131
    Registered: ‎09-15-2011

    Re: Changing position of AttributeDefinition

    12-18-2012 06:42 AM in reply to: Ertqwa

    Hi,

     

    Attribute definition and reference are derived classes of DBText, which has two parameters to define its location (Position and AlignmentPoint). The alignment of the text may need to be updated after changing its content, which relates to middle/right horizontal/vertical alignment and font style. To update the text alignment, you need to manually set AlignmentPoint property or call attributeDefinition.AdjustAlignment(HostApplicationServices.WorkingDatabase)

     

    -Khoa

     

    Please use plain text.
    Valued Contributor
    Ertqwa
    Posts: 73
    Registered: ‎10-03-2011

    Re: Changing position of AttributeDefinition

    12-22-2012 06:01 AM in reply to: michael.vanhoose

    Hi,

     

    True, but my problem was that I had to change AlignmentPoint.

     

    Thank you for the response.

    Please use plain text.
    Valued Contributor
    Ertqwa
    Posts: 73
    Registered: ‎10-03-2011

    Re: Changing position of AttributeDefinition

    12-22-2012 06:02 AM in reply to: khoa.ho

    Hi,

     

    Yes changing AlignmentPoint does the trick.

     

    Thanks!

    Please use plain text.