我给出的动态值绘制了一个介于-1和1之间的三角波t。起始值为0.我想将这些值操作如下:
答案 0 :(得分:2)
让我使用JS语法,因为我们在SO上没有MathJAX 我假设你熟悉这个等式
y = abs( 2*x % 2 - 1)
价值观不是因果关系:
这个函数比幅度1和频率1,假设x轴是时间(如果是空间那么它的波长是1个单位的空间)。
缩放和偏移函数很容易(由于单位值的幅度):
y = abs( 2*x % 2 - 1) * scale - offset
例如y = abs( 2*x % 2 - 1) * 3 - 1.5
请注意,此功能仍具有频率1.
要改变频率,只需通过乘以 x 来运行
y = abs( 2*freq*x % 2 - 1) * scale - offset
添加一个阶段我们只需要为 x
添加一个偏移量y = abs( (2*freq*x + phase) % 2 - 1) * scale - offset
相位在[0,2]范围内,其中0为0%,2为100%。
这是波幅为1,偏移1.5,频率1/3和相位1(50%)的波形示例:
对于视觉参考,最终公式的更好类型版本是