CalligaroV's Showcase

Show off your FreeCAD projects here!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
User avatar
calligarov
Posts: 47
Joined: Sun Jan 01, 2023 3:08 pm
Location: Cadore, Italy
Contact:

CalligaroV's Showcase

Post by calligarov »

Hello Everybody!

As this is my first post I'd like to introduce myself before diving into the topic:
My name is Vincenzo Calligaro and I'm an italian bachelor in Automation Engineering graduated at the Polytechnic School of Milan (Politecnico di Milano).
Until October 2021 I was an AHU&HPAC Unit Controllers Developer at MEHITS, then I left and tried to start my own business.

I'm also an occasional contributor of Open Source Ecology (OSE), you can find the link to my contributions in my signature.

As wrote above, I'm trying to start my own business about open source software/hardware, based on OSE's concepts, and therefor i discovered and started using FreeCAD.

As of now I made the 3D model of one of the 3D Printers built by OSE (and of other machines, but not completed yet :roll: )
The FCstd file is too heavy to upload here, but you can download it from my GitLab repository (all the parts are simple copies of the parts made with PartDesign) or from it's page on OSE's wiki (both the previous file and all the single parts made using PartDesing)

D3D Universal 3, made using the workbenches PartDesign, Draft (for placing the part in the assembly) and Fasteners.
D3D Universal 3, made using the workbenches PartDesign, Draft (for placing the part in the assembly) and Fasteners.
D3DUniversal3.png (219.83 KiB) Viewed 2928 times



D3D Universal 3 render, made using the Render Workbench and the povray_studio_dark template
D3D Universal 3 render, made using the Render Workbench and the povray_studio_dark template
D3DUniversal3Render.png (253.16 KiB) Viewed 2928 times

Beside my contributions to OSE I made some tests of integration between MCAD (FreeCAD) and ECAD/EDA(KiCAD)
Following you can see my attempt to design an Arduino Mega 2560 rev3 board.
It's shared on Google Drive

Arduino Mega 2560 rev3 board, made using KiCAD and imported in FreeCAD using the workbench KiCADStepUp
Arduino Mega 2560 rev3 board, made using KiCAD and imported in FreeCAD using the workbench KiCADStepUp
ArduinoMega2560Rev3.png (219.88 KiB) Viewed 2928 times



Arduino Mega 2560 rev3 board render, made using the same workbench and template of the D3D Universal 3 render
Arduino Mega 2560 rev3 board render, made using the same workbench and template of the D3D Universal 3 render
ArduinoMega2560Rev3Render.png (197.68 KiB) Viewed 2928 times

Also, I'm trying to learn how to use the worbench Path for PCB Milling (and milling in general).
As before, you can find the original file on my Google Drive.

PCB milling test for an ESP32 DevKit base with DuPont connetors, made using KiCAD and FreeCAD's workbenches KiCADStepUp and Path
PCB milling test for an ESP32 DevKit base with DuPont connetors, made using KiCAD and FreeCAD's workbenches KiCADStepUp and Path
ESP32DevKitBase.png (389.02 KiB) Viewed 2928 times

All the models I posted here were made in this last year, always using the latest version available (I compile it almost every day after pulling the latest commit ;) )
At the moment I'm using

Code: Select all

OS: Linux Mint 21 (X-Cinnamon/cinnamon)
Word size of FreeCAD: 64-bit
Version: 0.21.0.31498 (Git)
Build type: Release
Branch: master
Hash: f8827198ee137781dd357e68b67091915e0c01b2
Python 3.10.6, Qt 5.15.3, Coin 4.0.0, Vtk 7.1.1, OCC 7.5.2
Locale: Italian/Italy (it_IT)
Installed mods: 
  * Assembly4 0.12.5
  * ExplodedAssembly
  * Beltrami 1.0.8-alpha
  * Glass.backup1661939747.4890919
  * ose-piping-workbench
  * sheetmetal 0.2.60
  * VendorParts
  * Curves 0.6.5
  * fasteners 0.4.51
  * A2plus 0.4.60g
  * fcgear 1.0.0
  * kicadStepUpMod 10.16.8
  * Trails 2022.1.0
  * ose-3d-printer-workbench
  * Render 2022.4.0
I hope I'll be able to contribute to bug fixes or feature requests in the near future but for now I just want to say thank you very much for this nice software! :D

Best regards,

Vincenzo Calligaro
You can find some more info about me at https://wiki.opensourceecology.org/wiki/User:Calligarov

My GitLab profile: https://gitlab.com/calligarov
howetuft
Posts: 314
Joined: Tue Sep 10, 2019 8:16 pm

Re: CalligaroV's Showcase

Post by howetuft »

Hello,
Really nice renderings! Did you encounter any difficulties to obtain them? And have you tried povray_studio_light template (there are black parts in your model, it might be more suitable)?
User avatar
calligarov
Posts: 47
Joined: Sun Jan 01, 2023 3:08 pm
Location: Cadore, Italy
Contact:

