FAQ

FAMOS

シーケンス / 関数top

シーケンス / 関数

ID.

Q. 波形の一部を一定値や別の波形で置換したい

A.


標準波形の場合はRepl()関数とReplIndex()関数、XY波形の場合はReplIndex()関数で波形の置換ができます。

例)

; 標準波形の置換
_t = ramp(0, 0.001, 1000) * PI2
data = sin(_t) ; サンプルデータ

_replace = Cut(data, 0.1, 0.3) ; 置換範囲(時間で指定)
_replace = _replace * 0 + 0.2 ; 置換したい波形
new_data = Repl(data, _replace) ; 置換

; カーブウィンドウで表示
CwNewWindow("Cv1", "show")
CwSelectWindow("Cv1")
CwAction("reset")
CwPosition(0,0,480,480)
CwNewChannel("append last axis", data)
CwNewChannel("append last axis", new_data)
CwLineSet("width.screen", 0.5)

; XY波形の置換
_t = ramp(0, 0.001, 500) * PI2
data_xy = XYof(sin(_t), cos(_t)) ; サンプルデータ。半円

_start_index = 50 ; 置換範囲(インデックスで指定)
_end_index = 100
_replace = CutIndex(data_xy, _start_index, _end_index)
_replace.Y = _replace.Y * 0 + 0.2 ; 置換したい波形
new_data_xy = ReplIndex(data_xy, _replace, _start_index) ; 置換

; カーブウィンドウで表示
CwNewWindow("Cv2", "show")
CwSelectWindow("Cv2")
CwAction("reset")
CwPosition(480,0,480,480)
CwNewChannel("append last axis", data_xy)
CwNewChannel("append last axis", new_data_xy)
CwLineSet("width.screen", 0.5)


製品詳細はこちら

<< シーケンス / 関数に関するFAQ一覧へ戻る