Return to site

Python Cad Library

broken image


  1. Free Cad Drawings Library
  2. Python 3d Cad

Pivy is a library that wraps the Coin3d library for use in Python. It is not needed to build FreeCAD or to start it, but it is needed as a runtime dependency by the Draft Workbench, and by other workbenches that use it internally, like Arch and BIM. If you are not going to use these workbenches, you won't need Pivy. Version: 3.11 or higher. Pyautocad - library aimed to simplify writing ActiveX Automation scripts for AutoCAD with Python.

Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎română • ‎svenska • ‎русский • ‎日本語
Python
Next: Third Party Tools
  • 3Details
    • 3.4Qt
    • 3.5Coin3D
    • 3.9Zipios++
  • 4LibPack

Overview

These are libraries which FreeCAD uses as third party dependencies during compilation. They are usually dynamically linked libraries and have an extension .so in Linux/MacOS and .dll in Windows, and are accompanied by their header files .h or .hpp Gundam musou 2 ps2 iso. or similar. If a modified library is necessary, or a wrapper class is needed, the code of the modified library, or the wrapper, has to become part of the FreeCAD source code, and compiled together with it.

The dependencies need to be installed in the system before proceeding with compilation; see compile on Linux/Unix, compile on Windows, and compile on MacOS for more information.

If you are compiling using Windows, consider using the LibPack instead of trying to install the libraries individually.

Links

Library nameVersion neededLink to get it
Python>= 3.4http://www.python.org/
Boost>= 1.33http://www.boost.org/
OpenCASCADE>= 6.7http://www.opencascade.org
Qt>= 4.1https://www.qt.io/
Shiboken2same as Qthttps://wiki.qt.io/Qt_for_Python/Shiboken
PySide2same as Qthttps://wiki.qt.io/Qt_for_Python/Shiboken
Coin3D>= 3.xhttps://github.com/coin3d/coin
SoQt (deprecated)>= 1.2https://github.com/coin3d/soqt
Quarter>= 1.0https://github.com/coin3d/quarter
Pivy>= 0.6.5https://github.com/coin3d/pivy/
FreeType>= XXXXXX
PyCXX>= XXXXXX
KDL>= XXXXXX
Point Cloud Library>= XXXXXX
Salome SMESH>= XXXXXX
VTK>= 6.0XXX
Ply>= 3.11https://www.dabeaz.com/ply/
Xerces-C++>= 3.0https://xerces.apache.org/xerces-c/
Eigen3>= 3.0http://eigen.tuxfamily.org/index.php?title=Main_Page
Zipios++>= 0.1.5https://snapwebsites.org/project/zipios, https://github.com/Zipios/Zipios
Zlib>= 1.0http://www.zlib.net/, https://github.com/madler/zlib
libarea>= 0.0.20140514-1https://github.com/danielfalck/libarea

Details

Python

Version: 3.3 or higher

License: Python 3.3 license

Python 2 became obsolete in 2019. Further development of FreeCAD will use exclusively Python 3; compatibility with Python 2 won't be tested, so old workbenches and macros that use this version will have to be updated or they may stop working. Please post on the FreeCAD forum if you encounter problems with Python 3.


Python is a popular all-purpose scripting language that is widely used in Linux and open source software. In FreeCAD, Python is used during compilation and also at runtime in different ways. It is used Driftland the magic revival 1 2 8b.

  • to write test scripts to test for different conditions, such as memory leaks, to ensure functionality of the software after changes, for post build checks, and test coverage tests,
  • to write macros and macro recording,
  • to implement application logic for standard packages,
  • to implement auxiliary tools such as the Addon Manager,
  • to implement entire workbenches like Draft and Arch,
  • to dynamically load packages,
  • to implement rules for design (knowledge engineering),
  • to do fancy Internet interactions like work groups and PDM

On Linux, Python is usually already installed in your distribution. For Windows you can get a precompiled binary from Python.org or use ActiveState Python, though it is harder to get the debug libraries from the latter one.

Python was chosen as the scripting language for FreeCAD for different reasons:

  • It is more object oriented than Perl and Tcl.
  • The code is more readable than Perl and Visual Basic.
  • It is easier to embed in another application, unlike, say, Java.

In summary, Python is well documented, and it's easy to embed and extend in a C++ application. It is also well tested and has strong support from the open source community. Read more about Python and browse the official documentation at Python.org.

Boost

Version: 1.33 or higher

License: Boost Software License - Version 1.0

The Boost C++ libraries are collections of peer-reviewed, open source libraries that extend the functionality of C++. They are intended to be widely useful across a broad spectrum of applications, and to work well with the C++ Standard Library. The Boost license is designed to encourage their use in both open source and closed source projects.

