NX二次开发 UFUN获得曲线上的一点的坐标 UF_EVAL_evaluate 曲线和边缘都支持

468 篇文章 48 订阅 ¥399.90 ¥99.00

NX二次开发 UFUN获得曲线上的一点的坐标 UF_EVAL_evaluate 曲线和边缘都支持

//VS8.0+VS2010
#include <uf_curve.h>
#include <uf_obj.h>
#include <uf_modl.h>
#include <uf_eval.h>


//获得曲线上一点/获得边缘上一点/线上点/边上点(支持边缘或曲线)(param范围0.0 - 1.0)
bool AskCurvePoint(const tag_t object_tag, const double parm, double point[3])
{
	return AskCurveOnPoint(object_tag, parm, point);
}
bool AskCurveOnPoint(const tag_t object_tag, const double parm, double point[3])
{
	double limits[2] = { 0.0 }, derivatives[3] = { 0.0 }, value = 0.0;
	UF_EVAL_p_t evaluator = NULL;

	point[0] = 0.0;
	point[1] = 0.0;
	point[2] = 0.0;
	if (NULL_TAG == object_tag
		|| UF_EVAL_initialize(object_tag, &evaluator))
		return false;
	UF_EVAL_ask_limits(evaluator, limits);
	if (parm <= 0.0)
	{
		value = limits[0];
	}
	else if (parm >= 1.0)
	{
		value = limits[1];
	}
	else
	{
		value = fabs(limits[1] - limits[0]) * parm;
	}
	UF_EVAL_evaluate(evaluator, 1, value, point, derivatives);
	UF_EVAL_free(evaluator);
	return true;
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梅雷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值