您的位置首页百科问答

NX二次开发之Block Styler UI 之值传递(C++)

NX二次开发之Block Styler UI 之值传递(C++)

的有关信息介绍如下:

NX二次开发之Block Styler UI 之值传递(C++)

在应用NX Open API进行二次开发过程中,使用新的BlockStylerUI的方式创建UI,直接,方便,快捷。下面简要介绍NXOpen::BlockStyler::PropertyList类中常用块的值传递的方法。

枚举类型值传递:

intenumValue=this->enum0->GetProperties()->GetEnum("Value")

上式中enum0为对话框中设置的枚举ID;

"Value" 为相应属性名称;

表达式值传递

doubleexpDouble=this->expression0->GetProperties()->GetDouble("Value");

上式中expression0为对话框中设置的表达式ID;

"Value" 为相应属性名称;

点传递

Point3doriginPt=this->point0->GetProperties()->GetPoint("Point");

上式中point0为对话框中设置的点选择ID;

"Point"为相应属性名称;

矢量传递

Vector3dvec=this->vector0->GetProperties()->GetVector("Vector");

上式中vector0为对话框中设置的矢量ID;

"Vector"为相应属性名称;

体选择传递

std::vectorobjects=this->bodySelect0->GetProperties()->GetTaggedObjectVector("SelectedObjects");

Body*body=dynamic_cast(objects);

由于返回的是TaggedObject类型的一个vector,故需进行类型转换。

坐标系传递

std::vectorcoordObjects=this->coordSystem->GetProperties()->GetTaggedObjectVector("SelectedObjects");

NXOpen::CartesianCoordinateSystem*coord=dynamic_cast(coordObjects);

由于返回的是TaggedObject类型的一个vector,故需进行类型转换。

轴传递

vectorselectedObjects=this->axis->GetProperties()->GetTaggedObjectVector("SelectedObjects"); Axis*axis1=dynamic_cast(selectedObjects);

由于返回的是TaggedObject类型的一个vector,故需进行类型转换。