Due to their popularity and stability, many Boost libraries have been accepted for incorporation into the C++11 standard, and more are planned for inclusion in subsequent C++ standards.

Cleanmymac 4 beta. In order to ensure efficiency and flexibility, Boost makes extensive use of templates. Boost has been a source of extensive work and research into generic programming and meta-programming in C++. Read more about Boost by visiting the Boost homepage.

OpenCASCADE Technology

Version: 6.7 or higher

License: version 6.7.0 and later are governed by the GNU Lesser General Public License (LGPL) version 2.1 with additional exception. Earlier versions use the Open CASCADE Technology Public License.

OpenCASCADE Technology (OCCT) is a full-featured, professional grade CAD kernel. It was developed in 1993 and originally called CAS.CADE, by Matra Datavision in France for the Strim (Styler) and Euclid Quantum applications. In 1999 it was released as open source software, and since then it's been called OpenCASCADE.

OCCT is a big and complex set of C++ libraries that provide functionality required by a CAD application:

  • A complete STEP compliant geometry kernel.
  • A topological data model and needed functions to work with shapes (cut, fuse, extrude, and many others).
  • Standard import and export processors for files like STEP, IGES, VRML.
  • A 2D and 3D viewer with selection support.
  • A document and project data structure with support for save and restore, external linking of documents, recalculation of design history (parametric modeling) and a facility to load new data types as an extension package dynamically.

There are two main versions of OpenCASCADE in existence in different Linux distributions. One is distributed by the original developers; it is known as OCCT, and is packaged under the names occ or occt. The other version is the 'community edition', abbreviated OCE, and is normally found with the oce name. FreeCAD can compile against either version, however, since 2016 FreeCAD recommends compiling against the official OCCT libraries rather than the OCE ones. The reason is that the community edition lacks important bug fixes and functions that make using FreeCAD better.

To learn more visit the OpenCASCADE website.

Qt

Version: 4.1 or higher

License: GPL v2.0/v3.0 or Commercial; from version 4.5 on also LPGL v2.1.

Qt is one of the most popular graphical user interface (GUI) toolkits available in the open source world. FreeCAD uses this toolkit to draw the interface of the program. For this, the Qt Designer application is very useful as it allows developers to quickly draw the dialogs and windows, export them as XML resource files, and then load these interfaces at runtime.

Further information about Qt libraries and their programming documentation are available at Qt Documentation.

Shiboken2 and Pyside2

Shiboken is the Python binding generator that Qt for Python uses to create the PySide module, in other words, it is the system that is used to expose the Qt C++ API to the Python language.

The original Shiboken and PySide packages were meant to be used with Python 2 and Qt4; since these two versions are considered obsolete in 2019, please use Shiboken2 and PySide2, which work with Python 3 and Qt5. New development of FreeCAD is done with Python 3 and Qt5, so compatibility with Python 2 and Qt4 is not guaranteed after FreeCAD 0.18.

Read more about Shiboken and Pyside on Qt for Python.

Coin3D

Version: 3.0 or higher

License: BSD 3-clause license

Coin3D is a high-level 3D graphics library with a C++ application programming interface. It uses scenegraph data structures to render real-time graphics suitable for all kinds of scientific and engineering visualization applications.

Coin3D is built on the industry-standard OpenGL immediate mode rendering library, and adds abstractions for higher-level primitives, provides 3D interactivity, and contains many complex optimization features for fast rendering that are transparent for the application programmer.

Coin3D is compatible with SGI's Open Inventor 2.1 API. This API has become the de facto standard graphics interface for 3D visualization in the scientific and engineering community. It has proved its worth since the year 2000 as a major building block in thousands of engineering applications around the world.

Notepad 32 bit. Coin3D (Open Inventor) is used as the 3D viewer in FreeCAD because the OpenCASCADE viewer (AIS and Graphics3D) has limitations and performance bottlenecks, especially with large-scale engineering rendering; other things like textures or volumetric rendering are not entirely supported by the OpenCASCADE viewer.

Coin3D is portable over a wide range of platforms: UNIX, Linux, BSD, MacOS X, and Microsoft Windows operating systems. To read more about this library visit Coin3D homepage.

SoQt (deprecated)

Version: 1.2.0 or higher

License: BSD 3-clause license

SoQt is the Coin3D (Open Inventor) binding to the Qt GUI toolkit.

SoQt is no longer used in FreeCAD, it was replaced by Quarter which is a more recent Qt binding.

Quarter

Version: 1.0 or higher

License: BSD 3-clause license

Quarter is a newer Coin3D binding to the Qt toolkit. A version of it is included in the source code of FreeCAD so it is compiled together with it.

