FreeCAD Nodes (renamed from fc_nodes)

Show off your FreeCAD projects here!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
bitacovir
Veteran
Posts: 1570
Joined: Sat Apr 19, 2014 6:23 am
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by bitacovir »

This is a feature that i have been waiting for so long.
And other projects too. They will use this feature to expand the addons for FreeCAD:
https://topologic.app/
https://www.ladybug.tools/
...
::bitacovir::
==================
One must be absolutely modern.
Arthur Rimbaud (A Season in Hell -1873)

Canal Youtube Grupo Telegram de FreeCAD Español

My personal web site
My GitHub repository
Mini Airflow Tunnel Project
User avatar
j8sr0230
Posts: 140
Joined: Thu Apr 07, 2022 8:59 am
Location: Chemnitz
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by j8sr0230 »

The joy of visual scripting! FreeCAD Nodes now broadcasts objects in arbitrary nested lists with the power of NumPy https://numpy.org and Awkward Array https://awkward-array.readthedocs.io/en/stable. Contribute to the further development under https://github.com/j8sr0230/fc_nodes.
Data Tree Broadcasting
Data Tree Broadcasting
FreeCAD_Nodes.gif (630.04 KiB) Viewed 9812 times
Codelink on GitHub: https://github.com/j8sr0230/codelink
Codelink on PiPy: https://pypi.org/project/codelink/
FreeCAD Nodes Workbench on GitHub: https://github.com/j8sr0230/Nodes
bleber
Posts: 259
Joined: Thu Jun 30, 2016 5:12 pm

Re: FreeCAD Nodes (fc_nodes)

Post by bleber »

I have these error:
Can be a phithon version linkstage 3.9.13 and my system 3.10?

Code: Select all

22:52:42  Traceback (most recent call last):
  File "/home/dgrabulosa/Baixades/freecadlinkstage3/fc_nodes-main/main.py", line 33, in <module>
    from fcn_window import FCNWindow
  File "/home/dgrabulosa/Baixades/freecadlinkstage3/fc_nodes-main/fcn_window.py", line 8, in <module>
    from nodeeditor.node_editor_window import NodeEditorWindow
<class 'ModuleNotFoundError'>: No module named 'nodeeditor'

Code: Select all

