열린 차트로 삼각형과 톱니파 모양을 그리는 데 정말 어려움을 겪고 있습니다. 수식은 the answer in this post입니다. 이 나는 삼각형이 무엇을 :삼각형과 톱니 모양의 웨이브를 형성
var myArray = [];
var myVals = [];
var mytrin = [];
ti = 2.0 * Math.PI * (880/44100);
theta = 0;
for(i = 0; i <500; i++){
myArray.push(i);
var ke = value = (1.0 - Math.abs(theta - 0.5) * 4);
mytrin.push(ke);
theta = theta + ti;
}
가 여기 online demo입니다. 톱니에 대해 같은 일에 대해
:
var myArray = [];
var myVals = [];
var mytrin = [];
ti = 2.0 * Math.PI * (880/44100);
theta = 0;
for(i = 0; i <1000; i++){
myArray.push(i);
var ke = theta*2-1;
mytrin.push(ke);
theta = theta + ti;
}
그리고 here's the demo.
무엇이 잘못 되었습니까?
혹시 톱날의 범위를 줄이는 방법을 알고 계시나요? 삼각형은 훌륭하지만 -1에서 1 사이의 범위를 얻으려고했지만 그 점을 이해할 수는 없습니다. 당신의 도움을 주셔서 감사합니다! – networkprofile
사이클링 변수에 대해 알아 봤지만 고마워했습니다. – networkprofile
수식이 어떻게 작동하는지 살펴보면 분명히 분명해야합니다. 톱니파는 0에서 4가 될 것입니다. 왜냐하면 'mod 4'를하고 있기 때문입니다. 따라서 mod 값은 출력 결과를 얻는 범위입니다. 범위를 2 (-1에서 +1)의 크기로하려면 'mod 2'로 변경하십시오. 뺄셈은 웨이브를 올바른 수직 위치로 옮기는 것입니다. 따라서 0에서 2이면 원하는 것을 얻기 위해 1을 빼면됩니다. 즉''(theta % 2) -1' – Chris