[x3d-public] Turning on and off simultaneous animations individually
Andreas Plesch
andreasplesch at gmail.com
Tue Feb 4 10:26:40 PST 2025
Hi John, all,
It turns out that x3dom currently expects a default value for Proto fields
even for outputOnly fields. This is due to how Proto fields are
initialized. They always need to have a value. While the spec. does not
require this, it seems still good practice to always define a default value
in the ProtoInterface. There may be a case where an outputOnly field is
used in ISing where a valid value would be expected. There may be other
corner cases.
Here is your example with added default values for outputOnly fields:
https://andreasplesch.github.io/Library/Viewer/index.html?url=https://gist.githubusercontent.com/andreasplesch/af5ff3148c1159f71d34fb78c1f63024/raw/b3d4470107ab74e301ed48448ab2a4f4154672e0/ManyClocks_John.x3d
This could be fixed in x3dom, by always setting some default value. Is
there a list of recommended defaults for each data type if no other source
of defaults is available? For SFTime it seems to be -1.
-Andreas
On Mon, Feb 3, 2025 at 7:39 AM Andreas Plesch <andreasplesch at gmail.com>
wrote:
> Hi John,
>
> On Mon, Feb 3, 2025 at 12:48 AM John Carlson <yottzumm at gmail.com> wrote:
>
>> Andreas, "startTime" is an accessType outputOnly field, so why do I need
>> to provide a value attribute in fieldValue? I'm kind of confused. I'm
>> probably missing something in the spec.
>>
>
> You are right, I only outlined scenarios where the accessType allows input
> or initialization..
> In the outputOnly case it is not necessary to provide a fieldValue node at
> all since there is no value which can be provided. Providing the node would
> indeed be confusing, to both the user code reader and any X3D browser.
> I believe the spec. is silent on this case in any encoding.
>
> Best, Andreas
>
> Thanks for any clarification.
>>
>> I have finally enabled schematron on the project, but I'm finding it hard
>> to understand the messages, and modifications that I make, while removing
>> the immediate problems, seem to move the problems elsewhere.
>>
>> Explaining why I need a "startTime" fieldValue value is my main lack of
>> understanding, but perhaps I need a whole review of accessType.
>>
>> Castle Model Converter reports:
>>
>> castle-model-converter: Warning: X3D: X3D XML: <fieldValue> element
>> references unknown field name "enabled"
>> castle-model-converter: Warning: X3D: X3D XML: <fieldValue> element
>> references unknown field name "startTime"
>> castle-model-converter: Warning: X3D: X3D XML: <fieldValue> element
>> references unknown field name "stopTime"
>>
>> I will try providing a field value in the ProtoInterface
>>
>> If I "cleanup" enabled, startTime and stopTime, I get:
>>
>> castle-model-converter: Warning: VRML/X3D: Within prototype "MenuItem",
>> event "inputTrue" references (by "IS" clause) non-existing event "enabled"
>> castle-model-converter: Warning: VRML/X3D: Within prototype "MenuItem",
>> event "triggerTime" references (by "IS" clause) non-existing event
>> "startTime"
>> castle-model-converter: Warning: VRML/X3D: Within prototype "MenuItem",
>> event "triggerTime" references (by "IS" clause) non-existing event
>> "stopTime"
>>
>> I guess what I conclude at this point is, startTime and stopTime are bad
>> DEF names, but what about enabled as a field? The dominoes are falling.
>>
>> About your two scenarios in the other message, perhaps this is revealing.
>>
>> See attached attempt to fix original issue, which resulted in the above.
>>
>> John
>>
>> On Sun, Feb 2, 2025 at 3:59 PM Andreas Plesch <andreasplesch at gmail.com>
>> wrote:
>>
>>> I think x3dom, reasonably, expects a value for the fieldValue nodes:
>>>
>>> For example:
>>>
>>> <fieldValue name="startTime" />
>>>
>>> and others.
>>>
>>> On Sun, Feb 2, 2025 at 5:42 AM John Carlson <yottzumm at gmail.com> wrote:
>>>
>>>> Andreas, Joe,
>>>>
>>>> Reset Button, Reset_Clock added.
>>>>
>>>> See attached zip for details, or visit link;
>>>>
>>>>
>>>> https://create3000.github.io/x_ite/playground/?url=https://raw.githubusercontent.com/coderextreme/ci2had/refs/heads/main/resources/CleanedYouClocks.x3d
>>>>
>>>> For some reason, this link doesn't show the live scene?
>>>>
>>>>
>>>> https://andreasplesch.github.io/Library/Viewer/index.html?url=https://raw.githubusercontent.com/coderextreme/ci2had/refs/heads/main/resources/CleanedYouClocks.x3d
>>>>
>>>> Puzzled, haven't researched it yet. Looks good in Sunrize and X_ITE,
>>>> will try FreeWRL next.
>>>>
>>>> John
>>>>
>>>>>
>>>
>>> --
>>> Andreas Plesch
>>> Waltham, MA 02453
>>>
>>
>
> --
> Andreas Plesch
> Waltham, MA 02453
>
--
Andreas Plesch
Waltham, MA 02453
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20250204/5a2aa8f6/attachment-0001.html>
More information about the x3d-public
mailing list