Project

General

Profile

Actions

バグ #988

closed

[1.0.0版検証] コンフィグパラメータの制約条件(Vol2)

Added by Anonymous about 15 years ago. Updated over 14 years ago.

Status:
終了
Priority:
通常
Assignee:
Target version:
-
Start date:
11/19/2009
Due date:
% Done:

100%

Estimated time:

Description

制約条件の入力の仕方が分かり、また、「RTC名.conf」のコメントアウトを外すことで、
制約条件を有効化できたので、確認を行っていたところ、いくつかの不具合が出ています。
(RtSystemEditor側の操作にも影響してますが、こちらにチケット発行します。調整ください。)

(1)"Widget"に「radio」を選ぶと、"Step"の欄が入力不可となるが、これは、他のコンフィグパラメータを変更する時にも影響が残ってしてしまい、他のパラメータで例えば「Slider」を選んだ際に、"Step"を入れられない状態になる。

(2)"Step"について、「刻み幅」を入れるものと思ってましたが、Step数を入れるようですね。これは、刻み幅を入れた方がユーザビリティ的には良いのでは?(例えば大きなMin/Maxの場合は均等な刻みにするためのStep数を算出したり、割り切れない数の場合に面倒です。ユーザは「1」とか「100」とか「0.1」とかを入れたいと思います。)

(3)Builderで、「Spin」を選び、例えば「-100<x<100」という制約にし、"Step"に「100」を
入れて保存してgenerateすると、吐かれる「RTC名.conf」にSpinの刻み情報が入りません。
気づけば、入力したはずの"Step"の値が消えてます。("Slider"の時は入りますが。)どうも、Spinの時のStepの入力が反映されない。

(4)「RTC名.conf」を手修正し、例えば、"conf._widget_.aaaa: spin.100"などとして、RTCを
起動すると、コンフィグの変更において、普通のテキストBOXになりSpin機能が出てきません。
そもそも、Spinの刻みを指定が不可?

(5)Spinの場合、Stepなしのデフォルトだと、「1」ずつ刻まれるようですが、上述の「-100<x<100」
という制約に対し、負の値の方に進めません「0」より下がれません。

(6)例えば、コンフィグパラメータがDouble型だとしても、制約条件で「-100<x<100」のように
int扱いにすると、Stepを変えても、小数点単位で刻めない(Spinだと「1」ずつ)。「-100.0<x<100.0」のように変えれば、Spinの場合「0.1」ずつ、「-100.00<x<100.00」とすれば、「0.01」ずつのようだが、
ここは、やはり、制約条件の有効数字を見るのではなく、「Step数」でなく「刻み幅」としてその刻みの
有効数字で小数点判断した方がよいのでは?

(7)Slider,Splinとも、テキスト入力にて、Min/Maxを越える値を指定できるが、その際に、
赤色に入力欄がなり、強制的にApplyした時に、Min/Max値に変更される場合と、そうではなく
ランダムな値に変わることがある。エラー処理の部分があやしいかも?

(8)「Slider」において、デフォルト値が「1.0」とし、制約が「-100.0<x<100」の場合に、最初のバーの位置が「1.0」の位置にない。(表示は「1.0」なのに、実際は「-53.0」くらいの位置にあった)

(9)細かいですが、「radio」で列挙型に同一なものを入れてもエラーは出ません。このままRTCを起動すると、初期値で複数にradioが付く不具合もあります。(このあたりはエラー処理が細かいので未着手と思いますが。)

(10)制約条件については、開発者が決めるため、Builderで指定は納得ですが、"Step"については、
どちらかというとRTC利用者に依存すると思うので、Builderで指定すべなのか疑問があります。
これは、RtSystemEditorのコンフィグ変更画面にて、ユーザが指定できるようにした方がよいのでは?


Files

