[x3d-public] Sample X3D Python API; examplespublishedforcontinuingimprovement

John Carlson yottzumm at gmail.com
Mon Apr 22 21:41:23 PDT 2019


The reason the non-*.future.py Python files work is because the return value from SAI methods is ignored.
Otherwise, they would have the same issue as the future.py files.

I have not changed the PythonSerializer.js, only PythonPipeliningSerializer.js

Sent from Mail for Windows 10

From: John Carlson
Sent: Monday, April 22, 2019 11:34 PM
To: Brutzman, Donald (Don) (CIV)
Cc: X3D Graphics public mailing list
Subject: RE: [x3d-public] Sample X3D Python API;examplespublishedforcontinuingimprovement

But I removed uses of SAI, and it seems to be working a LOT better.

John

Sent from Mail for Windows 10

From: John Carlson
Sent: Monday, April 22, 2019 11:34 PM
To: Brutzman, Donald (Don) (CIV)
Cc: X3D Graphics public mailing list
Subject: RE: [x3d-public] Sample X3D Python API;examplespublishedforcontinuing improvement

Yes, I am using the X3DViewpointNode.  It’s returned in the SAI interface contract.

John

Sent from Mail for Windows 10

From: Brutzman, Donald (Don) (CIV)
Sent: Monday, April 22, 2019 10:57 PM
To: John Carlson
Cc: X3D Graphics public mailing list
Subject: Re: [x3d-public] Sample X3D Python API; examplespublishedforcontinuing improvement

Our messages crossed but are quite similar... we might have the problem surrounded I hope...

On 4/22/2019 8:45 PM, John Carlson wrote:
> This is a more broad problem than pyjnius, and is likely a Java problem that is letting things past the interface contract.  Okay, I will try to explain what the bug is:
> 
> setDEF in X3DViewpointNode returns an X3DViewpointNode (interface)
> 
> public X3DViewpointNode setDEF(String newValue);
[...]

Please make sure that you have _no_ references to abstract class X3DViewpointNode anywhere in your code.

The Java source for concrete class ViewpointObject specifically overrides its abstract parent superclass with an @Override annotation.  Inside X3DJSAIL the setDEF() method correctly returns type ViewpointObject.

If we remove all references to X3D*Node abstract classes everywhere and the problem still occurs, then
- perhaps not all of those definitions are removed, or
- perhaps an old file in the path is somehow visible, or
- we have isolated a bug in Pyjnius that we can ask them to fix.

Good luck sir.

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



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20190422/ca4619e7/attachment-0001.html>


More information about the x3d-public mailing list