2016-09-26 3 views
-1

私は頂点法線を持つバイナリファイルを持っています。値はバイトとしてコード化されます。バイトから角度をエンコードし、角度を浮動小数点に変換するにはどうすればよいですか? 例:バイトから角度を得る方法C#

binary: 128, 128, 255 

obviously in angles it's: 90*, 90*, 180* 

は、どのように私はfloat型の値を得るのですか?

値は明らかに0.5 0.5 1.0ですが、私は128から0.5fにバイトを変換できるので、C#コードは何ですか?あなたは[0.0..1.0]範囲にマッピングしている場合、それは簡単な数学ですので

+1

角度は[[0..180] 'の範囲のみですか? –

+0

簡単な数学? 255 => 180は180/255 *につながり、角度は –

+0

となります。-180 ... 180 –

答えて

2

byteは、[0..255]の範囲を持っています

double angle = byteValue/255.0; 

その時点で、あなたは、あなたが望むものは何でも角度システムを掛けることができます。

// Degrees 
double angleDeg = angle * 360.0; 

// Radians 
double angleRad = angle * 2.0 * Math.PI; 
+0

私はそれをしましたが、結果が間違っています。 –

+1

@MrJox間違っていますか?あなたは何の結果を期待していますか?何を得ていますか? – Abion47

+0

別の例: バイナリ:29,208,112 浮動小数点:-0.6084800、0.7681854、0.1991063 –

関連する問題