NX二次开发—NXopen方式获取非切削移动参数

在NX Open程序中设置非切削参数可以通过以下步骤完成:
1.获取操作对象。如果您要设置零件的非切削参数,则需要获取Par对象。如果您要设置工艺操作的非切削参数,则需要获取
Operation对象。
2.获取非切削参数对象。使用操作对象的GetNonCuttingData方法获取NonCuttingData对象。
3.设置非切削参数。使用NonCutingData对象的各种属性和方法设置所需的非切削参数。例如,您可以使用NonCutingData对象的
SetRetractDistance方法设置撤退距离。




	NXOpen::Session* theSession = NXOpen::Session::GetSession();
	NXOpen::Part* workPart(theSession->Parts()->Work());
	NXOpen::Part* displayPart(theSession->Parts()->Display());
	//获取UI选中的工序
	std::vector<NXOpen::TaggedObject*> Sel_Oper = Sel_Operation0->GetSelectedObjects(); //通过UI得到选中的工序
	NXOpen::CAM::PlanarMilling* planarMilling1(dynamic_cast<NXOpen::CAM::PlanarMilling*>((NXOpen::NXObjectManager::Get(Sel_Oper[0]->Tag()))));

	theSession->CAMSession()->PathDisplay()->ShowToolPath(planarMilling1);

	NXOpen::CAM::PlanarMillingBuilder* planarMillingBuilder1;
	planarMillingBuilder1 = workPart->CAMSetup()->CAMOperationCollection()->CreatePlanarMillingBuilder(planarMilling1);

	//进刀类型设置
	NXOpen::CAM::NcmPlanarEngRetBuilder::EngRetTypes Closed_EngagyType = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->EngRetType();

	//直径
	double Closed_Diameter = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->DiameterBuilder()->Value();

	//直径单位
	NXOpen::CAM::ParamValueIntent Diameter_units = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->DiameterBuilder()->Intent();

	//斜坡角
	double Closed_Ramp_Angle = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->HelicalRampAngleBuilder()->Value();

	//高度
	double Closed_Height = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->HeightBuilder()->Value();

	//高度单位
	NXOpen::CAM::ParamValueIntent Closed_Height_units = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->HeightBuilder()->Intent();

	//高度起点
	NXOpen::CAM::NcmPlanarEngRetBuilder::MeasureHeightFrom Height_from = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->HeightFrom();

	//最小安全距离
	double Closed_Minimum_Clearance = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->MinClearanceBuilder()->Value();

	//最小安全距离单位
	NXOpen::CAM::ParamValueIntent Minimum_Clearance_units =planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->MinClearanceBuilder()->Intent();

	//最小斜坡长度
	double Closed_Minimum_Ramp_Length =planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->MinRampLengthBuilder()->Value();
	
	//最小斜坡长度单位
	NXOpen::CAM::ParamValueIntent  Closed_Minimum_Ramp_Length_units = planarMillingBuilder1->NonCuttingBuilder()->EngageClosedAreaBuilder()->MinRampLengthBuilder()->Intent();



	print("进刀类型");
	print(Closed_EngagyType);
	print("直径");
	print(Closed_Diameter);
	print("直径单位");
	print(Diameter_units);
	print("斜坡角");
	print(Closed_Ramp_Angle);
	print("高度");
	print(Closed_Height);
	print("高度单位");
	print(Diameter_units);
	print("高度起点");
	print(Height_from);
	print("最小安全距离");
	print(Closed_Minimum_Clearance);
	print("最小安全距离单位");
	print(Minimum_Clearance_units);
	print("最小斜坡长度");
	print(Closed_Minimum_Ramp_Length);
	print("最小斜坡长度单位");
	print(Closed_Minimum_Ramp_Length_units);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值