Hi Cirilo, As I explained, in my point if view there is no point to do "substantial changes". From the analysis I did, I find lots of things that then are missing or desired so the proper way will be rewrite from rewrite from scratch a new proper solution. Otherwise it will be constructing a car with wood wheels.. or maybe the opposite.. add alloy wheels to a wood car :)
Mario Luzeiro ________________________________________ From: Cirilo Bernardo [[email protected]] Sent: 17 June 2015 11:49 To: Mário Luzeiro Cc: Tomasz Wlostowski; [email protected] Subject: Re: [Kicad-developers] Plugin plans (post-stable release) Thanks Mario, I'll have a look at the documents you've written. This is a tricky one since I plan to make substantial changes to the code currently handling 3D models; I wouldn't want you to do too much work only to find that everything needs to be refactored. On the other hand I don't know how much time it would take me to do the refactoring which I mentioned; I would say at least 2 months if everything goes well. - Cirilo On Wed, Jun 17, 2015 at 6:43 PM, Mário Luzeiro <[email protected]<mailto:[email protected]>> wrote: Hi Cirilo, I object! :P I think I mainly agree with your points. In [1] you can find (a draft/ WIP ) of a UML model I design for the 3dparsers, in [2] there is a structure architecture that I design to handle VRML/X3D. That is a simplification of the specification and it have in mind to handle VRML1, VRML2, X3D different information. On [1] you find also that I have in mind a LRU (last recently used) cache and there is a model manager with a function: bool GetModel(const wxString &aFileName, XV3D_NODE_PTR aDstNode_Ptr) (that was what you also propose in your last email.. the manager will look first in the cache, and if not found it will try to load the filename ). On [3] you will find my design for viewer widgets. So the 3dcanvas is split from the 3dviewer window and it can be used to put inside some UI directly. (Then you can use similar way that is is used now to update / show the 3dviewer while selecting footprints.. but you can use to display in a form.) So my objection is, perhaps it would be nice if you would like to work on this 3D load part we should / can work together defining the solution (you can help improve / change what I already did on this UML diagrams) and then booth work on implementation. However, as you can see from this diagrams, that only makes sense on this all new rewriting 3d-viewer. All data structures .. types..etc are new and need to be implemented. There is almost no reuse from old-3d-viewer. That will take.. loong time. All of this things I design are related with 3d-viewer and have in mind to import and display data. You perhaps may find some ideas from it if you would like to implement exporters, but I would prefer if we could keep the exporters separate as they are now, of course, we shall reuse source code for whatever propose. [1] http://bazaar.launchpad.net/~mrluzeiro/kicad/kicad_new3d-viewer/download/head:/class_diagram_3dpars-20150617081727-l1z78oarbyy7ps7n-2/class_diagram_3dparsers.svg [2] http://bazaar.launchpad.net/~mrluzeiro/kicad/kicad_new3d-viewer/download/head:/class_diagram_3dxv3d-20150617081727-l1z78oarbyy7ps7n-1/class_diagram_3dXV3D.svg [3] http://bazaar.launchpad.net/~mrluzeiro/kicad/kicad_new3d-viewer/download/head:/3dviewersource_docum-20150419152220-nv6ll6ix8w9ab3gi-2/class_diagram_3d-viewer.svg [4] http://bazaar.launchpad.net/~mrluzeiro/kicad/kicad_new3d-viewer/download/head:/class_diagram_3drend-20150617081727-l1z78oarbyy7ps7n-3/class_diagram_3drendering.svg Let me know if that fits what you had in mind and if you really want work on something related with this that we can join efforts. Tomasz W.: perhaps you would like to have look on [1] also! Cheers, Mario Luzeiro ________________________________________ From: Cirilo Bernardo [[email protected]<mailto:[email protected]>] Sent: 17 June 2015 01:18 To: Mário Luzeiro Cc: Tomasz Wlostowski; [email protected]<mailto:[email protected]> Subject: Re: [Kicad-developers] Plugin plans (post-stable release) If there are no objections I'll work on the 3D Manager and base class for 3D models. I should be able to move the existing VRML/X3D code into this as well as the IDF code. I should also be able to generate display data for the IDF models, though I may also need to refactor the IDF framework code to do it. - Cirilo _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

