CAD system for righteous zen programmers
Project description
ZenCad
NOTE: Astrologers have announced a month of changes. ZenCad migrate to pythonocc wrapper. It break old library distribution strategy. Now OCCT and pythonocc will be installed over console/gui instruments or mannually. Most of the functionality has been restored on the new shell, but some backward compatibility violations are possible. servoce package is removed for now. (You can find old zencad/servoce variant in master_v2_archive
branch)
CAD system for righteous zen programmers
What is it?
ZenCad - it's a system for use oce geometry core in openscad's script style. So, it's openscad idea, python language and opencascade power in one.
Manual and Information
-
Manual: here.
-
Articles:
-
Community chat (Telegram): https://t.me/zencad
Installation
Common:
Install zencad from pypi:
python3 -m pip install zencad[gui]
Maybe need install qt5-default, because pyqt5 has trouble with xcb plugin.
apt install qt5-default
Zencad needs pyocct and opencascade core(OCCT). After first launch
(type zencad
or python3 -m zencad
commands)
library instalation utility will started. You can use it for pyocc and OCCT installation. Also you can install libraries mannualy.
Installation without graphical part:
Install zencad as library without gui:
python3 -m pip install zencad
For install libraries without graphical parts, you can use keywords:
python3 -m zencad --install-occt-force
python3 -m zencad --install-pythonocc-force
For Windows:
Windows version of ZenCad needed vcredist
(Microsoft Redistibutable Package).
Please, install vcredist 2015
for Python3.7 and also vcredist 2019
for Python3.8
Standalone Distribution
ZenCad have standalone version for Windows.
Windows prerelease version in releases.
Source code
Main project repo:
https://github.com/mirmik/zencad
Related repos:
https://github.com/mirmik/zenframe
https://github.com/mirmik/evalcache
HelloWorld
#!/usr/bin/env python3
#coding: utf-8
from zencad import *
model = box(200, center = True) - sphere(120) + sphere(60)
display(m)
show()
Result:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.