В драфтинге создаю текст с выноской. Если его перемещать по Х относительно первой точки выноски, то выноска сама меняет ориентацию/направление.
А если к нему прикрепить снизу еще один текст с выноской и их обоих перемещать по Х, то верхняя выноска ориентацию меняет, а нижняя - нет.
Руками создаю два текста с выноской, получается тоже самое.
Верхний 1-2 руками создан, 9 - интерфейсами
Переместили налево, нижний текст с выноской в обеих случаях не поменялся
Есть ли возможность его сделать таким же гибким, как верхний???
Создаю оба текста примерно так:
- Код: Выделить всё
if (SUCCEEDED(piADrwFact->CreateDftText(endPoint,&piDftText)))
{
CATIDftElementWithLeader *spEltWithLeader = NULL;
if(SUCCEEDED( piDftText->QueryInterface(IID_CATIDftElementWithLeader, (void**) & spEltWithLeader) ) )
{
CATIDftLeader *iLeader;
SymbolType iSymbolType= NOTUSED;
if(SUCCEEDED(spEltWithLeader->AddLeader(0, startPoint, &iLeader, iSymbolType)))
{
if(SUCCEEDED(iLeader->AddPoint(2, endPoint)))
{
}
if(SUCCEEDED(iLeader->AddInterruption(startPoint, endPoint)))
{
}
}
}
}
Прикрепляю так:
- Код: Выделить всё
CATBaseUnknown* iDftText = NULL;
if(SUCCEEDED( piDftText->QueryInterface(IID_CATBaseUnknown, (void**) & iDftText) ) )
{
CATIDrwAnnotation *annot = NULL;
if(SUCCEEDED( piDftText1->QueryInterface(IID_CATIDrwAnnotation, (void**) & annot) ) )
{
//if(SUCCEEDED( annot -> SetAssociativeOrientation(iDftText,
// CATAssProjectingMode::Ass_Contour)))//Ass_ExtensionLine)))
//{
//}
double iDelta =0.0;
boolean iComputeDelta =TRUE;
if(SUCCEEDED( annot -> SetAssociativePosition(iDftText, iDelta, iComputeDelta, CATAssPositioningBehavior::Ass_Absolute,
CATAssProjectingMode::Ass_Contour)))
{
}
annot->Release(); annot=NULL;
}
if(SUCCEEDED(dLeader1 -> SetAssociativePosition(iDftText, CATAssPositioningBehavior::Ass_Absolute,
CATAssProjectingMode::Ass_ExtensionLine)))
{
}
iDftText->Release(); iDftText=NULL;
}
Там еще есть метод SetAssociativeOrientation, но походу это что-то не то...
Насколько понимаю, в зеленом кружочке - AnchorPoint. Надо бы к ней прикрепить нижнюю выноску.
AnchorPoint меняет свое положение при перемещении по Х. Неплохо бы, чтобы за ней следом нижняя выноска менялась
Заранее спасибо за любые намеки!!!