← Back to team overview

kicad-developers team mailing list archive

Re: Plugin plans (post-stable release)

 

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 [cirilo.bernardo@xxxxxxxxx]
Sent: 17 June 2015 11:49
To: Mário Luzeiro
Cc: Tomasz Wlostowski; kicad-developers@xxxxxxxxxxxxxxxxxxx
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 <mrluzeiro@xxxxx<mailto:mrluzeiro@xxxxx>> 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 [cirilo.bernardo@xxxxxxxxx<mailto:cirilo.bernardo@xxxxxxxxx>]
Sent: 17 June 2015 01:18
To: Mário Luzeiro
Cc: Tomasz Wlostowski; kicad-developers@xxxxxxxxxxxxxxxxxxx<mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
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


References