zoukankan      html  css  js  c++  java
  • 数学图形(1.7)圆内旋轮线

    内旋轮线(hypotrochoid)是追踪附着在围绕半径为 R 的固定的圆内侧滚转的半径为 r 的圆上的一个点得到的转迹线,这个点到内部滚动的圆的中心的距离是 d。

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

    圆内旋轮线(随机圈)

    vertices = 12000
    a = rand2(1, 10)
    r = rand2(1, 10)
    d = rand2(0.5, 10)
    t = from 0 to (120*PI)
    x = (a - r)*cos(t) + d*cos((a/r - 1)*t)
    y = (a - r)*sin(t) - d*sin((a/r - 1)*t)

    内旋轮线中不同参数设置可以生成一些固定的图形

    三尖瓣线

    vertices = 1000
    r = 10.0
    m = 2
    t = from 0 to (5*PI)
    x = r*[m*cos(t) + cos(m*t)]
    y = r*[m*sin(t) - sin(m*t)]

    星形线

    vertices = 1000
    r = 10.0
    m = 1.5
    t = from 0 to (5*PI)
    x = r*[m*cos(t) + cos(m*t)]
    y = r*[m*sin(t) - sin(m*t)]

    5角星形

    vertices = 1000
    
    r = 10.0
    m = 4
    t = from 0 to (2*PI)
    x = r*[m*cos(t) + cos(m*t)]
    y = r*[m*sin(t) - sin(m*t)]

    圆内旋轮线(5圈)

    vertices = 12000
    a = 10
    r = 8
    d = rand2(0.5, 10)
    t = from 0 to (8*PI)
    x = (a - r)*cos(t) + d*cos((a/r - 1)*t)
    y = (a - r)*sin(t) - d*sin((a/r - 1)*t)

    圆内旋轮线(椭圆)

    vertices = 12000
    a = 10
    r = 5
    d = rand2(0.5, 10)
    t = from 0 to (2*PI)
    x = (a - r)*cos(t) + d*cos((a/r - 1)*t)
    y = (a - r)*sin(t) - d*sin((a/r - 1)*t)

     椭圆面

    vertices = D1:512 D2:100
    
    u = from 0 to (PI*5) D1
    v = from 0.0 to 1.0 D2
    
    r = 10.0
    m = 1
    
    x = r*[m*cos(u) + v*cos(m*u)]
    y = r*[m*sin(u) - v*sin(m*u)]

    三尖瓣面

    vertices = D1:512 D2:100
    
    u = from 0 to (PI*5) D1
    v = from 0.0 to 1.0 D2
    
    r = 10.0
    m = 2
    
    x = r*[m*cos(u) + v*cos(m*u)]
    y = r*[m*sin(u) - v*sin(m*u)]

    五星面

    vertices = D1:512 D2:100
    
    u = from 0 to (PI*5) D1
    v = from 0.0 to 1.0 D2
    
    r = 10.0
    m = 1.5
    
    x = r*[m*cos(u) + v*cos(m*u)]
    y = r*[m*sin(u) - v*sin(m*u)]

    圆内旋轮面(5角星形)

    vertices = D1:512 D2:100
    
    u = from 0 to (PI*5) D1
    v = from 0.0 to 1.0 D2
    
    r = 10.0
    m = 4
    
    x = r*[m*cos(u) + v*cos(m*u)]
    y = r*[m*sin(u) - v*sin(m*u)]

     
  • 相关阅读:
    mycat测试
    hive数据倾斜原因以及解决办法
    hive设置参数的方法
    hive文件格式
    hive 测试
    spark sql
    leetcode:Inver Binary Tree
    leetcode:Insertion Sort List
    leetcode:Insert Node in a Binary Search Tree
    leetcode:insert interval
  • 原文地址:https://www.cnblogs.com/WhyEngine/p/3824234.html
Copyright © 2011-2022 走看看