Skip to content

jf---/pythonocc-core

 
 

Repository files navigation

Azure Build Status Conda installer Downloads Badge Language grade: Python Codacy Badge Binder DOI

pythonocc-core

About

pythonocc is a python package whose purpose is to provide 3D modeling features. It is intended to CAD/PDM/PLM and BIM related development.

Latest release : pythonocc-core 7.4.0 (february 2020)

Features

pythonocc provides the following features:

  • a full access from Python to almost all af the thousand OpenCascade C++ classes. Classes and methods/functions share the same names, and, as possible as it can be, the same signature

  • 3D visualization from the most famous Python Gui (pyQt, PySide1 and 2, wxPython)

  • 3D visualization in a web browser using WebGl and/or x3dom renderers

  • 3D visualization and work within a jupyter notebook

  • Various utility Python classes/methods for DataExchange, Topology operations, intertia computations etc.

Try online at mybinder

Click Binder to open a jupyter notebook running latest pythonocc-core 7.4.0, gmesh 4.5.3 (http://gmsh.info/) and latest IfcOpenshell (https://github.com/IfcOpenShell/IfcOpenShell/tree/v0.6.0) dev branch.

Download/install binaries for Linux/OSX/Windows

pythonocc provides precompiled conda packages (they depend on third part libraries made available from the dlr-sc and conda-forge conda channels) for python 3.6 and 3.7. This will get you up and running in minutes whether you run win32/win64/linux64/osx64. Here is an example for python 3.7:

# first create an environment
conda create --name=whatever-name python=3.7
source activate whatever-name
conda install -c dlr-sc pythonocc-core=7.4.0

Conda packages are provided for python 3.6 and 3.7 at dlr-sc channel. conda-forge provides 3.7 and 3.8 binaries:

# first create an environment
conda create --name=whatever-name python=3.8
source activate whatever-name
conda install -c conda-forge pythonocc-core=7.4.0

Build from source by yourself

Read the INSTALL.md instructions where you find compilation instructions for all platforms.

Other pythonocc related resources

Online resources for development

We use the following online resources:

pythonocc, oce and opencascade dependencies

From release 7.4.0, pythonocc-core depends on the official OpenCascade-7.4.0 library (https://dev.opencascade.org)

Former releases rely on oce (OpenCascade Community Edition), available at
oce C++ library / CAD kernel.

License

You can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 3 as published by the Free Software Foundation.

About

A python wrapper for the OCE library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • SWIG 95.5%
  • C++ 2.7%
  • Python 1.6%
  • CMake 0.1%
  • HTML 0.1%
  • C 0.0%