pythonocc-core
compas_nurbs
pythonocc-core | compas_nurbs | |
---|---|---|
2 | 1 | |
1,227 | 9 | |
- | - | |
8.1 | 10.0 | |
12 days ago | over 1 year ago | |
SWIG | Python | |
GNU Lesser General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pythonocc-core
-
Text-to-CAD: Risks and Opportunities
It seems a bizarre statement to state that OpenCASCADE isn't fully capable. Its the only OS licensed kernel that'll read a STEP file. Also "modern foundation" is a misleading statement, any CAD kernel bearing any kind of relevance seems implying a codebase that's been around for a quarter century. Like it or not OpenCASCADE is the hand that was dealt. I've worked with the technology [1] extensively and it provided the underpinnings for a startup I've founded [2]. pythonocc is the bees knees, it allows you to develop a proper CAD app. Don't take my word for it, but see also the many publications that have built on the tech [3]
[1] https://github.com/tpaviot/pythonocc-core
- Added 16 Resources to Big Book of Python
compas_nurbs
-
Text-to-CAD: Risks and Opportunities
https://github.com/gumyr/build123d :
> Build123d is a python-based, parametric, boundary representation (BREP) modeling framework for 2D and 3D CAD. It's built on the Open Cascade geometric kernel and allows for the creation of complex models using a simple and intuitive python syntax. Build123d can be used to create models for 3D printing, CNC machining, laser cutting, and other manufacturing processes. Models can be exported to a wide variety of popular CAD tools such as FreeCAD and SolidWorks.
> Build123d could be considered as an evolution of CadQuery where the somewhat restrictive Fluent API (method chaining) is replaced with stateful context managers* - e.g. with blocks - thus enabling the full python toolbox: for loops, references to objects, object sorting and filtering, etc.*
"Build123d: A Python CAD programming library" (2023) https://news.ycombinator.com/item?id=37576296
BREP: Boundary representation: https://en.wikipedia.org/wiki/Boundary_representation
Manim, Blender, PhysX, o3de, [FEM, CFD, [thermal, fluidic,] engineering]: https://github.com/ManimCommunity/manim/issues/3362
NURBS: Non-Uniform Rational B-Splines: https://en.wikipedia.org/wiki/Non-uniform_rational_B-spline
NURBS for COMPAS: https://github.com/gramaziokohler/compas_nurbs :
> This package is inspired by the NURBS-Python package, however uses a NumPy-based backend for better performance.
> Curve, and Surface are non-uniform non-rational B-Spline geometries (NUBS), RationalCurve, and RationalSurface are non-uniform rational B-Spline Geometries (NURBS). They all built upon the class BSpline. Coordinates have to be in 3D space (x, y, z)
test_curve.py, test_surface.py
https://github.com/compas-dev
compas_rhino, compas_blender
Blender docs > Modeling Surfaces; NURBs implementation, limits, challenges:
What are some alternatives?
cadquery - A python parametric CAD scripting framework based on OCCT
build123d - A python CAD programming library
jupyter-cadquery - An extension to render cadquery objects in JupyterLab via pythreejs
fornjot - Early-stage b-rep CAD kernel, written in the Rust programming language.
pymadcad - Simple yet powerful CAD (Computer Aided Design) library, written with Python.
manifold - Geometry library for topological robustness
antimony - CAD from a parallel universe
manim - A community-maintained Python framework for creating mathematical animations.
CQ-editor - CadQuery GUI editor based on PyQT
awesome-cadquery - A curated list of CadQuery code and resources.
FreeCAD - This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler.
curated-code-cad - A list of the various code-cad projects out there.