Różnice
Różnice między wybraną wersją a wersją aktualną.
Poprzednia rewizja po obu stronach Poprzednia wersja Nowa wersja | Poprzednia wersja | ||
konwerter_svg_oscyloskop [2020/11/22 21:19] hamsterking [WORKLOG] |
konwerter_svg_oscyloskop [2020/12/06 23:10] (aktualna) hamsterking [Przydatne narzędzia] |
||
---|---|---|---|
Linia 11: | Linia 11: | ||
Jednak mikrokontrolery z zasady nie posiadają konwerterów cyfrowych na analogowe (DAC), więc najłatwiejszym sposobem jest | Jednak mikrokontrolery z zasady nie posiadają konwerterów cyfrowych na analogowe (DAC), więc najłatwiejszym sposobem jest | ||
wykorzystanie sygnału PWM, który ładuje kondensatory. | wykorzystanie sygnału PWM, który ładuje kondensatory. | ||
- | ==== Przydatne narzędzia ==== | + | ==== Przydatne linki z programami==== |
- https://www.wave-editor.com/ - podgląd przebiegów plików z rozszerzeniem .wav | - https://www.wave-editor.com/ - podgląd przebiegów plików z rozszerzeniem .wav | ||
- https://asdfg.me/osci/ - emulator oscyloskopu | - https://asdfg.me/osci/ - emulator oscyloskopu | ||
- https://www.svgviewer.dev/ - podgląd plików SVG | - https://www.svgviewer.dev/ - podgląd plików SVG | ||
+ | - https://github.com/hamsterking123/svg_to_pwm/tree/master - repo z aktualnym kodem | ||
==== Biblografia ==== | ==== Biblografia ==== | ||
[1] https://www.youtube.com/watch?v=nlCADL5_g-I \\ | [1] https://www.youtube.com/watch?v=nlCADL5_g-I \\ | ||
Linia 24: | Linia 25: | ||
[7]https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/d#Path_commands\\ | [7]https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/d#Path_commands\\ | ||
[8]https://observablehq.com/@toja/ellipse-and-elliptical-arc-conversion\\ | [8]https://observablehq.com/@toja/ellipse-and-elliptical-arc-conversion\\ | ||
+ | [9]https://www.johndcook.com/blog/2009/12/21/bezier-basics/ \\ | ||
+ | [10]https://www.geeksforgeeks.org/cubic-bezier-curve-implementation-in-c/ \\ | ||
+ | [11]https://www.mathsisfun.com/algebra/vectors-dot-product.html \\ | ||
==== WORKLOG ==== | ==== WORKLOG ==== | ||
* 25.10.2020\\ | * 25.10.2020\\ | ||
Linia 34: | Linia 38: | ||
{{ projekty:ellipse_arc_svg.png |}}\\ | {{ projekty:ellipse_arc_svg.png |}}\\ | ||
[Update z końca dnia]: <płacze w środku> - okazuje się, że dla SVG, oś Y rośnie w dół :) To, że wychodzą mi teraz dobre łuki, jest tylko efektem mojego kodu do kreowania punktów, a nie faktycznie poprawnie działający interpreter. Odkryłem to, gdy zauważyłem, że wg. standardu SVG, gdy dla linii podaje co raz wyższą wartość Y, to ta spada jeszcze bardziej. Planuje jakoś dokonać rzutowania punktów z osi dodatnią na ujemną. | [Update z końca dnia]: <płacze w środku> - okazuje się, że dla SVG, oś Y rośnie w dół :) To, że wychodzą mi teraz dobre łuki, jest tylko efektem mojego kodu do kreowania punktów, a nie faktycznie poprawnie działający interpreter. Odkryłem to, gdy zauważyłem, że wg. standardu SVG, gdy dla linii podaje co raz wyższą wartość Y, to ta spada jeszcze bardziej. Planuje jakoś dokonać rzutowania punktów z osi dodatnią na ujemną. | ||
+ | * 06.12.2020\\ | ||
+ | Problem z osiami został rozwiązany. Okazało się, że program źle liczył kąty (zły znak) oraz później z tego powodu, była źle liczona krzywa (nie był uwzględniany znaku wartości kąta theta). Dodatkowo udało się zaimplementować równanie krzywe Beziera, więc aktualnie została kwestia czytania z pliku tekstowego. |