7-5.png (242 KB) 7-5.png Anonymous, 01/19/2010 06:00 PM
8-1.png (202 KB) 8-1.png Anonymous, 01/19/2010 06:00 PM
8-2.png (203 KB) 8-2.png Anonymous, 01/19/2010 06:00 PM
8-3.png (203 KB) 8-3.png Anonymous, 01/19/2010 06:00 PM
test.zip (27 KB) test.zip Anonymous, 01/19/2010 06:00 PM
7-1.png (203 KB) 7-1.png Anonymous, 01/19/2010 06:00 PM
7-2.png (203 KB) 7-2.png Anonymous, 01/19/2010 06:00 PM
7-3.png (168 KB) 7-3.png Anonymous, 01/19/2010 06:00 PM
7-4.png (202 KB) 7-4.png Anonymous, 01/19/2010 06:00 PM
Actions #1

Updated by ta almost 15 years ago

  • Status changed from 新規 to 担当
  • Assignee set to ta
  • % Done changed from 0 to 50

(1)(3)については修正済み
(5)Eclipse3.4版にて修正(3.2版ではEclipseの制約により設定不可)
(7)(8)現象を再現できませんでした
(9)RtcBuilder側のValidationは追加

Updated by Anonymous almost 15 years ago

(7)、(8)について、SyatemEditorで再現しないということでしたが、念のため
補足情報としての現象の図と、現象が起きたサンプルRTC(C++版,Ubuntu8.04で動作確認)を
添付します。
もし、そちらの環境でもテスト出来るようであればご利用ください。

(7)について、「ランダム」という表現は間違ってました、すいません。
添付の「7-1」の図で、Sliderの「distanceLimit」の値が元々「1.0」ですが、
「200.0」を入力しようとして、「20.0」のように入力途中で既にSliderもその位置に
追従して動いてくれますが、添付の「7-2」のように「200.0」にしてみます。
このとき、Maxは「100.0」ですので、Validateでエラーとなり赤色になります。
このまま、Applyすると、「7-3」のように、現在のSliderのある位置の値「20.0」が
自動的に入るようです。

次に、添付の「7-4」のSpinの「timeLimit」というパラメータの方ですが、同様に
MAXが「100.0」なのですが、「500.0」にしてみようと「50.0」までの入力はOKですが、
0を付け足して「500.0」にしてフォーカスがずれた途端、MAX値の「100.0」に自動的に
補正されます。(添付の7-5)

ということで、MAX値の補正の場合と、Sliderの位置の自動取得という2パターンのようです。
仕様通りであれば、そのままでお願いします。

次に、(8)についてですが、今回分かりやすいように、Sliderのパラメータ「distanceLimit」を
対象として、元々「100.0」という値だった場合、「編集」ボタンで起動すると、添付8-1のような
位置にSliderがセットされます。これをスライダー両サイドの矢印ボタンで1回クリックすると、
添付8-2のように「-55.5」になります。つまり、この位置は「-55付近」であり、本来「100.0」で
あれば、添付8-3のような位置にSliderがなければならないという意味で書いていました。

やはり再現しないでしょうか?

Actions #3

Updated by ta almost 15 years ago

  • % Done changed from 50 to 60

(4)を修正
(9)RTSystemEditor側を修正
(7)(8)再度,現象を確認中

Actions #4

Updated by ta almost 15 years ago

(2)につきましては,「刻み幅」を入力する形に修正させて頂きます.(Eclipse3.4版にて修正)
(10)につきましては,コンポーネント開発者側が設定する内容とのことでした.
(7)につきましては,Linux上でスピナを利用した場合のみ再現いたしました.
(Windows版とLinux版で挙動が異なっているようです)
再度,修正内容を検討させて頂きます.
(8)につきましては,再現できませんでした.(2)の修正と合わせまして再度検証させて頂きます.

Actions #5

Updated by ta almost 15 years ago

  • Status changed from 担当 to 解決
  • % Done changed from 60 to 100

(1)(2)(3)(4)(5)(6)(9)については修正させて頂きました
(10)につきましては,コンポーネント開発者側が設定する内容とのご判断でした
(7)につきましては,Min/Max値を超えた値が入力された場合には,Min/Max値を設定する形に修正させて頂きました
(8)につきましては,再現できませんでした.

Actions #6

Updated by n-ando over 14 years ago

  • Status changed from 解決 to 終了
Actions

Also available in: Atom PDF