[x3d-public] Results for today with x3d.py, _X3DField
John Carlson
yottzumm at gmail.com
Mon Dec 6 00:27:11 PST 2021
Apparently the package/module hasn't propagated yet, because it said I
had 4.0.43 up-to-date. But I got x3d.py from sourceforge:
The follow diff allowed me to export JSON as found in a previous
attachment. Perhaps we should add indent and syntaxs to all JSON def
methods? Also, the str I adding I think prints out NoneType...not
desired in JSON, perhaps we need to throw an exception? if each.JSON()
returns None or NoneType? I will review particulars you have changed.
$ diff /c/x3d-code/www.web3d.org/x3d/stylesheets/python/x3d.py x3d.py
12286c12286
< result += each.JSON(indentLevel=indentLevel+1,
syntax=syntax)
---
> result += str(each.JSON())
42390c42390
< result += each.JSON(indentLevel=indentLevel+1,
syntax=syntax)
---
> result += each.JSON()
77395c77395
< result +=
self.geometry.JSON(indentLevel=indentLevel+1, syntax=syntax)
---
> result += self.geometry.JSON()
89045c89045
< result += each.JSON(indentLevel=indentLevel+1,
syntax=syntax)
---
> result += each.JSON()
On 12/6/21 00:36, Brutzman, Donald (Don) (CIV) wrote:
>
> I think it cleaned up OK. Changes tested and checked in, now version
> 4.0.44 on PyPi.
>
> * https://pypi.org/project/x3d
>
> 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 https://
> faculty.nps.edu/brutzman
>
> *From:* Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
> *Sent:* Sunday, December 5, 2021 10:09 PM
> *To:* vmarchetti at kshell.com; John Carlson <yottzumm at gmail.com>
> *Cc:* X3D-Public <x3d-public at web3d.org>; Brutzman, Donald (Don) (CIV)
> <brutzman at nps.edu>
> *Subject:* RE: [x3d-public] Results for today with x3d.py, _X3DField
>
> Thanks for reports and correct diagnosis. I did take out the three
> “object” inheritances earlier today, pylint says it is no longer
> required in Python 3, no ill effects noted.
>
> I have tried to follow X3D4 Architecture exactly, and am keen to avoid
> overwriting! Hopefully tonight’s build looks a bit better.
>
> The specification does not show X3DField inheriting from anything.
>
> * X3D4 Architecture, 5.2.3 X3DField
> * https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/fieldTypes.html#X3DField
>
> * X3D4 Architecture, 54.4.2.3 Interface hierarchy
> * (looks like first line of Figure 4.2 needs more whitespace)
> * https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/concepts.html#InterfaceHierarchy
>
> Sure enough, searching for “class _ X3DField” in x3d.py reveals two
> abstract class definitions, ouch! That’s more like multiple
> personalities that multiple inheritance…
>
> Will work on fixing the autogeneration of offending version.
>
> 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 https://
> faculty.nps.edu/brutzman
>
> *From:* vmarchetti at kshell.com <vmarchetti at kshell.com>
> *Sent:* Sunday, December 5, 2021 3:59 AM
> *To:* John Carlson <yottzumm at gmail.com>
> *Cc:* Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>; X3D-Public
> <x3d-public at web3d.org>
> *Subject:* Re: [x3d-public] Results for today with x3d.py, _X3DField
>
> Python does support multiple inheritance, but these fragments are not
> an example of a multiple-inheritance situation -- rather, the later
> class definition -- where _X3DField is a subclass of _X3DNode,
> overwrites the earlier class definition.
>
> In the x3d.py file, only three classes are defined as direct
> subclasses of object:
>
> class _X3DField
>
> class _X3DNode
>
> class _X3DStatement
>
> So I think the operative question is whether it is a design intent
> that _X3DField also should be a subclass of _X3DNode. I judge the
> answer is no, since that would include support for DEF, USE, and
> metadata. In that light, the second class defintion for _X3DField
> would be regarded as a bug, to be corrected by modifying
> the X3duomToX3dPythonPackage.xslt stylesheet.
>
> On Dec 4, 2021, at 11:40 PM, John Carlson <yottzumm at gmail.com> wrote:
>
> Two declarations of _X3DField?
>
> $ grep "class _X3DField" x3d.py
>
> *class _X3DField*(object):
>
> *class _X3DField*(_X3DNode):
>
> Is there a pylint?
>
> Isn't multiple inheritance possible?
>
> Thanks!
>
> John
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20211206/c05de7b0/attachment.html>
More information about the x3d-public
mailing list