Pivy

Version: 0.6.3 or higher

License: BSD 3-clause license

Pivy is a library that wraps the Coin3d library for use in Python. Tadam 1 4 – simple pomodoro timer. It is not needed to build FreeCAD or to start it, but it is needed as a runtime dependency by the Draft Workbench, and by other workbenches that use it internally, like Arch and BIM.

If you are not going to use these workbenches, you won't need Pivy.

Ply

Version: 3.11 or higher

License: BSD 3-clause license

Ply is the Python-Lex-Yacc parser. It is used as a runtime dependency by the OpenSCAD Workbench. If you don't use this workbench, you may not need this package.

For more information see Ply homepage

Xerces-C++

Version: 3.0 or higher

License: Apache Software License Version 2.0

Xerces-C++ is a validating XML parser written in a portable subset of C++. Xerces-C++ makes it easy to give your application the ability to read and write XML data. A shared library is provided for parsing, generating, manipulating, and validating XML documents. Xerces-C++ is faithful to the XML 1.0 recommendation and associated standards.

The parser is used for saving and restoring parameters in FreeCAD. For more information see Xerces-C++ homepage.

Eigen3

Version: 3.0 or higher

Free Cad Drawings Library

https://hereqload370.weebly.com/apple-ios-5-software-download.html. License: Starting from the 3.1.1 version, it is licensed under the Mozilla Public License 2.0. Earlier versions were licensed under the GNU Lesser General Public License 3.

Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.

If you just want to use Eigen, you can use the header files right away. There is no binary library to link to, and no configured header file. Eigen is a pure template library defined in the headers.

Eigen is used in FreeCAD for many vector operations in 3D space. To learn more, visit Eigen homepage.

Zipios++

Version: 0.1.5 or higher

License: GNU Lesser General Public License 2.1

Zipios++ is a C++ library for reading and writing .zip files. Access to individual entries is provided through standard C++ iostreams. A simple read-only virtual file system that mounts regular directories and .zip files is also provided. The structure and public interface of Zipios++ are loosely based on the java.util.zip package of Java.

FreeCAD's native file format .FCstd is in reality a .zip file that stores and compresses other types of data within it, such as BREP and XML files. Therefore, Zipios++ is used to save and open compressed archives, including FreeCAD files.

A copy of Zipios++ is included in the source code of FreeCAD so it is compiled together with it. If you want to use an external Zipios++ library, provided by your operating system, you may set -DFREECAD_USE_EXTERNAL_ZIPIOS=ON with cmake.

Zipios++ uses the Zlib library to perform the actual decompression of files.

Zlib

Version: 1.0 or higher

License: zlib license

Zlib is designed to be a free, general-purpose, lossless

Latest version

Released:

Python 3d Cad

Python AutoCAD COM automation via pywin32

Project description

pyacadcom - Pyton automation of AutoCAD
----------------------------------------
Library for simplifying writing ActiveX_ Automation_ Pyton scripts for AutoCAD_
Requires:
----------
- pywin32_
Features:
-----------
- Simplifies work with coordinates (3D points)
Simple usage example:
---------------------
. code-block:: python
from pyacadcom import AutoCAD, acadPoint
from pyacadcom import AutoCAD, acadPoint
acad=AutoCAD()
point1 = acadPoint(25, 50, 0)
nextpoint = (100,100,10)
point2 = acadPoint(nextpoint)
acad.ActiveDocument.ModelSpace.AddLine(point1(), point2())
point3 = point1 + point2
acad.ActiveDocument.ModelSpace.AddLine(point2(), point3())
Links
-----
- **Source code and issue tracking** at `GitHub `_.
. _ActiveX: http://wikipedia.org/wiki/ActiveX
. _Automation: http://en.wikipedia.org/wiki/OLE_Automation
. _AutoCAD: http://wikipedia.org/wiki/AutoCAD
. _pywin32: http://pypi.python.org/pypi/pywin32

Release historyRelease notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyacadcom, version 0.0.1
Filename, sizeFile typePython versionUpload dateHashes
Filename, size pyacadcom-0.0.1.tar.gz (4.7 kB) File type Egg Python version 3.5 Upload dateHashes
Close

Hashes for pyacadcom-0.0.1.tar.gz

Hashes for pyacadcom-0.0.1.tar.gz
AlgorithmHash digest
SHA2566e577ce35b2cfaea991f34dee74562dcadc7802fdef2905b8ef9f035ec00409a
MD53f734c1631d6a56758068566df4034de
BLAKE2-25607377c2303cb31618fc5b71ff3096de942178c7fa635f83b2e155460703474b6




broken image