Здравствуйте.
Перевожу своё приложение из .NET API для автокада в ObjectArx на Mac OS. Столкнулся с определенным вопросом, связанным с расположением AttributeDefinition
pAttDef->setTag(wtag.c_str());
pAttDef->setLayer(wlayer.c_str());
pAttDef->setTextString(wtext.c_str());
pAttDef->setHeight(height);
pAttDef->setVisibility(invisible ? AcDb::kInvisible : AcDb::kVisible);
pAttDef->setLockPositionInBlock(true);
pAttDef->setHorizontalMode(AcDb::kTextCenter);
pAttDef->setAlignmentPoint(position);
Данный кусок у меня создает AcDbAttribute
AcDbAttribute* pAtt = new AcDbAttribute();
pAtt->setPropertiesFrom(pAttDef);
AcGePoint3d attPos = pAttDef->position();
attPos += pBlkRef->position().asVector();
pAtt->setPosition(attPos);
pAtt->setHeight(pAttDef->height());
pAtt->setTag(pAttDef->tag());
pAtt->setTextString(pAttDef->textString());
Acad::ErrorStatus es = pBlkRef->appendAttribute(pAtt);
if (es != Acad::eOk) {
pAtt->erase();
}
pAtt->close();
Данный код размещает все, как нужно, но Alignment Point сдвинут влево. То есть, если я надумаю руками поменять значение атрибута потом, он у меня сдвинется. Пример на картинке.

Подскажите, пожалуйста, есть ли возможность, чтобы при изменении значения атрибута текст был центрирован?
Второй вопрос, это почему у меня так много grip points? для сравнения этот же блокреференс из .NET? (На ширину внимания не обращайте).
Заранее спасибо и буду очень благодарен за любой пинок в правильном направлении.
