generacja elipsy

Tematy związane z LabVIEW FPGA oraz programowaniem układów.
bezi
Posty: 6
Rejestracja: 30 paź 2009 11:43
Wersja środowiska: LabVIEW 7.1

generacja elipsy

Post autor: bezi » 30 paź 2009 12:47

Witam. Czy może mi ktoś podpowiedzieć jak wygenerować elipsę która będzie zmieniać się w czasie w zakresie kątów od 0 do 90 stopni tzn na wyjściu będzie płaską linią tylko na osi x następnie przy 45 stopniach będzie kołem a dochodząc znów do 90 stopni będzie płaska z tym że pokrywać sie będzie z osią y. Będę wdzieczny za jakiekolwiek wskazówki. :)

Awatar użytkownika
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

generacja elipsy

Post autor: vugie » 30 paź 2009 13:34

Rozumiem, że chodzi o obracanie promienia wodzącego o stałej długości przy założeniu stałej sumy kwadratów długości półosi równej kwadratowi długości tego promienia?

Kłania się równanie parametryczne elipsy:
x=a*cos(t)
y=b*sin(t)

gdzie a i b to długości półosi, a t nalezy do <0;2*pi>
w Twoim przypadku a i b muszą spełniać zależności:
a^2+b^2=R^2
b/a=tg(alpha)

gdzie R to długość promienia wodzącego, a alpha to kąt o jaki go chcesz obrócić.

Rozwiązanie, że tak powiem, na tacy. A jaki to ma związek z LabVIEW FPGA?

bezi
Posty: 6
Rejestracja: 30 paź 2009 11:43
Wersja środowiska: LabVIEW 7.1

generacja elipsy

Post autor: bezi » 30 paź 2009 13:43

Równanie elipsy znam, ale jakoś tego w całość nie mogłem skleić. Będę próbować dalej. Elipsa ma prezentować stan polaryzacji światła. Czy ma to coś wspólnego z LabVIEW FPGA ? Sądząc po pytaniu to nie. Proszę więc administracje o ulgowe potraktowanie i przeniesienie tematu w adekwatne miejsce.

Awatar użytkownika
jogurt_owocowy
Posty: 1311
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków
Been thanked: 1 time
Kontakt:

Re: generacja elipsy

Post autor: jogurt_owocowy » 30 paź 2009 21:39

vugie pisze:Rozumiem, że chodzi o obracanie promienia wodzącego o stałej długości przy założeniu stałej sumy kwadratów długości półosi równej kwadratowi długości tego promienia?
:D
"Taaaaak... Dokładnie o to chodzi"

Awatar użytkownika
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

generacja elipsy

Post autor: vugie » 30 paź 2009 22:15

Chciałem uściślić, bo mogło chodzić jeszcze o obrót zrzutowanej rozmaitości 1 rodzaju zdefiniowanej w przestrzeni nieeuklidesowej na zdegenerowaną przestrzeń niższego rzędu przy użyciu homogenicznego operatora rzutowania.
Ale to by miało jeszcze mniej wspólnego z FPGA. Czy istnieje moduł Quantum Computing do LabVIEW?

bezi
Posty: 6
Rejestracja: 30 paź 2009 11:43
Wersja środowiska: LabVIEW 7.1

Re: generacja elipsy

Post autor: bezi » 30 paź 2009 23:46

bardzo zabawne =))

Awatar użytkownika
jogurt_owocowy
Posty: 1311
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków
Been thanked: 1 time
Kontakt:

Re: generacja elipsy

Post autor: jogurt_owocowy » 31 paź 2009 01:28

Napisz, bezi, czy masz problem z samym LV (bo jesteś początkujący) czy z wygenerowaniem samej elipsy.

Jeśli to pierwsze (tak bym obstawiał), to najpierw spróbuj narysować elipsę o zadanych długościach półosi a i b za pomocą XY Graph - to będzie połowa sukcesu.
Drugą połową będzie sparametryzowanie współczynników a i b w zależności od wspomnianego przez Ciebie kąta, a wyznaczysz je łatwo z układu równań podanych przez vugiego (tak będzie najładniej, choć chyba można zrobić to szybciej generując zbiór punktów (x,y) dla okręgu, a potem zrzutować go równolegle, żeby otrzymać elipsę).

bezi
Posty: 6
Rejestracja: 30 paź 2009 11:43
Wersja środowiska: LabVIEW 7.1

Re: generacja elipsy

Post autor: bezi » 02 lis 2009 11:44

Powiem szczerze o co chodzi. Problem jest z technicznym utworzeniem tej elipsy w LabView a nie z zależnościami jakie ją tworzą. Wiem że na osi OX umieszczam cos(alfa)cosx, gdzie alfa to mój kąt zawarty miedzy 0 a pi/2, a na oś OY wprowadzam sin(alfa)cosx, z tym że powinienem ująć także przesuniecie w fazie o pi/2. Skeljam te VI-aje niby działają ale nie mam ciągłości. Próbuje tez umieścić wszystko w pętli while. Jeśli chcecie to pomóżcie ;;)

Awatar użytkownika
jogurt_owocowy
Posty: 1311
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków
Been thanked: 1 time
Kontakt:

Re: generacja elipsy

Post autor: jogurt_owocowy » 02 lis 2009 12:58

Nie mam dostępu do wersji 7.1, więc załącznik jest obrazkowy.

Stała 100 podłączona do terminala N pętli for określa ilość punktów elipsy.
Drobny szczegół (ale diabeł je lubi): jeśli ustawisz tutaj mniejszą wartość (np. 10), to zobaczysz, że elipsa jest "niedorysowana" do końca. Jeśli Ci to przeszkadza, to do wektora wychodzącego z pętli for doklej (za pomocą Build Array) wartość 1.

Pozdrawiam
Załączniki
drawing ellipse flowing between xy x and y axis.png

bezi
Posty: 6
Rejestracja: 30 paź 2009 11:43
Wersja środowiska: LabVIEW 7.1

generacja elipsy

Post autor: bezi » 02 lis 2009 17:39

Dzięki wielkie :) Obiecuje że się poprawie. B-)

bezi
Posty: 6
Rejestracja: 30 paź 2009 11:43
Wersja środowiska: LabVIEW 7.1

generacja elipsy

Post autor: bezi » 02 lis 2009 17:56

Zrobiłem ten programik, fakt prosty, ale to nie jest to o co mi chodziło. Moja elipsa ma interpretować elipsę polaryzacji świetlnej, czyli np dla alfa 45 stopni powinno wyjść koło. Zgodnie z teorią elipsa powinna również obracać się, a nie puchnąć od płaskiej powierzchni na osi OX przez zwiększanie promieni a i b. To jest bardziej złożone zagadnienie. Jednakże dziękuje za udzieloną pomoc.

ODPOWIEDZ