python科赫曲线的代码_python – 实现Koch曲线?

我正在查看Koch Snowflake(here)的维基百科页面,并且被徽标/乌龟风格的所有示例所困扰.所以我开始自己制作返回列表或坐标.

我的实现是在python中,我基本上扯掉了python turtle实现,但用基本的trig替换了特定于龟的东西.它导致了一些丑陋的代码.我面临的挑战是要么改进我的代码,要么提出更自己的解决方案.它可以是python或您最喜欢的语言.

我的代码:

from math import sin, cos, radians

def grow(steps, length = 200, startPos = (0,0)):

angle = 0

try:

jump = float(length) / (3 ** steps)

except:

jump = length

set="F"

for i in xrange(steps): set=set.replace("F", "FLFRFLF")

coords = [startPos]

for move in set:

if move is "F":

coords.append(

(coords[-1][0] + jump * cos(angle),

coords[-1][1] + jump * sin(angle)))

if move is "L":

angle += radians(60)

if move is "R":

angle -= radians(120)

return coords

编辑ÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值