zoukankan      html  css  js  c++  java
  • 数学图形(1.11) 玫瑰线

    玫瑰线方程

    玫瑰线的极坐标方程为:ρ=a* sin(nθ),ρ=a*cos(nθ)
    用直角坐标方程表示为: x=a* sin(nθ)* cos(θ), y=a*sin(nθ)* sin(θ)
    根据三角函数的特性可知,玫瑰线是一种具有周期性且包络线为圆弧的曲线,曲线的几何结构取决于方程参数的取值,不同的参数决定了玫瑰线的大小、叶子的数目和周期的可变性。
    这里参数a(包络半径)控制叶子的长短,参数n控制叶子的个数、叶子的大小及周期的长短。
    如对于方程式

    ρ=5* sin(3*θ)、

    ρ=5* sin(2*θ)、

    ρ=5* sin(3*θ/2),

    分别对应的是三叶、四叶和六叶玫瑰线。

    我觉得应该将其称为菊花线更为合适,因为比起玫瑰来,它更像一朵绽放的菊花.

    相关软件参见:数学图形可视化工具,使用自己定义语法的脚本代码生成数学图形.该软件免费开源.QQ交流群: 367752815

    玫瑰线.

    vertices = 18000
    t = from 0 to (2*PI)
    a = rand_int2(2, 50)
    x = sin(a*t)*cos(t)
    y = sin(a*t)*sin(t)
    
    r = 10;
    x = x*r
    y = y*r

    玫瑰线(20叶)

    vertices = 3600
    t = from 0 to (2*PI)
    
    r = 10
    x = r*sin(10*t)*cos(t)
    y = r*sin(10*t)*sin(t)

    三叶线.

    vertices = 3600
    
    t = from 0 to PI
    x = sin(3*t)*cos(t)
    y = sin(3*t)*sin(t)
    
    r = 10;
    x = x*r
    y = y*r
    z = z*r

    四叶线

    vertices = 3600
    t = from 0 to (2*PI)
    x = sin(2*t)*cos(t)
    y = sin(2*t)*sin(t)
    
    r = 10;
    x = x*r
    y = y*r
    z = z*r

    玫瑰线变异

    vertices = 360
    t = from 0 to 360
    a = 5
    x = sin(a*t)*cos(t)
    y = sin(a*t)*sin(t)
    r = 10
    x = x*r
    y = y*r
    z = z*r

  • 相关阅读:
    SQLiteDatabase 源码
    SQLiteOpenHelper 源码
    Java同步机制总结--synchronized
    [Swift A]
    [Swift A]-问号&感叹号
    [Swift A]
    [Swift A]
    android 屏幕适配
    2014年度加班时间
    nodejs初学-----helloworld
  • 原文地址:https://www.cnblogs.com/WhyEngine/p/3824376.html
Copyright © 2011-2022 走看看