资源简介
基于三角曲面网格实现测地线算法的matlab程序源码
代码片段和文件信息
function alpha = anglePoints3d(varargin)
%ANGLEPOINTS3D Compute angle between three 3D points
%
% ALPHA = anglePoints3d(P1 P2)
% Computes angle (P1 O P2) in radians between 0 and PI.
%
% ALPHA = anglePoints3d(P1 P2 P3)
% Computes angle (P1 P2 P3) in radians between 0 and PI.
%
% ALPHA = anglePoints3d(PTS)
% PTS is a 3x3 or 2x3 array containing coordinate of points.
%
% See also
% points3d angles3d
%
% ---------
% author : David Legland
% INRA - TPV URPOI - BIA IMASTE
% created the 21/02/2005.
%
% HISTORY
% 20/09/2005 : add case of single argument for all points
% 04/01/2007: check typo
p2 = [0 0 0];
if length(varargin)==1
pts = varargin{1};
if size(pts 1)==2
p1 = pts(1:);
p0 = [0 0 0];
p2 = pts(2:);
else
p1 = pts(1:);
p0 = pts(2:);
p2 = pts(3:);
end
elseif length(varargin)==2
p1 = varargin{1};
p0 = [0 0 0];
p2 = varargin{2};
elseif length(varargin)==3
p1 = varargin{1};
p0 = varargin{2};
p2 = varargin{3};
end
% ensure all data have same size
n1 = size(p1 1);
n2 = size(p2 1);
n0 = size(p0 1);
if n1~=n2
if n1==1
p1 = repmat(p1 [n2 1]);
elseif n2==1
p2 = repmat(p2 [n1 1]);
else
error(‘Arguments P1 and P2 must have the same size‘);
end
end
if n1~=n0
if n1==1
p1 = repmat(p1 [n0 1]);
elseif n0==1
p0 = repmat(p0 [n1 1]);
else
error(‘Arguments P1 and P0 must have the same size‘);
end
end
% normalized vectors
p1 = normalizeVector3d(p1-p0);
p2 = normalizeVector3d(p2-p0);
% compute angle
alpha = acos(dot(p1 p2 2));
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-06-30 15:51 geom3d\
目录 0 2011-06-30 15:51 geom3d\geom3d\
文件 1734 2010-08-11 22:13 geom3d\geom3d\anglePoints3d.m
文件 1710 2011-06-29 17:57 geom3d\geom3d\angles3d.m
文件 2035 2011-03-21 03:07 geom3d\geom3d\angleSort3d.m
文件 621 2010-07-26 22:00 geom3d\geom3d\box3dVolume.m
文件 671 2011-06-27 14:53 geom3d\geom3d\boxes3d.m
文件 1505 2008-10-13 22:15 geom3d\geom3d\cart2cyl.m
文件 1631 2011-06-29 17:57 geom3d\geom3d\cart2sph2.m
文件 1791 2011-06-29 17:57 geom3d\geom3d\cart2sph2d.m
文件 3400 2011-06-30 13:40 geom3d\geom3d\changelog.txt
文件 629 2010-07-29 18:07 geom3d\geom3d\changes.txt
文件 1013 2011-06-21 18:36 geom3d\geom3d\circle3dOrigin.m
文件 1307 2011-06-21 20:41 geom3d\geom3d\circle3dPoint.m
文件 1423 2011-06-29 17:57 geom3d\geom3d\circle3dPosition.m
文件 913 2011-06-22 14:51 geom3d\geom3d\circles3d.m
文件 2957 2011-03-21 03:07 geom3d\geom3d\clipLine3d.m
文件 1061 2011-03-21 03:07 geom3d\geom3d\clipPoints3d.m
文件 2567 2008-10-13 22:15 geom3d\geom3d\clipPolygon3dHP.m
文件 931 2011-03-21 03:07 geom3d\geom3d\composeTransforms3d.m
文件 11470 2011-06-29 21:57 geom3d\geom3d\Contents.m
文件 1785 2011-01-11 18:57 geom3d\geom3d\createBasisTransform3d.m
文件 1921 2011-06-20 19:30 geom3d\geom3d\createEulerAnglesRotation.m
文件 4579 2011-03-21 03:07 geom3d\geom3d\createLine3d.m
文件 3360 2011-05-27 21:16 geom3d\geom3d\createPlane.m
文件 1311 2010-08-11 22:13 geom3d\geom3d\createRotation3dLineAngle.m
文件 1865 2011-03-21 03:07 geom3d\geom3d\createRotationOx.m
文件 1969 2011-03-21 03:07 geom3d\geom3d\createRotationOy.m
文件 1878 2011-03-21 03:07 geom3d\geom3d\createRotationOz.m
文件 1869 2011-03-21 03:07 geom3d\geom3d\createScaling3d.m
文件 990 2011-03-21 03:07 geom3d\geom3d\createSphere.m
............此处省略174个文件信息
相关资源
- matlab实现读取视频并截取每帧然后保
- 基于MATLAB的LDPC码的仿真
- BP神经网络 拟合正弦曲线的
- 计算网络的平均路径长度
- 直方图均衡化及matlab实现
- Fusiello极线校正 - 论文和Matlab程序
- 应用 MATLAB实现连续信号的采样与重构
- 郭涛算法的MATLAB实现
- matlab 读取ply文档包括点、三角面和颜
- matlab编写prony算法
- 用matlab编写的二维最大熵和最小交叉
- matlab抛硬币仿真
- 计算欧式距离的matlab程序
- GMM的matlab实现集合
- 三相SVPWM整流Matlab仿真
- 使用MATLAB完成一个双轮差速驱动的移
- 基于matlab的车牌识别,采用的是BP神经
- 使用matlab的OFDM导频ls lmmse信道估计
- OFDM盲信道估计_基于子空间的盲信道估
-
使用MATLAB 2014a的Simuli
nk搭建的太阳能 - 灰色预测模型 MATLAB实现含具体数据
- 异步电机运行MATLAB仿真
- matlab函数大全
- ISARMATLAB仿真程序
- 基于matlab的车辆分类(更改图片集的
- 基于NSGAII多目标优化Matlab代码.zip
- matlab 矩阵增加一行或一列。
- Tikhonov正则化MATLAB程序
- 基于matlab的信号调频仿真
- 利用DOG算子实现图像特征提取中的角
评论
共有 条评论