OS: Manjaro Linux (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: 2022.709.26244 +5001 (Git) AppImage
Build type: Release
Branch: LinkDaily
Hash: 096210d21183e9dfdc3b25777760bfb6c00a210b
Python version:[b] 3.9.13[/b]
Qt version: 5.12.9
Coin version: 4.0.1
OCC version: 7.5.3
Locale: Catalan/Spain (ca_ES)

Code: Select all

[dgrabulosa@nitro5 ~]$ pip install nodeeditor
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: nodeeditor in ./.local/lib/python[b]3.10[/b]/site-packages (0.9.13)
Requirement already satisfied: QtPy>=1.9.0 in ./.local/lib/python[b]3.10[/b]/site-packages (from nodeeditor) (2.2.1)
Requirement already satisfied: packaging in /usr/lib/python[b]3.10[/b]/site-packages (from QtPy>=1.9.0->nodeeditor) (21.3)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/lib/python3.10/site-packages (from packaging->QtPy>=1.9.0->nodeeditor) (3.0.9)
Last edited by bleber on Wed Oct 12, 2022 9:41 pm, edited 2 times in total.
User avatar
ragohix769
Posts: 565
Joined: Sat Jul 18, 2020 7:04 am
Location: Rome - Italy

Re: FreeCAD Nodes (fc_nodes)

Post by ragohix769 »

bitacovir wrote: Fri Sep 16, 2022 11:23 pm This is a feature that i have been waiting for so long.
And other projects too. They will use this feature to expand the addons for FreeCAD:
https://topologic.app/
https://www.ladybug.tools/
...
Yes!
j8sr0230 wrote: Wed Oct 12, 2022 5:28 am The joy of visual scripting! FreeCAD Nodes now broadcasts objects in arbitrary nested lists with the power of NumPy https://numpy.org and Awkward Array https://awkward-array.readthedocs.io/en/stable. Contribute to the further development under https://github.com/j8sr0230/fc_nodes.

FreeCAD_Nodes.gif
That's IMPRESSIVE. This is a game changer...
After #ElonMuskBuyTwitter I'm no more on Twitter, that's really enough :-(
=> Now you can find me here on #Mastodon: https://mastodon.uno/@opensoul - I hope more people do the same :-)
User avatar
j8sr0230
Posts: 140
Joined: Thu Apr 07, 2022 8:59 am
Location: Chemnitz
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by j8sr0230 »

bleber wrote: Wed Oct 12, 2022 8:54 pm Can be a phithon version linkstage 3.9.13 and my system 3.10?
@bleber I think this is because you did not install the necessary libraries in the FreeCAD Python 3.9 environment, but into your local Python 3.10 installation. You need to install the follwing libraries into FreeCAD's Python environment using PIP, then everything should work.

Code: Select all

pip install QtPy
pip install git+https://gitlab.com/pavel.krupala/pyqt-node-editor.git
pip install awkward
Please, let me know if it worked out this way.
Codelink on GitHub: https://github.com/j8sr0230/codelink
Codelink on PiPy: https://pypi.org/project/codelink/
FreeCAD Nodes Workbench on GitHub: https://github.com/j8sr0230/Nodes
bleber
Posts: 259
Joined: Thu Jun 30, 2016 5:12 pm

Re: FreeCAD Nodes (fc_nodes)

Post by bleber »

I aply your suggestions but not works:

Freecad error:

Code: Select all

15:16:52  -2.029521 <asm3.main> init_gui.py(14): no solver backend found
15:17:01  Traceback (most recent call last):
  File "/home/dgrabulosa/Baixades/freecadlinkstage3/fc_nodes-main/main.py", line 33, in <module>
    from fcn_window import FCNWindow
  File "/home/dgrabulosa/Baixades/freecadlinkstage3/fc_nodes-main/fcn_window.py", line 8, in <module>
    from nodeeditor.node_editor_window import NodeEditorWindow
<class 'ModuleNotFoundError'>: No module named 'nodeeditor'
Linux console results:

Code: Select all

[dgrabulosa@nitro5 ~]$ pip install QtPy
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: QtPy in ./.local/lib/python3.10/site-packages (2.2.1)
Requirement already satisfied: packaging in /usr/lib/python3.10/site-packages (from QtPy) (21.3)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/lib/python3.10/site-packages (from packaging->QtPy) (3.0.9)
[dgrabulosa@nitro5 ~]$ pip install git+https://gitlab.com/pavel.krupala/pyqt-node-editor.git
Defaulting to user installation because normal site-packages is not writeable
Collecting git+https://gitlab.com/pavel.krupala/pyqt-node-editor.git
  Cloning https://gitlab.com/pavel.krupala/pyqt-node-editor.git to /tmp/pip-req-build-kh55nbce
  Running command git clone --filter=blob:none --quiet https://gitlab.com/pavel.krupala/pyqt-node-editor.git /tmp/pip-req-build-kh55nbce
  Resolved https://gitlab.com/pavel.krupala/pyqt-node-editor.git to commit 77c5b503b49e05b6394f70daf7f9d3a803d6c8d1
  Preparing metadata (setup.py) ... done
Requirement already satisfied: QtPy>=1.9.0 in ./.local/lib/python3.10/site-packages (from nodeeditor==0.9.13) (2.2.1)
Requirement already satisfied: packaging in /usr/lib/python3.10/site-packages (from QtPy>=1.9.0->nodeeditor==0.9.13) (21.3)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/lib/python3.10/site-packages (from packaging->QtPy>=1.9.0->nodeeditor==0.9.13) (3.0.9)
[dgrabulosa@nitro5 ~]$ pip install awkward
Defaulting to user installation because normal site-packages is not writeable
Collecting awkward
  Downloading awkward-1.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.2/12.2 MB 344.3 kB/s eta 0:00:00
Requirement already satisfied: numpy>=1.13.1 in /usr/lib/python3.10/site-packages (from awkward) (1.23.3)
Requirement already satisfied: packaging in /usr/lib/python3.10/site-packages (from awkward) (21.3)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/lib/python3.10/site-packages (from packaging->awkward) (3.0.9)
Installing collected packages: awkward
Successfully installed awkward-1.10.1
[dgrabulosa@nitro5 ~]$ 
User avatar
j8sr0230
Posts: 140
Joined: Thu Apr 07, 2022 8:59 am
Location: Chemnitz
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by j8sr0230 »

bleber wrote: Fri Oct 14, 2022 1:15 pm I aply your suggestions but not works:
@bleber Sorry it took me so long to get back to you, but I was on vacation. Did the installation actually worked?
Codelink on GitHub: https://github.com/j8sr0230/codelink
Codelink on PiPy: https://pypi.org/project/codelink/
FreeCAD Nodes Workbench on GitHub: https://github.com/j8sr0230/Nodes
User avatar
j8sr0230
Posts: 140
Joined: Thu Apr 07, 2022 8:59 am
Location: Chemnitz
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by j8sr0230 »

I started implementing Open Cascade modeling nodes today. As soon as nothing changes in the rough framework, I will create a small tutorial for each node. I'm looking forward to it :)
Nested arrays with FreeCAD Nodes
Nested arrays with FreeCAD Nodes
fcn_nested_array.png (524.85 KiB) Viewed 9389 times
Codelink on GitHub: https://github.com/j8sr0230/codelink
Codelink on PiPy: https://pypi.org/project/codelink/
FreeCAD Nodes Workbench on GitHub: https://github.com/j8sr0230/Nodes
User avatar
j8sr0230
Posts: 140
Joined: Thu Apr 07, 2022 8:59 am
Location: Chemnitz
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by j8sr0230 »

Hello folks,
for Windows users I have put together a dependency-free version of FreeCAD Nodes today (other operating systems will follow). If you want to test FreeCAD Nodes as a workbench, just download the package from the link https://github.com/j8sr0230/fc_nodes/tr ... n_dep_free (Code -> Download ZIP), unzip the archive and copy the SUBFOLDER to your Workbench directory (e.g. C:\Users\admin\AppData\Roaming\FreeCAD\Mod). After starting FreeCAD you should find the new Workbench. It contains a toolbar icon that can be used to start the node editor. I have tested the package with FreeCAD 0.20 stable, FreeCAD 0.21 daily and the latest FreeCAD Link Branch without any problems. Let me know if it works for you ...
Codelink on GitHub: https://github.com/j8sr0230/codelink
Codelink on PiPy: https://pypi.org/project/codelink/
FreeCAD Nodes Workbench on GitHub: https://github.com/j8sr0230/Nodes
User avatar
j8sr0230
Posts: 140
Joined: Thu Apr 07, 2022 8:59 am
Location: Chemnitz
Contact:

Re: FreeCAD Nodes (fc_nodes)

Post by j8sr0230 »

@bleber Hi,
I looked again at your bug report and it is as I suspected. You didn't install the required modules in the correct Python environment, so FreeCAD can't access them at all. You basically did everything right, but used the PIP that belongs to your system Python interpreter (that can be seen from your PIP installation log, Python 3.10). For successful installation you should use the PIP brought by FreeCAD's Python version. Only then FreeCAD's Python (in your case Python 3.9) can access the installed modules.

... or you wait a little bit, until I have put together a dependency-free version of FreeCAD Nodes for your operating system, too. I do my best :D

I hope I could help you further.
Codelink on GitHub: https://github.com/j8sr0230/codelink
Codelink on PiPy: https://pypi.org/project/codelink/
FreeCAD Nodes Workbench on GitHub: https://github.com/j8sr0230/Nodes
Post Reply