メモ書き:特定の方向の成分のみを取り出す

メモ書きなので手抜き仕様

考えたい事:
ベクトルViから方向単位ベクトルVeの方向の成分を取り出す。

考えたい例:
Vi=(40,70)のベクトルからx軸方向(Ve=(1,0))の成分を取り出すと、結果は(40,0)となる。


Viを入力、Voを結果、Veを抽出したい方向の単位ベクトル
Vo = (Vi・Ve)Ve
内積。

2次元でしか考えてない。3次元の場合は未チェック。無駄もあるかも。



以下、HSP

#define mline(%1,%2) line 200+(%1)*10,200-(%2)*10,200,200

vi=10.0,15.0 // input
ve=2.0,1.0 // 方向単位ベクトル

vo=0.0,0.0 // output

// |ve|=1にする
l=sqrt(ve.0*ve.0+ve.1*ve.1)
ve.0=ve.0/l : ve.1=ve.1/l

vo.0=(vi.0*ve.0+vi.1*ve.1)*ve.0
vo.1=(vi.0*ve.0+vi.1*ve.1)*ve.1

color 255,0,0
mline vi.0,vi.1
color 0,0,255
mline vo.0,vo.1
color 0,255,0
mline ve.0,ve.1
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

tag : HSP3

コメントの投稿

非公開コメント

プロフィール

舞葉(ぶよう)

Author:舞葉(ぶよう)
github.io
はてなブログ(競プロ)

古い記事のソースコードは色分けしていないので、高機能テキストエディタに貼り付けたほうが見やすいかも。

検索フォーム
このブログについて
自分がつまづいた話題、なんとなく書きたいと思ったこと、ググったけど殆ど資料なかったぞオイ な話等をアップする予定。通りすがりでも、参考になっていただければと。プログラムの例外入力、メモリリークは責任負いません。投稿された記事は修正・削除する場合があります。
カテゴリ
タグ

HSP3アルゴリズムとデータ構造c++RubyJavaUnity画像解析C機械学習C#LinuxcodeIQKinectMinecraftTonyuSystemraspberrypiPythonHTML5音声制御Simulinkruby俺ルール通信制御Javascriptシミュレーション

counter-shinobi
固定記事
最新記事
最新コメント
月別アーカイブ
ブロとも申請フォーム

この人とブロともになる

アクセスランキング
[ジャンルランキング]
コンピュータ
1253位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
219位
アクセスランキングを見る>>