kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #26289
Re: VRML Export
The biggest annoyance is that the meshes for the board layers are made
with the origin in 0, but all the mesh data offset, so to center it
properly you need to center the mesh data or move the mesh origin to
the center of the mesh data on every layer, which is an annoying step
that wouldn't be necessary if the mesh was output centered.
On Sat, Sep 17, 2016 at 9:15 AM, Nick Østergaard <oe.nick@xxxxxxxxx> wrote:
> Den 17/09/2016 15.20 skrev "José Ignacio" <jose.cyborg@xxxxxxxxx>:
>>
>> It works great, both in inline and monolithic mode! one thing I
>> noticed though is that the model output is not centered on the origin
>> (the old exporter probably did this too), it would be nice if it was,
>> as with the board i tested it was really far from the origin and it
>> was annoying to center for rendering on blender.
>>
>
> Isn't that just because it uses the real origin in the pcb. IIRC there are
> easy ways to center blocks in blender.
>
>> On Sat, Sep 17, 2016 at 4:53 AM, Cirilo Bernardo
>> <cirilo.bernardo@xxxxxxxxx> wrote:
>> > On Sat, Sep 17, 2016 at 4:35 PM, José Ignacio <jose.cyborg@xxxxxxxxx>
>> > wrote:
>> >>
>> >> That sound perfect! Does you "Copy 3D model" really copy the
>> >> originals, or rebuild them from the scenegraph? (I very much prefer
>> >> the latter so it's compatible with all the formats), in that case it
>> >> might be best to rename that option as "Use external model files" or
>> >> invert it and call it "Generate single/monolithic file".
>> >>
>> >
>> > Copy 3D model will actually copy any *.wrl file; I did this because some
>> > of
>> > the
>> > polygon triangulation performed by the VRML plugin may lose some
>> > information
>> > from the original file and cause some (minor) artifacts. In the case of
>> > X3D
>> > and
>> > all other supported formats (IDF, IGES, STEP) the scenegraph is used to
>> > create a VRML representation.
>> >
>> > If anyone wants to try out the branch it is here:
>> >
>> >
>> > https://code.launchpad.net/~cirilo-bernardo/kicad/+git/kicad-oce/+ref/vrml_export
>> >
>> > I would appreciate feedback from anyone testing it. I've only checked
>> > the
>> > output
>> > with FreeCAD and view3dscene (FreeCAD uses the COIN library which is
>> > really
>> > an impressive fast VRML renderer). When creating a monolithic file,
>> > DEF/USE
>> > is
>> > employed - there is not yet an option to create a flat file (no
>> > DEF/USE).
>> >
>> > - Cirilo
>> >
>> >
>> >>
>> >> On Fri, Sep 16, 2016 at 7:29 PM, Cirilo Bernardo
>> >> <cirilo.bernardo@xxxxxxxxx> wrote:
>> >> > OK, with the feedback from Maurice and Mario I have retained the
>> >> > Inline{}
>> >> > option but
>> >> > changed the behavior:
>> >> >
>> >> > + If "Copy 3D model files" is activated then Inline{} is used,
>> >> > otherwise
>> >> > a
>> >> > monolithic
>> >> > file is written. This removes the previous behavior that absolute
>> >> > paths
>> >> > can
>> >> > be used in
>> >> > Inline{}; the absolute paths are bad anyway since they differ
>> >> > depending
>> >> > on
>> >> > the OS
>> >> > and VRML files cannot be shared easily. With this new behavior it
>> >> > will
>> >> > be
>> >> > easier to
>> >> > share VRML files which use Inline{}.
>> >> >
>> >> > + In the case of a monolithic file, DEF/USE will be employed. This
>> >> > typically
>> >> > makes
>> >> > the file smaller, especially if complex components have many
>> >> > instances.
>> >> > If
>> >> > people
>> >> > want an option to not use DEF/USE let me know and I can add Yet
>> >> > Another
>> >> > Flag
>> >> > to the export UI.
>> >> >
>> >> > The rework is *mostly* done; I only need to add a few routines to
>> >> > create
>> >> > the
>> >> > board
>> >> > model in the monolithic file (basically pass existing tesselation
>> >> > data
>> >> > and
>> >> > color data
>> >> > to the KiCad scenegraph library).
>> >> >
>> >> > Any more comments/suggestions?
>> >> >
>> >> > - Cirilo
>> >> >
>> >> >
>> >> > On Fri, Sep 16, 2016 at 9:20 AM, easyw <easyw@xxxxxxxxxxxx> wrote:
>> >> >>
>> >> >> Hi Cirilo,
>> >> >> I found inline{} VRML export option very useful and powerful...
>> >> >>
>> >> >> it allows an easy post elaboration to i.e. change color to pcb
>> >> >> board,
>> >> >> traces and solder mask with some macro or tweak the VRML models to
>> >> >> add
>> >> >> texture to the VRML result for an improved visualization or even add
>> >> >> a
>> >> >> vrml
>> >> >> model inline{} to a 3D part to include some external extra objects
>> >> >> not
>> >> >> present in the pcbnew...
>> >> >>
>> >> >> I use Blender to import kicad VRML exported boards and I use also
>> >> >> material
>> >> >> properties without any issues with the actual develop build
>> >> >> branch...
>> >> >>
>> >> >> So in case of a rewriting of the VRML exporter, I would consider
>> >> >> very
>> >> >> useful to leave at least an option to conserve the actual inline{}
>> >> >> structure.
>> >> >>
>> >> >> Thank you
>> >> >> Maurice
>> >> >>
>> >> >>
>> >> >> On 16/09/2016 00:25, Cirilo Bernardo wrote:
>> >> >>>
>> >> >>> Hi folks,
>> >> >>>
>> >> >>> Since the merge of the new 3DViewer the VRML Export routine has
>> >> >>> not
>> >> >>> been able to include x3d data and the few x3d users out there have
>> >> >>> not
>> >> >>> been very happy about this. However, the scenegraph library
>> >> >>> developed
>> >> >>> for the 3D plugin system can easily write monolithic files which
>> >> >>> include
>> >> >>> visualization data for all file formats supported by plugins. This
>> >> >>> means
>> >> >>> that VRML Export can now be modified to either (a) continue to use
>> >> >>> inline{} when a file is created and when copying files the
>> >> >>> scenegraph
>> >> >>> library is used to write VRML model equivalents of other file
>> >> >>> formats
>> >> >>> (x3d, STEP, IGES, IDF) or (b) create a monolithic file with all
>> >> >>> models
>> >> >>> defined internally and reused wherever possible. Personally I would
>> >> >>> prefer (b) since that would eliminate some options in the Export
>> >> >>> routine
>> >> >>> such as "Copy Model Files" and would also eliminate the problem of
>> >> >>> inline{} compatibility with some viewers. There may be problems
>> >> >>> with
>> >> >>> DEF/USE within some programs like Blender but I can always add an
>> >> >>> option to not reuse definitions (Blender's VRML code has so many
>> >> >>> problems though that I doubt this would help).
>> >> >>>
>> >> >>> Any thoughts before I go ahead and rework the VRML exporter?
>> >> >>>
>> >> >>> - Cirilo
>> >> >>>
>> >> >>>
>> >> >>>
>> >> >>> _______________________________________________
>> >> >>> Mailing list: https://launchpad.net/~kicad-developers
>> >> >>> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> >> >>> Unsubscribe : https://launchpad.net/~kicad-developers
>> >> >>> More help : https://help.launchpad.net/ListHelp
>> >> >>>
>> >> >
>> >> >
>> >> > _______________________________________________
>> >> > Mailing list: https://launchpad.net/~kicad-developers
>> >> > Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> >> > Unsubscribe : https://launchpad.net/~kicad-developers
>> >> > More help : https://help.launchpad.net/ListHelp
>> >> >
>> >
>> >
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help : https://help.launchpad.net/ListHelp
References