What is the deal with pivy?

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
ezzieyguywuf
Posts: 656
Joined: Tue May 19, 2015 1:11 am

Re: What is the deal with pivy?

Post by ezzieyguywuf »

waebbl wrote: Sun Aug 25, 2019 4:24 pm You can take a look at my overlay at https://github.com/waebbl/waebbl-gentoo on how I am configuring Coin and SoQt to compile pivy and FreeCAD.
This was helpful. Specifically this line.

All I needed to get this to compile properly was to touch these "fake_headers".

I'm left with lots of questions - why are "fake headers" needed? Why aren't the full set up them included from upstream?

But, alas, perhaps those are questions for another day...
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: What is the deal with pivy?

Post by looo »

ezzieyguywuf wrote: Mon Aug 26, 2019 3:02 pm Why aren't the full set up them included from upstream?
Are included in the GitHub repo:
https://github.com/FreeCAD/pivy/pull/46 ... abb898ff86

Anything else missing?
ezzieyguywuf wrote: Mon Aug 26, 2019 3:02 pm why are "fake headers" needed?
I guess swig needs them to create the python bindings.
User avatar
waebbl
Posts: 200
Joined: Thu Aug 16, 2018 3:12 pm

Re: What is the deal with pivy?

Post by waebbl »

looo wrote: Mon Aug 26, 2019 7:03 am
waebbl wrote: Sun Aug 25, 2019 4:24 pm I'm using pivy from the FreeCAD/pivy site at github and only need to remove the NONE from the project line CMakeLists.txt to properly find SoQt and make it build and run.
As far as I can remember "NONE" was necessary for windows without having a default cmake generator available. Not sure why it doesn't work in your case.
I'm also not sure why this happens. You might want to take a look at https://github.com/waebbl/waebbl-gentoo ... -481518227, where this issue was reported and fixed.

The fake_headers are necessary only for the live ebuild, as it pulls from upstream repo. I also have a versioned ebuild, which pulls from FreeCAD/pivy, but still is touching those headers. I'm going to check my build whether this is still needed.
User avatar
kkremitzki
Veteran
Posts: 2511
Joined: Thu Mar 03, 2016 9:52 pm
Location: Illinois

Re: What is the deal with pivy?

Post by kkremitzki »

Mailing list discussion on GitHub migration: https://groups.google.com/forum/#!topic ... uIpI20aXtc
Like my FreeCAD work? I'd appreciate any level of support via Patreon, Liberapay, or PayPal! Read more about what I do at my blog.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: What is the deal with pivy?

Post by Kunda1 »

kkremitzki wrote: Tue Aug 27, 2019 3:11 pm Mailing list discussion on GitHub migration: https://groups.google.com/forum/#!topic ... uIpI20aXtc
Oh, that would be great!
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
waebbl
Posts: 200
Joined: Thu Aug 16, 2018 3:12 pm

Re: What is the deal with pivy?

Post by waebbl »

looo wrote: Mon Aug 26, 2019 4:53 pm
ezzieyguywuf wrote: Mon Aug 26, 2019 3:02 pm Why aren't the full set up them included from upstream?
Are included in the GitHub repo:
https://github.com/FreeCAD/pivy/pull/46 ... abb898ff86
Looked again into why the fake headers needs to be touched. I'm using the tarball from https://github.com/FreeCAD/pivy/releases for the 0.6.4 release, which doesn't contain the fake_headers. It's in your tree, but apparently at a later commit than which was used to build the tarball.

For the live ebuild, it's like I said. Upstream sources don't yet contain the necessary fake headers. So it's needed there as well. This will been adressed, once the files are merged into upstream or 0.6.5 is released, which I suppose contains those files.
cygir
Posts: 1
Joined: Fri May 01, 2020 1:37 pm

Re: What is the deal with pivy?

Post by cygir »

Hello,

I read a lot of FreeCAD, I like the project, read the forum posts but I am not a user. I work in electromagnetics modeling by developping in python. Today I register to the forum to give the result of some google research.

I don't know neither Coin/Pivy nor Ogre3D, so I have no opinion.

That said, the availibity of a cross-platform 3D solution for python (usable with Qt) is also important for me and OGRE seems to be actively developped and some links make me think python is supported, OGRE should not be eliminated too rapidely.
What are the limits ? I can't say. But python and Ogre are not strangers.

I have downloaded the last release of https://github.com/OGRECave/ogre-meshviewer/releases, it woks on windows 1O. I haven't tried to build the SDK myself.
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: What is the deal with pivy?

Post by bernd »

User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: What is the deal with pivy?

Post by Joel_graff »

It was a bit dicey until development on Coin3D picked up again - now that it's on github, it's future is a bit more sustainable, I think.

But, in short, the effort required to transition from Coin3D to another renderer would be a challenge that would take years to solve at this point. Not only do we need a scenegraph renderer which is well maintained, but it must have Python bindings, be Vulkan compatible, and licensed appropriately.

Eventually, either Coin3D development will future-proof itself a bit more (like adding Vulkan support / compatibility where OpenGL support breaks on newer systems) or the need to transition will become too great to ignore. Honestly, I'm feel reasonably hopeful the former will be the case.
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
User avatar
iplayfast
Posts: 256
Joined: Sat Sep 07, 2019 6:55 am

Re: What is the deal with pivy?

Post by iplayfast »

It's an old topic but one that keeps rearing it's ugly head. (recently my build broke around pivy and coin issues).

Why not take @realthunder 's pivy and actually merge it into freecad, as just part of the freecad source, so pivy isn't needed anymore.

I suppose the same could be said for coin3d.
Post Reply