Headless FreeCAD: Difference between revisions

From FreeCAD Documentation
(started documenting running FC inheadless mode)
 
(Marked this version for translation)
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
== Introduction ==
{{TOCright}}
<translate>


== Introduction == <!--T:1-->

<!--T:2-->
This wiki page will document various aspect of running FreeCAD in the console without enabling the GUI (Graphical User Interface) or what is called 'headless'.
This wiki page will document various aspect of running FreeCAD in the console without enabling the GUI (Graphical User Interface) or what is called 'headless'.


== Scenegraph Representation == <!--T:3-->


<!--T:4-->
== Scenegraph Representation ==
As it's not possible to create or access the [[Viewprovider|view provider]] in headless mode. What's possible is to load {{incode|FreeCADGui}} in headless mode but there is no way to access the GUI document because it won't be created and consequently there exist no view providers.


<!--T:5-->
As it's not possible to create or access the [[view provider]] in headless mode. What's possible is to load {{incode|FreeCADGui}} in headless mode but there is no way to access the GUI document because it won't be created and consequently there exist no view providers.
However, what's possible is to create a [[Scenegraph|scenegraph]] representation of an object:

However, what's possible is to create a [[scenegraph]] representation of an object. This works this way:


</translate>
{{Code|lang=python|code=
{{Code|lang=python|code=
import FreeCADGui as Gui
import FreeCADGui as Gui
Line 20: Line 27:
view = Gui.subgraphFromObject(obj)
view = Gui.subgraphFromObject(obj)
}}
}}
<translate>
:<small>reference: [https://forum.freecadweb.org/viewtopic.php?f=10&t=55794&p=481586#p481586 forum thread]</small>

<!--T:6-->
See: [https://forum.freecadweb.org/viewtopic.php?f=10&t=55794&p=481586#p481586 forum thread].

== Examples == <!--T:7-->

=== Searching FreeCAD Modules === <!--T:8-->

<!--T:9-->
# Open the terminal and type:
#:{{incode|$ /path/to/FreeCAD -c}}
#::or
#:{{incode|$ /path/to/FreeCADCmd}}
# A python shell will start with a prompt. Type {{incode|help()}}.
# A help text is displayed.
# Type {{incode|modules freecad}}.

== Related == <!--T:10-->

<!--T:11-->
* [[Embedding_FreeCAD#Using_FreeCAD_without_GUI|Embedding FreeCAD]]
* [[Start_up_and_Configuration#Running_FreeCAD_without_GUI_(headless)|Start up and Configuration]]


== Related ==


</translate>
* [[Embedding_FreeCAD#Using_FreeCAD_without_GUI]]
[[Category:Developer Documentation{{#translation:}}]]
* [[Start_up_and_Configuration#Running_FreeCAD_without_GUI_.28headless.29]]
[[Category:Poweruser Documentation{{#translation:}}]]

Latest revision as of 09:37, 20 November 2021

Other languages:

Introduction

This wiki page will document various aspect of running FreeCAD in the console without enabling the GUI (Graphical User Interface) or what is called 'headless'.

Scenegraph Representation

As it's not possible to create or access the view provider in headless mode. What's possible is to load FreeCADGui in headless mode but there is no way to access the GUI document because it won't be created and consequently there exist no view providers.

However, what's possible is to create a scenegraph representation of an object:

import FreeCADGui as Gui
from pivy import coin

Gui.setupWithoutGUI()
doc = App.newDocument()
obj = doc.addObject("Part::Box","Box")
doc.recompute()
view = Gui.subgraphFromObject(obj)

See: forum thread.

Examples

Searching FreeCAD Modules

  1. Open the terminal and type:
    $ /path/to/FreeCAD -c
    or
    $ /path/to/FreeCADCmd
  2. A python shell will start with a prompt. Type help().
  3. A help text is displayed.
  4. Type modules freecad.

Related