Re: CalligaroV's Showcase

Post by calligarov »

Hi @howetuft!

Thank you very much for the feedback and even more for your contributions to the Render Workbench! :D
Answering to your questions:
howetuft wrote: Tue Jan 03, 2023 5:25 pm Did you encounter any difficulties to obtain them?
For those renders I haven't had any issues, everything worked nice and smooth and didn't took me too much time to produce them ;)
However I'm experiencing an issue with the rendering of mesh objects:

in the following file (downloadable from my Google Drive)
Project proposal for an RC Car racing structure, made using the Arch Workbench
Project proposal for an RC Car racing structure, made using the Arch Workbench
RCItaPassion.png (210.96 KiB) Viewed 2634 times

I get the following errors and I can't produce the render:

Code: Select all

14:36:50  Running the Python command 'Render_Render' failed:
Traceback (most recent call last):
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/commands.py", line 187, in Activated
    project.Proxy.render()
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 433, in render
    objstrings = self._get_objstrings(renderer)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 538, in _get_objstrings
    objstrings = _get_objstrings_helper(get_rdr_string, views)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 788, in _get_objstrings_helper
    objstrings = [
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 789, in <listcomp>
    f.result() for f in concurrent.futures.as_completed(futures)
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 451, in result
    return self.__get_result()
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
    raise self._exception
  File "/usr/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/rdrhandler.py", line 301, in get_rendering_string
    return RendererHandler._render_object(self, name, view)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/rdrhandler.py", line 397, in _render_object
    rends = renderables.get_renderables(
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/renderables.py", line 155, in get_renderables
    mesh = RenderMesh(obj.Mesh.copy())
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/rendermesh.py", line 78, in __init__
    assert mesh.Placement == App.Base.Placement()

I can obtain the render if I add only non-mesh objects.
For me it's not an issue at all, IMHO the important thing is being able to obtain renders of parts/ojects designed with FreeCAD (or other CAD softwares and imported using "classic" CAD formats such as STEP rather then STL :))
Probably the root cause of the issue isn't inside the Render Workbench at all but I haven't spent too much time figuring it out, as said before for me that's not an issue :)

Render of the structure, made using Render Workbench and povray_studio_light template
Render of the structure, made using Render Workbench and povray_studio_light template
RCItaPassionRender.png (677.42 KiB) Viewed 2634 times

howetuft wrote: Tue Jan 03, 2023 5:25 pm And have you tried povray_studio_light template (there are black parts in your model, it might be more suitable)?

Not when I wrote the previous post (probably because I was a little bit "influenced" by the black TD template topic :lol:).
But as you gave me the suggestion I just tried it and it's indeed nicer :D
These are the results ;)

D3D Universal 3 render, made using the Render Workbench and the povray_studio_light template
D3D Universal 3 render, made using the Render Workbench and the povray_studio_light template
D3DUniversal3v2106RenderingStudioLight.png (278.53 KiB) Viewed 2634 times

Arduino Mega 2560 rev3 board render, made using the same workbench and template of the D3D Universal 3 render
Arduino Mega 2560 rev3 board render, made using the same workbench and template of the D3D Universal 3 render
ArduinoMega2560Rev3RenderingStudioLight.png (209.71 KiB) Viewed 2634 times


For reference these files/renders are made/updated using the (almost) last commit of the master branch of of FreeCAD and Workbenches

Code: Select all

OS: Linux Mint 21 (X-Cinnamon/cinnamon)
Word size of FreeCAD: 64-bit
Version: 0.21.0.31511 (Git)
Build type: Release
Branch: master
Hash: 8715297c1b7551e81ea9d3c2174c5c9c2aa2d797
Python 3.10.6, Qt 5.15.3, Coin 4.0.0, Vtk 7.1.1, OCC 7.5.2
Locale: Italian/Italy (it_IT)
Installed mods: 
  * Assembly4 0.12.5
  * ExplodedAssembly
  * Beltrami 1.0.8-alpha
  * Glass.backup1661939747.4890919
  * ose-piping-workbench
  * sheetmetal 0.2.60
  * VendorParts
  * Curves 0.6.5
  * fasteners 0.4.51
  * A2plus 0.4.60g
  * fcgear 1.0.0
  * kicadStepUpMod 10.16.8
  * Trails 2022.1.0
  * ose-3d-printer-workbench
  * Render 2022.4.0
You can find some more info about me at https://wiki.opensourceecology.org/wiki/User:Calligarov

My GitLab profile: https://gitlab.com/calligarov
howetuft
Posts: 314
Joined: Tue Sep 10, 2019 8:16 pm

Re: CalligaroV's Showcase

Post by howetuft »

Hello @calligarov,
I can obtain the render if I add only non-mesh objects.
For me it's not an issue at all, ... Probably the root cause of the issue isn't inside the Render Workbench
Well, it is very kind of you, but it is a Render issue (an old debugging statement forgotten there). Or, more precisely, it was, because I applied a patch a few minutes ago. :D

Could you please update the workbench, retry your rendering with all the components including the meshes, and let me know? Many thanks in advance!
User avatar
calligarov
Posts: 47
Joined: Sun Jan 01, 2023 3:08 pm
Location: Cadore, Italy
Contact:

Re: CalligaroV's Showcase

Post by calligarov »

howetuft wrote: Wed Jan 04, 2023 9:40 pm Could you please update the workbench, retry your rendering with all the components including the meshes, and let me know? Many thanks in advance!
First of all thank you very much for the quick modification! :D

With the updated code that issue looks solved but now I get another error:

Code: Select all

12:54:27  Running the Python command 'Render_Render' failed:
Traceback (most recent call last):
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/commands.py", line 187, in Activated
    project.Proxy.render()
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 433, in render
    objstrings = self._get_objstrings(renderer)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 538, in _get_objstrings
    objstrings = _get_objstrings_helper(get_rdr_string, views)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 788, in _get_objstrings_helper
    objstrings = [
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/project.py", line 789, in <listcomp>
    f.result() for f in concurrent.futures.as_completed(futures)
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 451, in result
    return self.__get_result()
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
    raise self._exception
  File "/usr/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/rdrhandler.py", line 301, in get_rendering_string
    return RendererHandler._render_object(self, name, view)
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/rdrhandler.py", line 397, in _render_object
    rends = renderables.get_renderables(
  File "/home/calligarov/.local/share/FreeCAD/Mod/Render/./Render/renderables.py", line 156, in get_renderables
    if mat.Proxy.has_textures():

'NoneType' object has no attribute 'Proxy'
This time I tried to modify the code but with no success, I always get the same error.
Any guess?

P.s.: my FreeCAD version info:

Code: Select all

OS: Linux Mint 21 (X-Cinnamon/cinnamon)
Word size of FreeCAD: 64-bit
Version: 0.21.0.31513 (Git)
Build type: Release
Branch: master
Hash: b2ab8edba4bfd71681e639f8c3f1105066bed4c7
Python 3.10.6, Qt 5.15.3, Coin 4.0.0, Vtk 7.1.1, OCC 7.5.2
Locale: Italian/Italy (it_IT)
Installed mods: 
  * Assembly4 0.12.5
  * ExplodedAssembly
  * Beltrami 1.0.8-alpha
  * Glass.backup1661939747.4890919
  * ose-piping-workbench
  * sheetmetal 0.2.60
  * VendorParts
  * Curves 0.6.5
  * fasteners 0.4.52
  * A2plus 0.4.60g
  * fcgear 1.0.0
  * kicadStepUpMod 10.16.8
  * Trails 2022.1.0
  * ose-3d-printer-workbench
  * Render 2022.4.0
You can find some more info about me at https://wiki.opensourceecology.org/wiki/User:Calligarov

My GitLab profile: https://gitlab.com/calligarov
howetuft
Posts: 314
Joined: Tue Sep 10, 2019 8:16 pm

Re: CalligaroV's Showcase

Post by howetuft »

Argh! I should have tested more carefully.
I've applied a patch, could you please update and try again? Thanks!
User avatar
calligarov
Posts: 47
Joined: Sun Jan 01, 2023 3:08 pm
Location: Cadore, Italy
Contact:

Re: CalligaroV's Showcase

Post by calligarov »

howetuft wrote: Thu Jan 05, 2023 1:30 pm Argh! I should have tested more carefully.
I've applied a patch, could you please update and try again? Thanks!
Sure!
Just tested, no errors this time, everything worked nice and smooth! :D
RCItaPassionRenderWithMesh.png
RCItaPassionRenderWithMesh.png (285.63 KiB) Viewed 2396 times
Well, I think we can say that the problem is solved (even if this wasn't a problem at all for me after all) :lol:

I'd like to thank you very much for your help! :D

Also, I'd like to thank again all the FreeCAD developers and especially, for this specific case, @yorik and all the developers of both Render and Arch workbenches!
The design of this structure and it's render took me less than 6 hours of work! ;)
You can find some more info about me at https://wiki.opensourceecology.org/wiki/User:Calligarov

My GitLab profile: https://gitlab.com/calligarov
howetuft
Posts: 314
Joined: Tue Sep 10, 2019 8:16 pm

Re: CalligaroV's Showcase

Post by howetuft »

Just tested, no errors this time, everything worked nice and smooth!
Cool!
The design of this structure and it's render took me less than 6 hours of work!
Thank you, it is a nice show case of what one can do with FreeCAD resources only, without using other complex tools... Have fun!
Post Reply