二つの座標で一次関数の式を求めるクラス
今やっていることに使うために、次の機能が必要になった。
- 一次関数の傾き(y=ax+bの a )と切片(y=ax+bの b )を求める。
- 引数は、始点と終点の各座標。
そこで今回は、クラスモジュールを一つ準備することにした。
クラスモジュール(LinearFunctionClass)
座標を格納するための配列。
※配列はジャグ配列とする。
Option Explicit Public CoordinateSeq As Variant
始点と終点の距離:x方向。
Public Property Get dx() As Double dx = CoordinateSeq(1)(0) - CoordinateSeq(0)(0) End Property
始点と終点の距離:y方向。
Public Property Get dy() As Double dy = CoordinateSeq(1)(1) - CoordinateSeq(0)(1) End Property
一次関数の傾き。
Public Property Get Slope() As Double Slope = dy / dx End Property
一次関数の切片。
Public Property Get Intercept() As Double Intercept = CoordinateSeq(0)(1) - Slope * CoordinateSeq(0)(0) End Property
xに対応するyの値。
Public Function y(x As Double) As Double y = Slope * x + Intercept End Function
さて、これを用いて、昨日動かしたオートシェイプをアメンボみたいな動かそうとしたのだが、未だ上手くいかず。
それについては、明日へ持ち越しです。
参考まで。