Merge pull request #151 from CadQuery/adam-urbanczyk-update-docs
Update installation instructions
This commit is contained in:
@ -3,6 +3,7 @@
|
||||
|
||||
[](https://travis-ci.org/CadQuery/cadquery.svg?branch=master)
|
||||
[](https://ci.appveyor.com/api/projects/status/cf4qg6kpyqmcje1h?svg=true)
|
||||
[](https://dev.azure.com/cadquery/conda-packages/_build/latest?definitionId=2&branchName=master)
|
||||
[](https://codecov.io/gh/CadQuery/cadquery)
|
||||
[](https://cadquery.readthedocs.io/en/latest/?badge=latest)
|
||||
|
||||
@ -38,7 +39,7 @@ It is currently possible to use CadQuery for your own projects in 3 different wa
|
||||
|
||||
The easiest way to install CadQuery and its dependencies is using conda:
|
||||
```
|
||||
conda install -c conda-forge -c cadquery cadquery
|
||||
conda install -c conda-forge -c cadquery cadquery=2
|
||||
```
|
||||
|
||||
For those who are interested, the [conda-packages repository](https://github.com/CadQuery/conda-packages) contains build information, packages and modifications for CadQuery's conda channel.
|
||||
@ -69,7 +70,7 @@ CadQuery supports Jupyter notebook out of the box using the jupyter-cadquery ext
|
||||
CadQuery was built to be used as a Python library without any GUI. This makes it great for use cases such as integration into servers, or creating scientific and engineering scripts. Use Anaconda/Miniconda to install CadQuery, and then add `import cadquery` to the top of your Python scripts.
|
||||
|
||||
```
|
||||
conda install -c conda-forge -c cadquery cadquery
|
||||
conda install -c conda-forge -c cadquery cadquery=2
|
||||
```
|
||||
|
||||
## Getting help
|
||||
|
||||
125
README.txt
125
README.txt
@ -1,125 +0,0 @@
|
||||
What is a CadQuery?
|
||||
========================================
|
||||
|
||||
CadQuery is an intuitive, easy-to-use python based language for building parametric 3D CAD models. CadQuery is for 3D CAD what jQuery is for javascript. Imagine selecting Faces of a 3d object the same way you select DOM objects with JQuery!
|
||||
|
||||
CadQuery has several goals:
|
||||
|
||||
* Build models with scripts that are as close as possible to how you'd describe the object to a human.
|
||||
* Create parametric models that can be very easily customized by end users
|
||||
* Output high quality CAD formats like STEP and AMF in addition to traditional STL
|
||||
* Provide a non-proprietary, plain text model format that can be edited and executed with only a web browser
|
||||
|
||||
Using CadQuery, you can write short, simple scripts that produce high quality CAD models. It is easy to make many different objects using a single script that can be customized.
|
||||
|
||||
Getting Started With CadQuery
|
||||
========================================
|
||||
|
||||
The easiest way to get started with CadQuery is to Install FreeCAD ( version 14 recommended ) (http://www.freecadweb.org/) , and then to use our CadQuery-FreeCAD plugin here:
|
||||
|
||||
https://github.com/jmwright/cadquery-freecad-module
|
||||
|
||||
|
||||
It includes the latest version of cadquery alreadby bundled, and has super-easy installation on Mac, Windows, and Unix.
|
||||
|
||||
It has tons of awesome features like integration with FreeCAD so you can see your objects, code-autocompletion, an examples bundle, and script saving/loading. Its definitely the best way to kick the tires!
|
||||
|
||||
|
||||
Recently Added Features
|
||||
========================================
|
||||
|
||||
* 12/5/14 -- New FreeCAD/CadQuery Module! https://github.com/jmwright/cadquery-freecad-module
|
||||
* 10/25/14 -- Added Revolution Feature ( thanks Jeremy ! )
|
||||
|
||||
|
||||
Why CadQuery instead of OpenSCAD?
|
||||
========================================
|
||||
|
||||
CadQuery is based on OpenCasCade. CadQuery shares many features with OpenSCAD, another open source, script based, parametric model generator.
|
||||
|
||||
The primary advantage of OpenSCAD is the large number of already existing model libaries that exist already. So why not simply use OpenSCAD?
|
||||
|
||||
CadQuery scripts have several key advantages over OpenSCAD:
|
||||
|
||||
1. **The scripts use a standard programming language**, python, and thus can benefit from the associated infrastructure.
|
||||
This includes many standard libraries and IDEs
|
||||
|
||||
2. **More powerful CAD kernel** OpenCascade is much more powerful than CGAL. Features supported natively
|
||||
by OCC include NURBS, splines, surface sewing, STL repair, STEP import/export, and other complex operations,
|
||||
in addition to the standard CSG operations supported by CGAL
|
||||
|
||||
3. **Ability to import/export STEP** We think the ability to begin with a STEP model, created in a CAD package,
|
||||
and then add parametric features is key. This is possible in OpenSCAD using STL, but STL is a lossy format
|
||||
|
||||
4. **Less Code and easier scripting** CadQuery scripts require less code to create most objects, because it is possible to locate
|
||||
features based on the position of other features, workplanes, vertices, etc.
|
||||
|
||||
5. **Better Performance** CadQuery scripts can build STL, STEP, and AMF faster than OpenSCAD.
|
||||
|
||||
License
|
||||
========
|
||||
|
||||
CadQuery is licensed under the terms of the LGPLv3. http://www.gnu.org/copyleft/lesser.html
|
||||
|
||||
Where is the GUI?
|
||||
==================
|
||||
|
||||
If you would like IDE support, you can use CadQuery inside of FreeCAD. There's an excellent plugin module here https://github.com/jmwright/cadquery-freecad-module
|
||||
|
||||
CadQuery also provides the backbone of http://parametricparts.com, so the easiest way to see it in action is to review the samples and objects there.
|
||||
|
||||
Installing -- FreeStanding Installation
|
||||
========================================
|
||||
|
||||
Use these steps if you would like to write CadQuery scripts as a python API. In this case, FreeCAD is used only as a CAD kernel.
|
||||
|
||||
1. install FreeCAD, version 0.14 or greater for your platform. http://sourceforge.net/projects/free-cad/.
|
||||
|
||||
2. adjust your path if necessary. FreeCAD bundles a python interpreter, but you'll probably want to use your own,
|
||||
preferably one that has virtualenv available. To use FreeCAD from any python interpreter, just append the FreeCAD
|
||||
lib directory to your path. On (*Nix)::
|
||||
|
||||
import sys
|
||||
sys.path.append('/usr/lib/freecad/lib')
|
||||
|
||||
or on Windows::
|
||||
|
||||
import sys
|
||||
sys.path.append('/c/apps/FreeCAD/bin')
|
||||
|
||||
*NOTE* FreeCAD on Windows will not work with python 2.7-- you must use pthon 2.6.X!!!!
|
||||
|
||||
3. install cadquery::
|
||||
|
||||
pip install cadquery
|
||||
|
||||
3. test your installation::
|
||||
|
||||
from cadquery import *
|
||||
box = Workplane("XY").box(1,2,3)
|
||||
exporters.toString(box,'STL')
|
||||
|
||||
You're up and running!
|
||||
|
||||
Installing -- Using CadQuery from Inside FreeCAD
|
||||
=================================================
|
||||
|
||||
Use the Excellent CadQuery-FreeCAD plugin here:
|
||||
https://github.com/jmwright/cadquery-freecad-module
|
||||
|
||||
It includes a distribution of the latest version of cadquery.
|
||||
|
||||
Where does the name CadQuery come from?
|
||||
========================================
|
||||
|
||||
CadQuery is inspired by ( `jQuery <http://www.jquery.com>`_ ), a popular framework that
|
||||
revolutionized web development involving javascript.
|
||||
|
||||
If you are familiar with how jQuery, you will probably recognize several jQuery features that CadQuery uses:
|
||||
|
||||
* A fluent api to create clean, easy to read code
|
||||
* Language features that make selection and iteration incredibly easy
|
||||
*
|
||||
* Ability to use the library along side other python libraries
|
||||
* Clear and complete documentation, with plenty of samples.
|
||||
|
||||
@ -50,7 +50,10 @@ All 2-d operations require a **Workplane** object to be created.
|
||||
Workplane.moveTo
|
||||
Workplane.move
|
||||
Workplane.spline
|
||||
Workplane.parametricCurve
|
||||
Workplane.threePointArc
|
||||
Workplane.sagittaArc
|
||||
Workplane.radiusArc
|
||||
Workplane.rotateAndCopy
|
||||
Workplane.mirrorY
|
||||
Workplane.mirrorX
|
||||
@ -60,6 +63,7 @@ All 2-d operations require a **Workplane** object to be created.
|
||||
Workplane.polyline
|
||||
Workplane.close
|
||||
Workplane.rarray
|
||||
Workplane.polarArray
|
||||
|
||||
.. _3doperations:
|
||||
|
||||
@ -79,18 +83,28 @@ Some 3-d operations also require an active 2-d workplane, but some do not.
|
||||
Workplane.cutBlind
|
||||
Workplane.cutThruAll
|
||||
Workplane.box
|
||||
Workplane.sphere
|
||||
Workplane.union
|
||||
Workplane.combine
|
||||
Workplane.intersect
|
||||
Workplane.loft
|
||||
Workplane.sweep
|
||||
Workplane.twistExtrude
|
||||
Workplane.revolve
|
||||
Workplane.text
|
||||
|
||||
|
||||
3-d operations that do NOT require a 2-d workplane to be active:
|
||||
|
||||
.. autosummary::
|
||||
CQ.shell
|
||||
CQ.fillet
|
||||
CQ.chamfer
|
||||
CQ.split
|
||||
CQ.rotate
|
||||
CQ.rotateAboutCenter
|
||||
CQ.translate
|
||||
CQ.mirror
|
||||
|
||||
File Management and Export
|
||||
---------------------------------
|
||||
|
||||
@ -16,7 +16,7 @@ Command Line Installation
|
||||
|
||||
Once you have Anaconda or Miniconda installed, activate the environment you want to use and type::
|
||||
|
||||
conda install -c pythonocc -c oce -c conda-forge -c dlr-sc -c CadQuery cadquery-occ
|
||||
conda install -c conda-forge -c cadquery cadquery=2
|
||||
|
||||
Test Your Installation
|
||||
------------------------
|
||||
|
||||
@ -83,13 +83,6 @@ construction lines
|
||||
mirror around centerline
|
||||
using centerline construction geometry
|
||||
|
||||
rectangular array
|
||||
automate creation of equally spread points
|
||||
|
||||
polar array
|
||||
create equally spaced copies of a feature around a circle
|
||||
perhaps based on a construction circle?
|
||||
|
||||
midpoint selection
|
||||
select midpoints of lines, arcs
|
||||
|
||||
@ -106,9 +99,6 @@ feature snap
|
||||
polyline edges
|
||||
allow polyline to be combined with other edges/curves
|
||||
|
||||
create text
|
||||
ideally, in various fonts.
|
||||
|
||||
3-d operations
|
||||
---------------------
|
||||
|
||||
@ -118,7 +108,6 @@ rotation/transform that return a copy
|
||||
primitive creation
|
||||
Need primitive creation for:
|
||||
* cone
|
||||
* sphere
|
||||
* cylinder
|
||||
* torus
|
||||
* wedge
|
||||
@ -126,21 +115,6 @@ primitive creation
|
||||
extrude/cut up to surface
|
||||
allow a cut or extrude to terminate at another surface, rather than either through all or a fixed distance
|
||||
|
||||
extrude along a path
|
||||
rather than just normal to the plane. This would include
|
||||
|
||||
STEP import
|
||||
allow embedding and importing step solids created in other tools, which
|
||||
can then be further manipulated parametrically
|
||||
|
||||
Dome
|
||||
very difficult to do otherwise
|
||||
|
||||
primitive boolean operations
|
||||
* intersect
|
||||
* union
|
||||
* subtract
|
||||
|
||||
|
||||
Algorithms
|
||||
---------------------
|
||||
|
||||
Reference in New Issue
Block a user