Difference between revisions of "X3D Python Language Binding"
From Web3D.org
(→TBD) |
Vmarchetti (Talk | contribs) (→Resources) |
||
Line 15: | Line 15: | ||
** H3D | ** H3D | ||
** Blender has an independent interface | ** Blender has an independent interface | ||
+ | ** pyOCC python interface to Open Cascasde geometry kernel | ||
John Carlson has produced | John Carlson has produced |
Revision as of 16:02, 20 July 2018
The X3D Working Group has started to work on this important potential addition to the suite of X3D-capable programming languages and file encodings.
Contents
Motivation
Why:
- multiple language bindings provide equivalent implementations of X3D Scene Access Interface (SAI) Specification, which in turn accesses the X3D Architecture Specification
- Python is widely used, so many tools and applications might then easily create/use/produce X3D
- We are not afraid of programming languages that depend on whitespace!
The X3D Specification Relationships diagram shows how the various programming-language bindings and file encodings are related.
Resources
- Python script interfaces
- H3D
- Blender has an independent interface
- pyOCC python interface to Open Cascasde geometry kernel
John Carlson has produced
Deliverables
- Draft 19777-6 specification added in GitHub
- Follow examples of other X3D language bindings
- Reach proof-of-capability initial draft
- New Work Item Proposal (NWIP) by Web3D Consortium for ISO
- Example scenes
- Test scenes to demonstrate design patterns
- Implementations
- Conversion stylesheet, X3dToPython.xslt
- PyJnius cross-compilation conversion of X3DJSAIL java classes
- Possibly another library, X3DPSAIL perhaps?
- Validation by compilation
- are special tests needed, written in Python, to test program validity?
- Compatible with X3D Unified Object Model (X3DUOM)
- Plan of Action Milestones (POAM)
TBD
To Be Determined:
- Is it possible to run Python scripts in a Web browser?
- Python support for DOM?
- Masaki Aono produced some speculative code a few years ago