<div dir="auto">Current code is here:</div><div dir="auto"><br><div dir="auto"><a href="https://github.com/coderextreme/JsonToStl">https://github.com/coderextreme/JsonToStl</a></div><div dir="auto"><br></div><div dir="auto">It’s a pretty clean project, no real build script (make.sh), needs more test cases.</div><div dir="auto"><br></div><div dir="auto">If you want to be a contributor, send me your email and specify your license of choice. Code you work on should include your license in each source file you modify and the main LICENSE file. If you want to create a python blender scripts to go from X3D to STL, that will be cool too. I don’t want a lot of confusion about which IDE to use. I use vim. Use what you like, but don’t create a lot of dependencies, instead use some you didn’t install like easy to read make.bat file to pair with make.sh.</div><div dir="auto"><br></div><div dir="auto">Remember there’s Git Bash, so you can assume bash will be on the system that git uses.</div><div dir="auto"><br></div><div dir="auto">My approach i am considering taking is: first, choosing a set of flat meshes to cover sphere, cone, cylinder, generically. After that, we can cover more complicated meshes like extrusions, 2D geometry and NURBS geometry</div><div dir="auto"><br></div><div dir="auto">So i think that sphere might be a grid mesh, cylinder would be 3 meshes, and cone is 3 meshes.</div><div dir="auto"><br></div><div dir="auto">My plan is to do sphere first, since that will cover my use case.</div><div dir="auto"><br></div><div dir="auto">John</div></div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Dec 20, 2022 at 2:58 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">Wondering, is an X3dToStl.xslt code development planned soon?</div><div dir="auto"><br></div><div dir="auto">The other thing i can work on is continuing JSON to Python conversion.</div><div dir="auto"><br></div><div dir="auto">Is there something i can write that i will use on a regular basis?</div><div dir="auto"><br></div><div dir="auto">Christoph Valentin, what’s the preferred multiuser web software for X3D?</div><div dir="auto"><br></div><div dir="auto">Would syntax highlighting for vim and/or neovim be useful?</div><div dir="auto"><br></div><div dir="auto">John</div><div dir="auto"><br></div><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Dec 20, 2022 at 6:17 AM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="ltr"><div dir="ltr"><div>Here are the functions that are planned or implemented in JsonToStl. Please express which ones you'd like to see implemented next.</div><div><br></div><div>Thanks!</div><div><br></div><div>Also, please discuss what type of LICENSE would be required. If at all possible, I'd like to make some money off this, perhaps by setting up a conversion website or patreon.</div><div><br></div><div>Yes, I'm aware of the STL output in Blender! I'm working on this to enhance X3DJSONLD. Is conversion to STL still desired?</div><div><br></div><div>Thanks,<br><br>John</div><div><br></div><div>function convertJsonToStl(json) {</div><div>function initializeLDNode(json, obj) {</div><div>function findLDNodeInList(use, LDNodeList) {</div><div>function toNormals(json, LDNodeList, ParentNode) {</div><div> IndexedFaceSet : function(obj, LDNode) {</div><div> Group : function(obj, LDNode) {</div><div> Shape : function(obj, LDNode) {</div><div> Box : function(obj, LDNode) {</div><div> IndexedTriangleSet : function(obj, LDNode) {</div><div> IndexedTriangleStripSet : function(obj, LDNode) {</div><div> IndexedTriangleFanSet : function(obj, LDNode) {</div><div> IndexedLineSet : function(obj, LDNode) {</div><div> Normal : function(obj, LDNode) {</div><div> Coordinate : function(obj, LDNode) {</div><div> Transform : function(obj, LDNode) {</div><div> "@scale" : function(obj, LDNode) {</div><div> "@rotation" : function(obj, LDNode) {</div><div> "@translation" : function(obj, LDNode) {</div><div> "@normalPerVertex" : function(obj, LDNode) {</div><div> "@size" : function(obj, LDNode) {</div><div> "@vector" : function(obj, LDNode) {</div><div> "@point" : function(obj, LDNode) {</div><div> "@normalIndex" : function(obj, LDNode) {</div><div> "@coordIndex" : function(obj, LDNode) {</div><div> "@index" : function(obj, LDNode) {</div><div>function vector_product(u, v) {</div><div>function normalize(v) {</div><div>function triangle_normal(a, b, c) {</div><div>function printNormal(prefix, x, y, z, output, transform) {</div><div>function printSFVec3f(prefix, x, y, z, output, transform) {</div><div>function IndexedTriangle(LDNode, output, transform) {</div><div>function transformLDNodesToTriangles(LDNode, output, parentTransform) {</div><div> IndexedFaceSet: function(LDNode, output, transform) {</div><div> Box: function(LDNode, output, transform) {</div><div> SixSided: function(LDNode, output, transform, x, y, z) {</div><div> Square: function(LDNode, output, transform, square) {</div><div> Triangle: function(LDNode, output, transform, coords) {</div></div></div>
</blockquote></div></div>
</blockquote></div></div>