自动轨迹绘制

一、自动轨迹绘制问题分析

1.1 问题分析

  • 需求:根据脚本来绘制图形
  • 不是代码实现而是读取文件中数据绘制轨迹
  • 数据脚本是自动化最终要的第一步

1.2 自动轨迹绘制

300,0,144,1,0,0
300,0,144,0,1,0
300,0,144,0,0,1
300,0,144,1,1,0
300,0,108,0,1,1

二、自动轨迹绘制实例讲解

2.1自动轨迹绘制

基本思路

  • 步骤1:定义数据文件格式(接口)
  • 步骤2:编写程序,根据文件接口解析参数绘制图形
  • 步骤3:编制数据文件

2.2 数据接口定义

非常具有个性色彩

import turtle as t
"""
@author RansySun
@create 2019-07-20-22:47
"""
t.title("自动轨迹绘制")
t.setup(800, 600, 0, 0)
t.pencolor("red")
t.pensize("5")

# 数据读取
fr = open("text.txt", "r")
datals = []
for line in fr:
    # 去除文件中换行
    line = line.replace("\n", "")
    # 将每一行字符串分割,去除字符串保存在列表中
    datals.append(list(map(eval, line.split(","))))
    print(datals)
fr.close()

for i in range(len(datals)):

    t.pencolor(datals[i][3], datals[i][4], datals[i][5])
    t.fd(datals[i][0])
    if datals[1]:
        t.right(datals[i][2])
    else:
        t.left(datals[i][2])

t.done()

2.3 数据文件

# text.txt
300,0,144,1,0,0
300,0,144,0,1,0
300,0,144,0,0,1
300,0,144,1,1,0
300,0,108,0,1,1
184,0,72,1,0,1
184,0,72,0,0,0
184,0,72,0,0,0
184,0,72,0,0,0
184,1,72,1,0,1
184,1,72,0,0,0
184,1,72,0,0,0
184,1,72,0,0,0
184,1,72,0,0,0
184,1,720,0,0,0

三、自动轨迹绘制举一反三

3.1理解方法思维

  • 自动化思维:数据和功能分离,数据驱动的自动运行
  • 接口化设计:格式化化设计接口,清晰明了
  • 二维数据应用:应用维度组织数据

3.2 应用问题的扩展

  • 扩展接口设计,增加更多控制接口
  • 扩展功能设计,增加弧形等更多功能
  • 扩展应用需求,发展自动轨迹绘制到动画绘制

原文地址:https://www.cnblogs.com/randysun/p/11219753.html

时间: 2024-08-29 09:20:06

自动轨迹绘制的相关文章

实例11:自动轨迹绘制

问题分析:自动轨迹分析 --需求:根据脚本来绘制图形 --不是写代码而是写数据绘制轨迹 --数据脚本是自动化最重要的第一步 自动轨迹绘制 举一反三 原文地址:https://www.cnblogs.com/li-zhi-qiang/p/9270436.html

百度地图API,根据经纬度实现车辆移动轨迹绘制

百度地图,实现车辆轨迹绘制 实现思路: 1.根据经纬度实现车辆轨迹绘制 2.使用百度地图API的两个覆盖物实现,Polyline(折线)绘制轨迹,Marker(图标)绘制小车图标 3.将每两个坐标间连线起来,形成连贯的轨迹线路 4.生成下一个图标后删除上一个绘制的图标,形成小车移动动画感 5.本例使用的是临近的随机坐标点 6.初学者,欢迎大家交流学习 7.查看实例 代码: [html] view plain copy <!DOCTYPE html> <html> <head&

python 文件与数据格式化

https://www.cnblogs.com/li-zhi-qiang/p/9269453.html       文件和数据格式化 https://www.cnblogs.com/li-zhi-qiang/p/9270497.html      一维数据的格式化和处理 https://www.cnblogs.com/li-zhi-qiang/p/9273751.html     二维数据的格式化和处理 https://www.cnblogs.com/li-zhi-qiang/p/9270436

【转载】Unity3D研究院之与根据动态的两个轨迹点绘制面详解

大家应该知道3D世界中任何的面都是由三角形绘制完成的,因为任何无规则的集合图形都可以由三角形来组成.比如四边形,无论是正四边形还是无规则四边形都可以由两个三角形拼接而成.结合本文的标题大家仔细想想,如果需要绘制一个动态无规则面其实只需要得到动态的两个轨迹点即可,那么结合下面的图片大家仔细在想想.         暂时我们先忽略Z轴(这样在平面中看得更清楚),假设Z轴坐标都为0.假设游戏中有两个轨迹点在动态的增加与改变,最后将这两个点改变的轨迹拼接起来就是它们生成的面.如上图所示,第一个点的轨迹是

iOS开发之在地图上绘制出你运行的轨迹

首先我们看下如何在地图上绘制曲线.在Map Kit中提供了一个叫MKPolyline的类,我们可以利用它来绘制曲线,先看个简单的例子. 使用下面代码从一个文件中读取出经纬度,然后创建一个路径:MKPolyline实例. 1 -(void) loadRoute 2 { 3 NSString* filePath = [[NSBundle mainBundle] pathForResource:@"route" ofType:@"csv"]; 4 NSString* fi

GPS功能:百度路书自定义【轨迹回放】

如题所述:百度的编辑界面很直观,修改后就可以运行,地址:http://developer.baidu.com/map/jsdemo.htm#c2_8: 因为同事研究了一下午结果都没搞出来,他copy百度示例的代码写的很混乱,贴来贴去的,结果把自己陷进去了,看到如此情形实在不忍心啊,(毕竟是demo,百度提供的代码大可以大刀阔斧的修改,不用吝啬)于是就参与了进去.先看API,然后看示例分析,必须要修改生成自己的轨迹线,如果能找到回到函数对轨迹数据进行自定义问题就解决了,果不其然就是这样的.关键还是

【Cocos2d-x 3.x】 3.0版本的全新绘制系

在Cocos2d-x 3.0的版本之前,Cocos2d-x的每个元素的绘制逻辑均分布于每个元素内部的draw()方法里,紧密依赖UI树的遍历:3.0开始,对绘制部分进行了重构,新的代码将绘制部分从UI树的遍历中分离出来,使得绘制系统设计更优雅.更灵活和易于扩展. UI树的遍历 这是渲染系统比较重要的一个职责,遍历UI树中每一个元素,遍历的有两个重要的目的,一是遍历的顺序基本决定了元素被绘制的顺序,二是在遍历过程中实现元素的模型视图变换矩阵的计算,计算结果供OpenGL ES渲染管线计算顶点位置.

关于调用系统的固定方法后会自动触发某些方法的小结

涂层 当调用 setNeedsDisplay 后会调用 drawInContext:   这个方法  进行图层的绘制 调用setNeedsLayOut后会自动调用  绘制frame 的那个方法 这里有个问题需要记一下,待日后完善: 为啥要调用a方法来触发b方法?直接调用b也可以达到效果,那么直接调用b方法有啥坏处? 未完待续

untiy绘制网格mesh

关于绘制网格, 雨松前辈 已经解释的非常的到位,这里我只是搬运工,实在是感觉自己去描述的话不会有雨松大神描述的清楚,该文章循序渐进,一步步引导读者去理解unirty 绘图机制,真的是没有比这个再好得了,下面是文章原文: 首先创建Unity工程,接着创建一个空的游戏对象,然后给该游戏对象绑定Mesh Filter组件 与 Mesh Renderer组件. Mesh Filter组件:表示网格面,这个网格面是由我们使用代码将所有三角形拼接起来生成的面. Mesh Renderer组件:表示表示网格的