Konvertere en trigonometrisk funksjon til radianer

Moderatorer: Super Moderatorer, Admins

Brukeravatar

Trådstarter
larsem8
Innlegg: 1506
Registrert: ons 09 nov, 2005
Sted: Kristiansand

Konvertere en trigonometrisk funksjon til radianer

Legg innav larsem8 » tor 02 jan, 2014

Jeg skal finne rotasjonsvinkelen til en helper ved hjelp av trigonometri.

Jeg bruker en expressioncontroller på x-rotasjonen og to expose helpere for å måle henholdsvis hypotenusen og den hosliggende kateten.

I expressioncontrolleren skriver jeg

Kode: Velg alt

acos(K/H)

acos = invers-funksjonen til cosinus
K = Hosliggende katet
H = Hypotenus

Problemet er at expressioncontrolleren returnerer svaret i grader mens rotasjonskontrolleren trenger svaret i radianer.
Noen som vet hvordan jeg skal skrive utrykket for å få svaret i radianer? Ser ikke ut til at det fungere med degtorad-funksjonen, men kanskje jeg bare bruker den på feil måte.
Alle gode ting er 3D

Brukeravatar

shcmack
Innlegg: 224
Registrert: søn 16 aug, 2009
Kontakt:

Legg innav shcmack » tor 02 jan, 2014

Kan du ikke bare gjøre det "manuelt"?

degtorad = degree * 3.14 / 180
radtodeg = radians * 180 / 3.14

Brukeravatar

Trådstarter
larsem8
Innlegg: 1506
Registrert: ons 09 nov, 2005
Sted: Kristiansand

Legg innav larsem8 » tor 02 jan, 2014

shcmack skrev:Kan du ikke bare gjøre det "manuelt"?

degtorad = degree * 3.14 / 180
radtodeg = radians * 180 / 3.14


Jo :)

Kode: Velg alt

(acos(K/H))*(pi/180)

Som jeg har skrevet i controlleren. Men stusser på hvorfor degtorad ikke fungerte?
Alle gode ting er 3D

Brukeravatar

shcmack
Innlegg: 224
Registrert: søn 16 aug, 2009
Kontakt:

Legg innav shcmack » tor 02 jan, 2014

Aha, skjønner :) Vel, jeg har null snøring når det kommer til max, men jeg vet at i Maya så er degtorad/radtodeg mel-funksjoner (tilsvarende max-script i max tror jeg), så dersom man scripter i Python så vil man ikke kunne bruke disse funksjonene uten å calle de via. mel. Jeg er som sagt blank når det kommer til max, bare tenkte det kunne være verdt å nevne ;)


hardrock_ram
Innlegg: 1502
Registrert: ons 07 feb, 2007
Sted: Kristiansand

Legg innav hardrock_ram » fre 03 jan, 2014

degToRad skal vel settes opp slik: a = degToRad (47)

dvs. at degToRad-funksjonen skal stå først, og det som skal konverteres i påfølgende parantes. Hvis ikke jeg har misforstått hele greia da :P
if your not living on a killing ground, you better make your own

Brukeravatar

Trådstarter
larsem8
Innlegg: 1506
Registrert: ons 09 nov, 2005
Sted: Kristiansand

Legg innav larsem8 » fre 03 jan, 2014

hardrock_ram skrev:degToRad skal vel settes opp slik: a = degToRad (47)

dvs. at degToRad-funksjonen skal stå først, og det som skal konverteres i påfølgende parantes. Hvis ikke jeg har misforstått hele greia da :P


Ja, og jeg satt den opp sånn, bortsett fra at jeg er mest vant til å bruke degToRad i parameter wiring, og der er den ikke case sensitiv :crap:

Så med noen store bokstaver funker det :P Takk!
Alle gode ting er 3D


hardrock_ram
Innlegg: 1502
Registrert: ons 07 feb, 2007
Sted: Kristiansand

Legg innav hardrock_ram » fre 03 jan, 2014

Hvor prøvde du å bruke funksjonen? Det eneste tilfellet hvor jeg kan komme på at max er case sensitivt er egne variabler i script controller ...
if your not living on a killing ground, you better make your own

Brukeravatar

Trådstarter
larsem8
Innlegg: 1506
Registrert: ons 09 nov, 2005
Sted: Kristiansand

Legg innav larsem8 » tir 07 jan, 2014

hardrock_ram skrev:Hvor prøvde du å bruke funksjonen? Det eneste tilfellet hvor jeg kan komme på at max er case sensitivt er egne variabler i script controller ...


Expression controller
Alle gode ting er 3D


hardrock_ram
Innlegg: 1502
Registrert: ons 07 feb, 2007
Sted: Kristiansand

Legg innav hardrock_ram » tir 07 jan, 2014

Stemmer, der må det være helt nøyaktig ja. Lenge siden jeg har brukt expression controllere :)
if your not living on a killing ground, you better make your own


Gå tilbake til «3dsmax»

Hvem er online

Brukere i dette forumet: Ingen registrerte brukere og 2 gjester

cron