create3000 / titania

Titania X3D Editor
https://github.com/create3000/titania/wiki
GNU General Public License v3.0
39 stars 10 forks source link

alternate implicit eventin name not recognised in IS association #72

Closed splace closed 5 years ago

splace commented 5 years ago
#VRML V2.0 utf8
PROTO ts [ eventOut SFTime period ]{
    TimeSensor {cycleTime_changed IS period }
}

produces....

PROTO ts [ eventOut SFTime period ]{
    TimeSensor {cycleTime_changed IS period }
                               ^
Unknown field 'cycleTime_changed' in class 'TimeSensor'.

this problem was encountered here:- http://www.x-3-x.net/vrml/archive/cache/virtuality3d.co.uk/binladen/binladen.wrl

and this naming is used in several examples in the spec.(no example for IS association though.)

If startTime equals stopTime then a single time event is generated at startTime/stopTime, a fraction_changed event of 0.0 is sent, a cycleTime_changed of startTime/stopTime is sent, and isActive remains unchanged at FALSE.

create3000 commented 5 years ago

TimeSensor.cycleTime is only a outputOnly (eventOut) field which is only accessible by its plain name. On the other hand a inputOutput (exposedField) field can be access by "set_inputOutputName", "inputOutputName_changed", and "inputOutputName".

splace commented 5 years ago

TimeSensor.cycleTime is only a outputOnly (eventOut) field which is only accessible by its plain name.

the spec uses "cycleTime_changed" (see provided quote) so this can not be correct.

create3000 commented 5 years ago

Can you provide the reference you referring to?

splace commented 5 years ago

http://www2.lecad.si/documents/navodila/vrml2.0/spec/part1/nodesRef.html#TimeSensor

i now see this is only a draft, and the final release has it removed. sorry to bother you. i did find it in several worlds so i guess some player(s) must just have allowed it, or it was at some point OK.