% 立方体范围内找点

X = [8028.14600000000        3378.20500000000        36.5120000000000

8028.22800000000        3378.18000000000        36.5260000000000

8028.80400000000        3377.69100000000        36.5000000000000

8028.10600000000        3378.32300000000        36.5150000000000

8028.81300000000        3377.81500000000        36.4950000000000

8028.95100000000        3377.74100000000        36.5120000000000

8029.00100000000        3377.74200000000        36.5140000000000

8028.99800000000        3377.79100000000        36.4990000000000

8028.93900000000        3377.88200000000        36.4940000000000

8029.02600000000        3377.85100000000        36.4920000000000

8029.27900000000        3378.02700000000        36.5010000000000

8029.38400000000        3378.06900000000        36.4930000000000

8029.41500000000        3378.13300000000        36.5040000000000

8029.45200000000        3378.14400000000        36.5040000000000

8029.17900000000        3378.36500000000        36.4820000000000

8029.46800000000        3378.17400000000        36.5220000000000

8029.30700000000        3378.30500000000        36.4950000000000

8029.45000000000        3378.23100000000        36.5110000000000

8029.30900000000        3378.34500000000        36.4840000000000

8029.48300000000        3378.24600000000        36.5160000000000

8029.49600000000        3378.27700000000        36.5060000000000

8029.58200000000        3378.29100000000        36.4970000000000

8026.79200000000        3379.27600000000        36.5170000000000

8026.19900000000        3379.86100000000        36.5100000000000

8026.33400000000        3379.78700000000        36.5200000000000

8026.12900000000        3379.96100000000        36.5000000000000

8026.27400000000        3379.87500000000        36.5080000000000];

X = repmat(X,100000,1); % 矩阵扩充100000倍

targetPt = X(3,:); % 选取第三个点为目标点

r = 0.5; % 半径为0.5

% 立方体

tic;

xyzMin = targetPt - r;

xyzMax = targetPt + r;

xInBox = (X(:,1) >= xyzMin(1) & X(:,1)<= xyzMax(1) );

yInBox = (X(:,2) >= xyzMin(2) & X(:,2)<= xyzMax(2) );

zInBox = (X(:,3) >= xyzMin(3) & X(:,3)<= xyzMax(3) );

ptsInBox = xInBox & yInBox & zInBox;

allPtsInBox = X(ptsInBox,:);

toc;

% 立方体(循环方法,优点:慢到没朋友!)

% tic;

% nRows = size(X,1);

% xyzMin = targetPt - r;

% xyzMax = targetPt + r;

%

% allPtsInBox = [];

% % ptsInBox = zeros(nRows,1);

% for i = 1:nRows

%     if (X(i,1) >= xyzMin(1) && X(i,1)<= xyzMax(1))

%         if (X(i,2) >= xyzMin(2) && X(i,2)<= xyzMax(2) )

%             if (X(i,3) >= xyzMin(3) && X(i,3)<= xyzMax(3) )

%                 allPtsInBox = [allPtsInBox; X(i,:)];

% %                 ptsInBox(i) = 1;

%             end

%         end

%     end

% end

% toc;

% 球体

tic;

tarPtMat = repmat(targetPt,size(X,1),1);

distP2PMat = sqrt(sum((X - tarPtMat).^2,2));

ptsInSphere = find(distP2PMat <= r);

allPtsInSphere = X(ptsInSphere,:);

toc;

