【UG\NX二次开发】圆弧数据(圆心),弧度、角度转换

UF_CURVE_arc_t arc_coords;
UF_CURVE_ask_arc_data(edge_tag, &arc_coords);

//arc_coords.arc_center是arc_coords.matrix_tag下的坐标值
double douMatrixValue[9];
UF_CSYS_ask_matrix_values(arc_coords.matrix_tag, douMatrixValue);
double douPoint[3];//转绝对坐标下的圆心
UF_MTX3_vec_multiply_t(arc_coords.arc_center, douMatrixValue,douPoint);

//弧度转角度
double angle = (arc_coords.end_angle - arc_coords.start_angle) / DEGRA;
if(angle < 89.9999)
{
    //不足四分之一圆
}


//斜边求对边
double trigonometry_c_get_a(double c, double angle)
{
	return sin(angle * PI / 180)*c;
}
//斜边求邻边
double trigonometry_c_get_b(double c, double angle)
{
	return cos(angle * PI / 180)*c;
}
//对边求斜边
double trigonometry_a_get_c(double a, double angle)
{
	return a / sin(angle * PI / 180);
}
//对边求邻边
double trigonometry_a_get_b(double a, double angle)
{
	return tan((90 - angle) * PI / 180)*a;
}
//对边斜边求角度
double trigonometry_get_angle(double a,double c)
{
	double zhi = a / c;
	return asin(zhi) / PI * 180;
}
//对边邻边求角度
double trigonometry_get_angle1(double a, double b)
{
	double zhi = a / b;
	return atan(zhi) / PI * 180;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

社恐猫

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

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

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

打赏作者

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

抵扣说明:

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

余额充值