1

この種の条件付き遷移を SCXML で実装したいと考えています。

current_state = s01  
if (Math.random() < 50) go to state s02  
  else go to state s03  

この種の条件付きターゲットは SCXML でサポートされていますか?
それを SCXML 言語に入れるには、次のスニペットと同等のものは可能ですか?

<transition event="event_1">
        <if cond="import java.util.Random; Math.abs(new Random().nextInt(100)) gt 50">
            <target="s02"/>
            <else/>
            <target="s03"/>
        </if>
</transition>

彼らのドキュメントへのポインタをいただければ幸いです。この/それを処理するための代替戦略。
ありがとう。

4

1 に答える 1

1

次の(テストされていない)コードのようなものは、あなたが望むことをします。

<scxml 
    datamodel="ecmascript"
    xmlns="http://www.w3.org/2005/07/scxml"
    version="1.0">

    <state id="s01">
      <transition event="event_1" target="s02" cond="Math.random() &gt; .5"/>
      <transition event="event_1" target="s03"/>
    </state> 

    <state id="s02"/>

    <state id="s03"/>

</scxml>
于 2016-03-10T12:26:01.307 に答える