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)]

     
  • 相关阅读:
    cogs 775. 山海经
    [HZOI 2016][Tyvj 1729]文艺平衡树 这道题我真是哭了,调了一下午,一晚上
    几种平衡树
    bzoj1124 [POI2008]枪战Maf
    [Usaco2007 Open]Fliptile 翻格子游戏
    团队冲刺08
    团队冲刺07
    团队冲刺06
    团队冲刺05
    团队冲刺04
  • 原文地址:https://www.cnblogs.com/WhyEngine/p/3824234.html
Copyright © 2011-2022 走看看