FreeCAD | official source code of FreeCAD , a free and opensource | Development Tools library

 by   FreeCAD C++ Version: 0.20.2 License: Non-SPDX

kandi X-RAY | FreeCAD Summary

kandi X-RAY | FreeCAD Summary

FreeCAD is a C++ library typically used in Utilities, Development Tools applications. FreeCAD has no bugs, it has no vulnerabilities and it has medium support. However FreeCAD has a Non-SPDX License. You can download it from GitHub.

Freedom to build what you want FreeCAD is an open-source parametric 3D modeler made primarily to design real-life objects of any size. Parametric modeling allows you to easily modify your design by going back into your model history to change its parameters. Create 3D from 2D and back FreeCAD lets you to sketch geometry constrained 2D shapes and use them as a base to build other objects. It contains many components to adjust dimensions or extract design details from 3D models to create high quality production-ready drawings. Designed for your needs FreeCAD is designed to fit a wide range of uses including product design, mechanical engineering and architecture, whether you are a hobbyist, programmer, experienced CAD user, student or teacher. Cross platform FreeCAD runs on Windows, macOS and Linux operating systems.

            kandi-support Support

              FreeCAD has a medium active ecosystem.
              It has 14230 star(s) with 3255 fork(s). There are 526 watchers for this library.
              There were 1 major release(s) in the last 12 months.
              There are 883 open issues and 856 have been closed. On average issues are closed in 121 days. There are 83 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of FreeCAD is 0.20.2

            kandi-Quality Quality

              FreeCAD has no bugs reported.

            kandi-Security Security

              FreeCAD has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              FreeCAD has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              FreeCAD releases are available to install and integrate.
              Installation instructions are available. Examples and code snippets are not available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of FreeCAD
            Get all kandi verified functions for this library.

            FreeCAD Key Features

            No Key Features are available at this moment for FreeCAD.

            FreeCAD Examples and Code Snippets

            No Code Snippets are available at this moment for FreeCAD.

            Community Discussions


            How to install the way mentioned?
            Asked 2022-Feb-24 at 16:30

            I am a student and recently got mac M1, we are being taught FreeCAD(first opensource software ever), but the problem is the build is availble for intel Mac's and I am facing issues.

            But on deep search through forums I found the build of this guy. Can somebody help me out on what he wants to convey. FreeCAD forum thread screenshot



            Answered 2022-Feb-24 at 16:30

            the person is telling you that the result gives the platform. You can try this:



            Python FreeCad ActiveDocument with variable
            Asked 2021-Nov-23 at 10:13

            I'm quite new to Python so the answer to my question might be simple or impossible.

            In below shown example I would like to substitute the object name "myBox" with a variable boxName.

            boxName = "myBox" FreeCAD.ActiveDocument.addObject("Part::Box", boxName)*

            This works:

            FreeCAD.ActiveDocument.myBox.Length = 150

            This doesn't:

            FreeCAD.ActiveDocument. + boxName + .Length = 150

            I get a syntax error:

            'App.Document' object has no attribute 'boxName' or when I try other variations I get this error: (1): ('invalid syntax', ('###/AppData/Roaming/FreeCAD/Macro/nyMacro.FCMacro', 5, 24, 'FreeCAD.ActiveDocument.+(boxName)+.Length = 150\n'))

            If it's possible to substitute with a variable, I will be gratefull if someone will show me the syntax.



            Answered 2021-Nov-23 at 09:16

            You have to use meta programming. Do a little study about this concept. It's interesting. In Python you can execute dynamic code by eval function:

            eval('FreeCAD.ActiveDocument. + boxName + .Length = 150')

            Do seaech about eval and exec function if I'm not wrong.



            Compile OCCT7.5 with rapidjson using FreeCad Libpack?
            Asked 2021-Sep-02 at 15:54

            I'm looking to compile OCCT 7.5 in Windows 10 (x64 via VS2019) for use with FreeCAD, to enable exporting glTF files, which requires RapidJSON support (in OCCT). I've checked out OCCT 7.5.3 and RapidJSON 1.1.0 from their git repos, then grabbed the FreeCAD libpack 12.5.2 (for OCCT 7.5). I started from FreeCAD's build docs, then attempted to follow OCCT's build docs.

            When configuring the OCCT project in CMake-GUI, I've been able to find what I think are correct values for some variables (e.g. those regarding FREETYPE) within the FreeCAD libpack, as well as RapidJSON, but still get some errors in the config, seemingly no matter what values I try:



            Answered 2021-Sep-02 at 15:54

            The problem was my lack of familiarity with CMake and Cmake-gui: the gui opened a dialog for a FILEPATH when specifying a PATH variable. I naively thought, "I don't know CMake, so I'll trust the gui". Totally wrong.

            I manually edited the 3RDPARTY_* variable entries to point to the correct directories (or libs, when needed) in the FreeCAD libpack, using the variable name and description/hint for each to determine what the variable's value should be. Below are my entries, for reference: I did need to check "Advanced", to edit the FREETYPE_LIBRARY_DEBUG & FREETYPE_LIBRARY_RELEASE variables (CMake set them to separate libs found in a jdk directory, presumably because it was added to the system path at some point).



            Compile FreeCAD on macOS Big Sur 11.5.1 with Homebrew, error finding XercesC files
            Asked 2021-Aug-09 at 15:54

            I’m stuck compiling FC on macOS Big Sur. The build breaks with an error not finding certain XercesC libraries. But these libraries are installed and the path is even found by the CMake preparation process.

            I postet this issue in the FreeCAD forum under, but found no help. I would appreciate if anyone here at StackOverflow could verify this error or better yet have a hint for a solution. Thanks in advance.

            System Info:

            Complete steps for the build prozess:



            Answered 2021-Aug-09 at 15:54

            There is a typo in the build script. The final report prints XercesC_INCLUDE_DIRS, but the CMakeLists.txt for that subdirectory uses XERCESC_INCLUDE_DIR.

            I suggest you fix the typo (to XercesC_INCLUDE_DIRS) in src/Mod/Measure/App/CMakeLists.txt and file a pull request.



            How to embed FreeCAD in a Python virtual environment?
            Asked 2021-May-13 at 20:27

            How do I setup a Python virtual environment with the FreeCAD library embedded as to enable import as a module into scripts?

            I would like to avoid using the FreeCAD GUI as well as being dependent on having FreeCAD installed on the system, when working with Python scripts that use FreeCAD libraries to create and modify 3D geometry. I hope a Python virtual environment can make that possible.

            I am working in PyCharm 2021.1.1 with Python 3.8 in virtualenv on Debian 10.

            I started out with FreeCAD documentation for embedding in scripts as a basis:


            In one attempt, I downloaded and unpacked .deb packages from Debian, taking care to get the correct versions required by each dependency. In another attempt, I copied the contents of a FreeCAD flatpak install, as it should contain all the libraries that FreeCAD depends on.

            After placing the libraries to be imported in the virtual maching folder, I have pointed to them with sys.path.append() as well as PyCharm's Project Structure tool in various attempts. In both cases the virtual environment detects where is located, but fails to find any of its dependencies, even when located in the same folder. When importing these dependencies explicitly, each of them have the same issue. This leads to a dead end when an import fails because it does not define a module export function according to Python:



            Answered 2021-May-13 at 20:27

            This is what I did to get FreeCAD to work with PyCharm and virtualenv:

            Download FreeCAD AppImage


            Make AppImage executable



            Macro ignores parameter change
            Asked 2021-Mar-12 at 23:58

            Given a FreeCAD model that consists of

            • Spreadsheet "parameters" with a cell aliased as "radius" and value 50
            • Icosahedron (from the Pyramids-and-Polyhedrons macro) with Radius=parameters.radius
            • some facebinders which are unimportant for the purpose of this question,

            the python script below opens this model, changes the radius cell in the Spreadsheet to 15, call recompute() on the spreadsheet, invokes touch() on the icosahedron, calls recompute() on the document, and finally tessellates the icosahedron. The z coordinate of the vertex at index 11 in the tessellated mesh happens to be equal to the icosahedron's radius. I was expecting it to change to 15, according to the parameter change. But it remains at its original value 50. What am I doing wrong?

            To my understanding the macro's execute method should get invoked during the recomputation of the document.

            When I trace Document.recompute() with pudb, I only see it executing Facebinder.execute() but not Icosahedron.execute(). The path it takes from Document.recompute() to Facebinder.execute() method is not visible in pudb; it immediately stops in Facebinder.execute().



            Answered 2021-Mar-12 at 23:58

            I figured it out. The reason was Pyramids-and-Polyhedrons not being imported after all. The first problem was that Pyramids-and-Polyhedrons imports FreeCADGui (in order to install its workbench), which depends on certain native libs that need to be added to LD_LIBRARY_PATH before running the script:



            How to fit 6 photos on a slideshow instead of 5?
            Asked 2021-Jan-21 at 10:09

            The following code is a slideshow page with 5 slideshows using Owl Slideshow Platform. Each of these slideshows show five pictures each at a time. I need six photos on one slideshow shown at one time instead of five. I have tried experimenting with the . I tried commenting and seeing what would happen if I changed values, however, no luck. My question is how do a make one of the slideshows show six pictures at a time instead of five? Thank you.



            Answered 2020-Dec-31 at 21:19

            You can try by adding the items option when initializing the carousel. I've tested it on CodePen, and it seems to work. I've tried with different numbers.



            GUI application via Docker - X11 - "Unable to init server"
            Asked 2020-Dec-30 at 13:33

            I'm trying to run Firefox in a Debian docker image but can't connect to the X11 server.

            I'm using the method described here, but changed the base image to the latest Debian. I also changed the user creation method.




            Answered 2020-Dec-30 at 13:33
            docker run --rm \
            --net=host \
            --env="DISPLAY" \
            --volume="$HOME/.Xauthority:/home/developer/.Xauthority:rw" \



            Docker building node image - Stuck
            Asked 2020-Dec-03 at 19:34

            I am trying to build a (node.js + python) image. This is the dockerfile i used:



            Answered 2020-Dec-03 at 09:50

            How about using node.js docker official image

            You can change the nodejs version(14.15.1) you want



            how to update Spreadsheet values using FreeCAD python module
            Asked 2020-Apr-14 at 06:11

            Let's say I have a FreeCAD model that defines a certain geometry with dimensions height, width, and length that are defined in cells of the model's spreadsheet. I want to build an automation pipeline in a stand-alone Python script using the FreeCAD module that - reads that model - sets the spreadsheet cells to values provided by the client - recomputes the model accordingly - generates geometry by tessellating the model's parts for further processing outside of FreeCAD (irrelevant with regard to this question)

            The script is working except that it fails to change the parameter values that are used to compute the model. The resulting geometry always reflects the original values that were saved with the model.

            I've added an assert command (line 44). geometry[0][0][2] is a Vector whose x coordinate happens to equal the value of the width parameter in spreadsheet cell A5.

            If one invokes the script as



            Answered 2020-Apr-14 at 06:11

            Finally I found out how to make it work: The key to changing cell values in the spreadsheet seems to be to use


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install FreeCAD

            You can download it from GitHub.


            To report an issue please:.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Reuse Pre-built Kits with FreeCAD

            Consider Popular Development Tools Libraries


            by FreeCAD


            by mailhog


            by FrontendMasters


            by FrontendMasters


            by googlecodelabs

            Try Top Libraries by FreeCAD


            by FreeCADHTML


            by FreeCADPython


            by FreeCADPython


            by FreeCADPython