分形之可编辑折线

将一条线段变成若干条首尾相连的线段,然后对每一条新生成的线段重复此操作,最终会生成一幅很漂亮的图形.这就是折线的分形图形.之前我发过一篇文章:分形的程序实现,里面实现了近20种分形图形的生成算法。在这些分形算法中,大部分是针对折线的,即将一条线段不停得拆分出多条线段,如:列维(levy)曲线海岸线科赫(Koch)雪花等.而这篇文章将提供一个可以自由编辑的任意折线分形程序.

软件操作方法如下:

双击FractalLine.exe或FractalLineSP.exe都可以启动程序,其中:一个是窗体界面,另一个是全屏界面.


程序启动后,窗体左上角会有一个Edit按钮,点击会弹出一个折线编辑界面.


按着CTRL并用鼠标点击折线编辑界面,则可以添加折线点.

鼠标点击折线点后拖动,可以修改点的位置.

鼠标选中折线点后,按下键盘DEL键可以删除折线点.

鼠标选中折线点后,按下键盘CTRL键并拖动,可以复制折线点.

编辑完折线后,点击左上角的OK按钮,就会生成折线的分形图.

拖动界面右上角的滑动条,可以显示不同级次的分形图.

鼠标滚轮可以缩放图形,右键用于移动图形.

界面下方的滑动条控制可显示的曲线范围.

下面发几图不同的折线生成不同的分形图形的截图:

(1)

(2)

(3)

(4)

(5)

软件下载地址:http://files.cnblogs.com/WhyEngine/FractalLine.zip

时间: 2024-10-24 22:10:38

分形之可编辑折线的相关文章

如何在vue项目中使用echarts和高德地图绘制折线和热力图

1.先下载相关的依赖,这里echarts和高德地图放到一起.(高德地图需要先去申请一个key) // The Vue build version to load with the `import` command // (runtime-only or standalone) has been set in webpack.base.conf with an alias. import Vue from 'vue' import App from './App' import router fr

高德地图插件

地图工具条插件 (AMap.ToolBar)包括缩放控件,用户可控制缩放按钮是用滑动滚动条还是“+/-”按钮形式,方向键盘控件.自动定位控制.添加之后默认位于地图左上角. 地图鹰眼插件 (AMap.OverView)加载此插件后,会在地图右下角显示一个地图简略的概览,用于在更广阔的区域反映当前的地图视口,支持用户控制此鹰眼是打开状态还是关闭状态.添加之后默认位于地图右下角. 地图比例尺插件 (AMap.Scale)用于显示地图比例关系,添加之后默认位于地图左下角. 圆编辑插件 (AMap.Cir

9th 本周工作量及进度统计

本周psp C(类别) C(内容) S(开始时间) ST(结束时间) I(中断时间) T(实际时间) 文档 11月10日 Beta发布的评论 20:30 21:18 0:05 43 活动 11月12日 用户使用报告 9:30 10:49 0:21 58 11月13日 撰写新的NABCD 22:00 23:30 0:33 57 11月14日 Beta Review会议 21:45 23:38 0:10 103 11月16日 软件需求规格说明书 12:30 15:58 2:54 34 代码 11月1

vue仿微信网页版|vue+web端聊天室|仿微信客户端vue版

一.项目介绍 基于Vue2.5.6+Vuex+vue-cli+vue-router+vue-gemini-scrollbar+swiper+elementUI等技术混合架构开发的仿微信web端聊天室——vueWebChat,实现了发送消息.表情(动图),图片.视频预览,右键菜单.截屏.截图可直接粘贴至文本框进行发送. 二.技术框架 MVVM框架:Vue2.5.6 状态管理:Vuex 页面路由:Vue-router iconfont图标:阿里巴巴字体图标库 自定义滚动条:vue-gemini-sc

Vue 高德地图 路径规划 画点

CDN 方式 <!--引入高德地图JSAPI --> <script src="//webapi.amap.com/maps?v=1.4.13&key=您申请的key值"></script> <!--引入UI组件库(1.0版本) --> <script src="//webapi.amap.com/ui/1.0/main.js"></script> 配置externals 文件路径 bu

分形之正方形折线

这种分形图形是将一条线段拆分成五条线段,其中第一条线段使用原线段的前三分之一,最后一条线段使用原线段的后三分之一.中间三条线段围成一个开口的正方形. 核心代码: static void FractalSquare(const Vector3& vStart, const Vector3& vEnd, Vector3* pVertices) { Vector3 vSub = vEnd - vStart; Yreal len = D3DXVec3Length(&vSub); pVert

分形之C折线

前面讲了列维(levy)曲线,它是将一条线段不停地分形成两条长度相等且相互垂直的线段而生成.还有分形龙也是将一个线段对折成夹角为90度的两个线段.这一节展示的是将线段不停地分形成两条长度相等且夹角不固定的线段而生成图形.这如同将一条线段变成等腰三角形,原线段为等腰三角形的底边,新生成的线段为等腰三角形的腰边.通过设置底角的角度,改变分形图形. 核心代码: static void FractalAngleC(const Vector3& vStart, const Vector3& vEnd

Java编辑PPT的折线图,与内嵌Excel联动

/** * 折线图的数据写入方法 * @param slide ppt图表 * @param index 折线图的下标 * @param data 需要填充的数据 * @param titles 内嵌Excel的X轴title * @param columnTitles 内嵌Excel的Y轴title * @return * @throws IOException */ @SuppressWarnings("unused") public static XSLFSlide setLin

java springMVC SSM 操作日志 4级别联动 文件管理 头像编辑 shiro redis

A 调用摄像头拍照,自定义裁剪编辑头像 [新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统]B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,开发利器)+快速构建表单;  技术:313596790 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid;  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势D 集成安全