求解多条直线与被测基准面XOY的交点的坐标
程序员文章站
2022-04-03 23:19:01
...
求解多条直线与被测基准面XOY的交点的坐标
clc;clear all;close all
syms x y z t
P=[7 2 3;
12 12 3;
2 12 3];%定义固定点
L=[1.05 1.06 1.07;
1.01 1.02 1.03;
1.04 1.05 1.06];%定义过固定点的直线向量,第一行对应第一固定点,以此类推
A=[1 0 0 -10
0 1 0 -10
0 0 1 -10
0 0 0 1];%定义被测基准块在测量系中的位姿,包含三个基准面的法向量信息分别为:
% XOY面:[0 0 1],XOZ面:[0 1 0],YOZ面:[1 0 0],以及各平面的交点,也是坐标系的原点[-10 -10 10]
P1=zeros(3,3);%预设参数给交点
for i=1:3
f1=A(1,3)*(x-A(1,4))+A(2,3)*(y-A(2,4))+A(3,3)*(z-A(3,4));% 被测基准面XOY表达式
f2(i)=subs(f1,{x,y,z},{L(i,1)*t+P(i,1),L(i,2)*t+P(i,2),L(i,3)*t+P(i,3)});%调用subs函数
tt(i)=double(root(f2(i),t));% 求解参数tt
P1(i,:)=L(i,:)*tt(i)+P(i,:)%求解直线Li与被测基准面XOY的交点的坐标
end
计算结果:
P1 =
-5.7570 -10.8785 -10.0000
-0.7476 -0.8738 -10.0000
-10.7547 -0.8774 -10.0000
上一篇: python 解方程
下一篇: 根据参数,画矩形