CATIA V5 C # как получить AxisSystem из активного документа - PullRequest
0 голосов
/ 08 марта 2019

Я пытаюсь update XAxis на Active CATIA документе, используя C#.Кто-нибудь знает, как это сделать?somehowGetActiveAxisSysObject() - это placeholder в псевдокоде:

                Array xMatrix = Array.CreateInstance(typeof(double), 3);
                xMatrix.SetValue(5.0, 0);
                xMatrix.SetValue(0.0, 1);
                xMatrix.SetValue(0.0, 2);
                MECMOD.AxisSystem targetAxisSys = **somehowGetActiveAxisSysObject();**
                targetAxisSys.PutXAxis(xMatrix);

СПАСИБО!

1 Ответ

0 голосов
/ 05 апреля 2019

Прошло много времени с тех пор, как я работал с Catia в C #, поэтому приведенный ниже код может работать некорректно.

Во-первых, я предполагаю, что вы работаете с документом детали и что вы создали систему координат из меню: Insert->AxisSystems->AxisSystem (или назвали что-то похожее). Далее я также предполагаю, что вы вошли в свойства этого элемента и переименовали его в «Ларри».

MECMOD.AxisSystems thisPartsAxisSysCollection = (MECMOD.AxisSystems)Part.AxisSystems;
MECMOD.AxisSystem oneAxisSys = thisPartsAxisSysCollection(1); //Index is name unknown
//or
MECMOD.AxisSystem oneAxisSys = thisPartsAxisSysCollection("Larry");
oneAxisSys.PutXAxis("your data");

Если это не то, что вы пытаетесь сделать, а вместо этого пытаетесь переместить источник детали, тогда вам нужно получить доступ к Part.OriginElements и использовать PlaneXY, PlaneYZ, and PlaneZX этого объекта. К сожалению, они читаются только если я правильно помню.

...