matlab求半径范围内的点,matlab怎么快速搜索距离某点球形范围内的所有点相关推荐

  1. matlab求z变换的tat,用matlab求z变换感悟

    如何用matlab实现Z变换 答:h = tf([1 0] , [1 1 1]); zh = c2d(h, 0. 00005,'zoh') [num den] = tfdata(zh, 'v') [z ...

  2. 利用matlab求零输入响应波形,实验3 利用matlab求LTI连续系统的响应

    实验3 利用matlab求LTI连续系统的响应 一. 实验目的: 1. 了解LTI系统的冲激响应h(t)及matlab实现: 2. 了解LTI系统的阶跃响应g(t)及matlab实现: 3. 了解LT ...

  3. matlab求多元函数的极小值,[转载]利用MATLAB求多元函数的极值(2)

    利用MATLAB求多元函数的极值分两种情况,(1)无约束条件:(2)有约束条件. (2)有约束条件下求极小值的方法: 假设多变量非线性函数的数学模型为 min f(x) c(x)<=0 ceq( ...

  4. MATLAB求二阶隐函数导数,如何用matlab对隐函数求导? 值得收藏

    隐函数求导一般都比较繁琐,下面介绍一下 如何用matlab对隐函数求导,这样一来我们就可以解放双手,轻松求解隐函数的导数. 工具/材料 matlab软件 正常运行电脑 操作方法 01 matlab求导 ...

  5. matlab求信号的瞬时相位,phrase MATLAB中关于信号瞬时相位 频率的提取的代码,值得学习,很实用 267万源代码下载- www.pudn.com...

    文件名称: phrase下载  收藏√  [ 5  4  3  2  1 ] 开发工具: matlab 文件大小: 2403 KB 上传时间: 2014-05-06 下载次数: 94 提 供 者: 杨 ...

  6. matlab求一个数的位数字,matlab求一个三位整数各位数字的立方和等于该数本身则称为...

    用C语言随机产生一个三位整数 思路:分别产生个.十.百位上的随机数,依次组合在一起#include#include#includeintmain(){inti,tmp;num=0;srand((uns ...

  7. 用matlab求上三角矩阵的逆,现代科学运算—MATLAB语言与应用-中国大学mooc-题库零氪...

    第1章 绪论 01-01 本课程的主要内容随堂测验 1. 2. 01-02 为什么学习计算机数学语言随堂测验 1. 2. 01-03 解析解与数值解随堂测验 1. A. B. C. D. 2. 01- ...

  8. matlab 求函数绝对值,概率密度函数估计matlab命令 A a abs 绝对值、(4)

    isnumeric 若是数值数组则为真 isobject 若是对象则为真 isprime 若是质数则为真 isreal 若是实数则为真 isspace 若是空格则为真 issparse 若是稀疏矩阵则 ...

  9. matlab求示功图面积,基于MATLAB的示功图模拟研究.pdf

    基于MATLAB的示功图模拟研究 第 期 内燃机 6 No. 6 年 月 Internal Combustion Engines 2009 12 Dec. 2009 基于MATLAB 的示功图模拟研究 ...

最新文章

  1. Git 版本还原命令
  2. Confluence 6 那些文件需要备份
  3. VB.NET(2005)中关于dll调用的错误信息(转)
  4. ffmpeg库编译加文字_ffmpeg第三方库编译记录
  5. 一文详解超参数调优方法
  6. SQL 语句递归查询 With AS 查找所有子节点
  7. JS动态添加span等标签
  8. Java 11:运行单文件程序和“ shebang”脚本
  9. 微信开发博客——柳峰
  10. 网络运维常见交换机故障
  11. 用Atlas来实现一个基于AJAX的无刷新Chatroom
  12. FFmpeg 硬件加速介绍
  13. android 界面置顶,Android实现界面滚动时顶部部分内容置顶(附源码)
  14. python结巴分词去掉虚词_jieba中文处理 python
  15. 一帮一 分数 15作者 陈越单位 浙江大学
  16. 【Unity gradle打android包网络连接超时错误 connec xxx ttime out】
  17. Word2016安装MathType流程及“53”.wll文件未找到错误解决办法
  18. 元宇宙时代的5大风险
  19. 关于IDEL中出现No module named requests错误
  20. e5430支持服务器内存,手贱!入手了逆天护舒宝771四核E5430平台,再战IGAME GTX650TI BOOST...

热门文章

  1. python中bytearray函数_Python内置函数bytearray()
  2. Spring Data Jpa 不打印sql参数
  3. java判断两线段是否相交
  4. SQL查询成绩前3的student
  5. linux bogomips,内核探索:Linux BogoMips 探秘
  6. in作为介词的用法_(完整版)介词in重要用法归纳
  7. java字符串去掉html标签
  8. CircularFifoQueue队列API
  9. Redis持久化与过期机制
  10. zabbix提示错误:zabbix server is not running: the information displayed may not be current