{ "cells": [ { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "ename": "ModuleNotFoundError", "evalue": "No module named 'OCC'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mcadquery\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mcq\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0mjupyter_cadquery\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcadquery\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mPartGroup\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mPart\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mEdges\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mFaces\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mVertices\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mshow\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mjupyter_cadquery\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mset_sidecar\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mset_defaults\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreset_defaults\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mset_sidecar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"CadQuery\"\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# force usage of one cad view on the right\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/.local/share/virtualenvs/hvst-yK-7acgq/lib/python3.9/site-packages/jupyter_cadquery/__init__.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 16\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 17\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0m_version\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0m__version_info__\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0m__version__\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 18\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mcad_display\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mset_sidecar\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 19\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mcad_objects\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mset_defaults\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mget_defaults\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreset_defaults\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 20\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mexport\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mexportSTL\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/.local/share/virtualenvs/hvst-yK-7acgq/lib/python3.9/site-packages/jupyter_cadquery/cad_display.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 23\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 24\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mwidgets\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mImageButton\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTreeView\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstate_diff\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mUNSELECTED\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mSELECTED\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mMIXED\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mEMPTY\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 25\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mcad_view\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mCadqueryView\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 26\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 27\u001b[0m \u001b[0mSIDECAR\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m~/.local/share/virtualenvs/hvst-yK-7acgq/lib/python3.9/site-packages/jupyter_cadquery/cad_view.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mnumpy\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 30\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 31\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0mOCC\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mCore\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mVisualization\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mTesselator\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 32\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mOCC\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mExtend\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTopologyUtils\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mis_edge\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mis_vertex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdiscretize_edge\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 33\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mOCC\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mCore\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTopoDS\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mTopoDS_Compound\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTopoDS_Solid\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTopoDS_Wire\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTopoDS_Vertex\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'OCC'" ] } ], "source": [ "import cadquery as cq\n", "from jupyter_cadquery.cadquery import (PartGroup, Part, Edges, Faces, Vertices, show)\n", "from jupyter_cadquery import set_sidecar, set_defaults, reset_defaults\n", "\n", "set_sidecar(\"CadQuery\") # force usage of one cad view on the right\n", "set_defaults(axes=False, grid=True, axes0=True, ortho=True, transparent=True) # Set default values\n", "\n", "box1 = cq.Workplane('XY').box(10, 20, 30).edges(\">X or X or Z\").fillet(3)\n", "box4 = box3.mirror(\"XY\").translate((0, -5, 0))\n", "\n", "box1 = box1\\\n", " .cut(box2)\\\n", " .cut(box3)\\\n", " .cut(box4)\n", "\n", "a1 = PartGroup(\n", " [\n", " Part(box1, \"red box\", \"#d7191c\", show_edges=False),\n", " Part(box3, \"green box\", \"#abdda4\", show_edges=False),\n", " Part(box4, \"blue box\", \"#2b83ba\", show_faces=False),\n", " ],\n", " \"example 1\"\n", ")\n", "\n", "show(a1, grid=False) # overwrite grid default value" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.1" } }, "nbformat": 4, "nbformat_minor": 4 }