NX二次开发之Block Styler UI 之值传递(C++)
1、枚举类型值传递:帽珠争
int enumValue = this->enum0->GetProperties()->GetEnum("Value")
上式中enum0为对话框中设置的枚举ID;
"Value" 为相应属性名称;
2、表达式值传递
double expDouble = this->expression0->GetProperties()->GetDouble("Value");
上式中expression0为对话框中设置的表达式ID;
"Value" 为相应属性名称;
3、点传递
Point3d originPt = this->point0->GetProperties()->GetPoint("Point");
上式中point0为对话框中设置的点选择ID;
"Point" 为相应属性名称;
4、矢量传递
Vector3d vec = this -> vector0->GetProperties()->GetVector("Vector");
上式中vector0为对话框中设置的矢量ID;
"Vector" 为相应属性名称;
5、体选择传递
std::vector<TaggedObject*>objects=this->bodySelect0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
Body *body = dynamic_cast<Body *>(objects[0]);
由于返回的是TaggedObject类型的一个vector,故需进行类型转换。
6、坐标系传递
std::vector<NXOpen::TaggedObject*>coordObjects = this->coordSystem->国泰GetProperties()->GetTaggedObjectVector("SelectedObjects");
NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);
由于返回的是TaggedObject类型的一个vector,故需进行类型转换。
7、轴传递
vector<TaggedObject*>selectedObjects=this->axis->GetProperties()->率始GetTaggedObjectVector("SelectedObjects"); Axis *axis1 = dynamic_cast<Axis *>(selectedObjects[0]);
由于返回的是TaggedObject类型的一个vector,故需进行类型转换。