基本概念:

希尔伯特曲线是一种能填充满一个平面正方形的分形曲线(空间填充曲线),由大卫·希尔伯特在1891年提出。由于它能填满平面,它的豪斯多夫维是2。取它填充的正方形的边长为1,第n步的希尔伯特曲线的长度是2n

- 2-n。

L系统记法:

变量: L, R

常数: F, +, - (F:向前,-:右转90°,+:左转90°)

公理: L

规则:L → +RF-LFL-FR+   R → LF+RFR+FL

用matlab画希尔伯特曲线的程序:

function [x,y] = hilbert(n)

%HILBERT Hilbert curve.

%source:http://www.mathworks.com/matlabcentral/fileexchange/4646,2010.11.20

% [x,y]=hilbert(n) gives the vector coordinates of points

% in n-th order Hilbert curve

of area 1.

% Example: plot of 5-th order curve

% [x,y]=hilbert(5);line(x,y)

% Copyright (c) by Federico

Forte

% Date: 2000/10/06

if n<=0

x=0;

y=0;

else

[xo,yo]=hilbert(n-1);

x=.5*[-.5+yo -.5+xo .5+xo .5-yo];

y=.5*[-.5+xo .5+yo .5+yo

-.5-xo];

end

程序的运行:

[x,y]=hilbert(1);subplot(3,3,1),line(x,y)

[x,y]=hilbert(2);subplot(3,3,2),line(x,y)

[x,y]=hilbert(3);subplot(3,3,3),line(x,y)

[x,y]=hilbert(4);subplot(3,3,4),line(x,y)

[x,y]=hilbert(5);subplot(3,3,5),line(x,y)

[x,y]=hilbert(6);subplot(3,3,6),line(x,y)

[x,y]=hilbert(7);subplot(3,3,7),line(x,y)

[x,y]=hilbert(7);subplot(3,3,8),line(x,y)

[x,y]=hilbert(8);subplot(3,3,9),line(x,y)

画出的图像:

hilbert曲线序编码matlab,[转载]希尔伯特曲线及其matlab画法相关推荐

  1. 希尔伯特曲线的绘制c语言,[转载]希尔伯特曲线及其matlab画法

    基本概念: 希尔伯特曲线是一种能填充满一个平面正方形的分形曲线(空间填充曲线),由大卫·希尔伯特在1891年提出.由于它能填满平面,它的豪斯多夫维是2.取它填充的正方形的边长为1,第n步的希尔伯特曲线 ...

  2. hilbert曲线序编码matlab,Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码

    Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码 王笋,徐小双(华中科技大学控制科学与工程系,武汉 430074) 摘 要 Hilbert曲线是一种重要的图像处理工具,在图像处理,特别是图 ...

  3. 希尔伯特曲线的绘制c语言,用四叉树和希尔伯特曲线做空间索引

    <用四叉树和希尔伯特曲线做空间索引>由会员分享,可在线阅读,更多相关<用四叉树和希尔伯特曲线做空间索引(11页珍藏版)>请在人人文库网上搜索. 1.超酷算法:用四叉树和希尔伯特 ...

  4. 希尔伯特曲线 java_《算法心得:高效算法的奥秘》PDF 下载

    图书目录: 译者序 序(第1版序) 前言 第1章 概述 1.1 记法 1.2 指令集与执行时间模型 1.3 习题 第2章 基础知识 2.1 操作最右边的位元 2.1.1 德摩根定律的推论 2.1.2 ...

  5. c语言希尔伯特曲线的算法分析,Hilbert曲线介绍以及代码实现

    空间填充曲线是指,一维曲线去包含整个二维甚至多维空间的一种函数曲线.而根据不同的排列规则,可以得到不同的空间填充曲线. 如Z-order曲线, 如图1(也就是geohash采取的曲线),Peano曲线 ...

  6. 希尔伯特曲线 java_Java中空间填充Hilbert曲线的递推算法

    我正在学习用 Java编写代码,我已经学习了java编程的递归部分.我理解了递归方法的基础知识,并且我正在尝试编写填充希尔伯特曲线(和Levy C曲线)的空间,到目前为止,一切都顺利进行,直到实际的递 ...

  7. [分形学] 基于 L 系统绘制 Hilbert (希尔伯特) 曲线

    德国数学家 David Hilbert 发现了这样一种可以填满整个单位正方形的分形曲线,称它为 Hilbert 曲线.具体的我就不多做介绍了,相关内容请自己搜索.这里只说程序. 程序执行后,按数字键 ...

  8. 四叉树和希尔伯特曲线做空间索引

    前序 四叉树或四元树也被称为Q树(Q-Tree).四叉树广泛应用于图像处理.空间数据索引.2D中的快速碰撞检测.存储稀疏数据等,而八叉树(Octree)主要应用于3D图形处理.对游戏编程,这会很有用. ...

  9. pythonturtle怎么画曲线_『怎么用python中的turtle画希尔伯特曲线』python画曲线图教程...

    Python 3 简单编程 画曲线图帮助! 曲线图--- 代码----from math import factorial import numpy as np import matplotlib.p ...

  10. python 画希尔伯特曲线

    给你一个问题: 让你在一个N×NN\times N的点阵,让你画一条连续曲线,使得这条曲线经过这个点阵中的每个点,并且每个点只经过一次,N满足条件:N=2k,k⊂ZN=2^k, k\subset \m ...

最新文章

  1. iOS封装HTTPS双向和单向验证
  2. java文件不能生成class,一文说清!
  3. mysql数据库实验3查询_MySQL数据库实验:任务三 数据库的单表查询设计
  4. Linux下利用backtrace追踪函数调用堆栈以及定位段错误
  5. 解决:clone 别人的Vue项目不能运行问题, node_modules missing
  6. 标准正态均一性检验 matlab程序,多种均一性检验方法比较研究
  7. 这次看到源码了,华为开源了方舟编译器
  8. Notification小案例
  9. js中的数组和字符串的一些方法
  10. xCodeGhost 事件专题总结
  11. Windows下安装Telnet工具
  12. 【人工智能】无人车系统仿真软件-PreScan
  13. JavaMail使用阿里云企业版邮箱发送邮件
  14. java葫芦娃喜羊羊格斗_课内资源 - 基于JAVA的葫芦娃大战妖怪
  15. 企业数字化转型 CIO需遵循三大原则
  16. 萌新小白的HTML第一天学习
  17. win10注册ocx控件的步骤(包含错误处理方法0x80040200)
  18. 【报告分享】服装零售行业洞察报告-有赞伯俊(附下载)
  19. c语言装饰,C/C++知识点之装饰器模式(Decorator) C++
  20. matlab中Ctphi什么意思,信号在matlab中的表示

热门文章

  1. 凸包(Convex Hull)问题算法详解
  2. 给临时停车号码牌插上翅膀:lua脚本语言加入—鲁哇客智能挪车号码牌技术升级之路
  3. 19 《黑石头的爱与恨:煤的故事》 -豆瓣评分7.4
  4. Simultaneous accesses to 0x1c5a674c8, but modification requires exclusive access.
  5. 天线传播原理、作用及分类
  6. The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator
  7. Mac mini 2018+ 进入 Recovery 预置恢复模式方法
  8. 【教资必过!!!】思想品德课程理论基本知识
  9. 如何用木板做桥_木头做桥基,300年不倒(组图)
  10. Unbalanced calls to begin/end appearance transitions for