[x3d-public] BooleanToggle output
Don Brutzman
brutzman at nps.edu
Wed Sep 20 07:20:28 PDT 2017
This is an excellent improvement, we should submit a spec change.
Am thinking that similar wording should be provided for IntegerTrigger
integerKey field, e.g.
"Resetting the /integerKey/ field generates a
corresponding /integerKey/ field output event."
http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#IntegerTrigger
==============================================
30.4.6 IntegerTrigger
IntegerTrigger : X3DTriggerNode {
SFBool [in] set_boolean
SFInt32 [in,out] integerKey -1 (-∞,∞)
SFNode [in,out] metadata NULL [X3DMetadataObject]
SFInt32 [out] triggerValue
}
IntegerTrigger handles single field Boolean events to set an integer value for
the output event. This is useful for connecting environmental events to the
Switch node's whichChoice field.
Upon receiving a set_boolean event, the IntegerTrigger node will generate a
triggerValue event with the current value of integerKey. The value of
set_boolean shall be ignored.
==============================================
On 9/18/2017 10:39 AM, Andreas Plesch wrote:
> Sending output fields upon value changes is how the browsers I tested behaved.
> Although to me the sentence in 4.4.8.1 which addresses this behaviour and begins
> with "Nodes also define output fields .." is more explanatory than defining and
> seems to be intended to leave the exact behavior specification to node
> definitions. Here is suggested wording to help clarify 30.4.3:
>
> The BooleanToggle can be reset to a specific state by directly setting the value
> of the inputOutput /toggle/ field. Resetting the /toggle/ field generates a
> corresponding /toggle/ field output event.
>
> There is probably a better and/or more concise phrase to add.
>
> -Andreas
>
> On Mon, Sep 18, 2017 at 12:46 PM, Brutzman, Donald (Don) (CIV) <brutzman at nps.edu
> <mailto:brutzman at nps.edu>> wrote:
>
> Thank you Andreas. Looks like you have identified an ambiguity in the spec
> that might benefit from clarification.
>
> Since the first paragraph specifically identified output events, and the
> second paragraph on "reset" did not, my interpretation was that no event was
> sent as part of a reset. That informed the tooltips and diagram notes.
> However, checking event model rules:
> http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#Events
> <http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#Events>
>
>
>> 4.4.8 Event model
>>
>>
>> 4.4.8.1 Events
>>
>> /Events/ are the primary means of generating behaviors in the X3D run-time
>> environment. Events are used throughout X3D: driving time-based
>> animations; handling object picking; detecting user movement and
>> collision; changing the scene graph hierarchy. The run-time environment
>> manages the propagation of events through the system according to a
>> well-defined set of rules.
>>
>> Nodes define input fields (/i.e./, fields with inputOutput or inputOnly
>> access) that trigger behavior. When a given event occurs, the node
>> receives notification and can potentially change internal state and the
>> value of one or more of its fields. *Nodes also define output fields
>> (/i.e./, fields with inputOutput or outputOnly access) that are sent upon
>> signal state changes or other occurrences within the node.* Events sent to
>> input fields and events sent by output fields are referred to collectively
>> in ISO/IEC 19775 as /Events/.
>>
>
> The bolded sentence (beginning with "Nodes also define output fields... that
> are sent upon signal state changes" ...) indicates that a corresponding
> output event should be sent when the value is changed.
>
> Subject to review, am happy to make the tooltips and diagram notes more
> explicit in this matter. We should likely also add words to spec to avoid
> indirect ambiguity and explicitly add clarity.
>
> all the best, Don
> --
> Don Brutzman Naval Postgraduate School, Code USW/Br brutzman at nps.edu
> <mailto:brutzman at nps.edu>
> Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149
> <tel:+1.831.656.2149>
> X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman
> <http://faculty.nps.edu/brutzman>
>
>
> On Sep 16, 2017, at 4:20 PM, Andreas Plesch <andreasplesch at gmail.com
> <mailto:andreasplesch at gmail.com>> wrote:
>
>> http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#BooleanToggle
>> <http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#BooleanToggle>
>>
>>
>> produces a toggle output event after it receives a set_boolean event.
>>
>> Does it also produce a toggle output event after it receives a toggle
>> input event (to reset the toggle field value) ?
>>
>> http://www.web3d.org/x3d/content/X3dTooltips.html#BooleanToggle
>> <http://www.web3d.org/x3d/content/X3dTooltips.html#BooleanToggle>
>>
>> does not mention this and the diagram at
>> http://x3dgraphics.com/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdf
>> <http://x3dgraphics.com/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdf>
>>
>> also seems silent.
>>
>> Not sure if there are examples which reset the internal value of the
>> toggle field ?
>>
>> Andreas
>> _______________________________________________
>> x3d-public mailing list
>> x3d-public at web3d.org <mailto:x3d-public at web3d.org>
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>> <http://web3d.org/mailman/listinfo/x3d-public_web3d.org>
>
>
>
>
> --
> Andreas Plesch
> Waltham, MA 02453
all the best, Don
--
Don Brutzman Naval Postgraduate School, Code USW/Br brutzman at nps.edu
Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman
More information about the x3d-public
mailing list