cadquery:vtk

Examples of the cadquery:vtk directive.

Development Status

Development Status:

2 - Pre-Alpha

This directive is experimental.

cadquery:vtk is based on the docutils “figure” directive having similar features and syntax:

  • The model may be captioned.

  • Notes may be added below the code block.

  • Models may be referenced by name: color example.

The model source code is defined in either a code-block or literalinclude, meaning:

Tip

View the reStructuredText source of this page by following the View page source link in the header.

Simple rectangular plate

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A simple rectangular plate measuring 2 × 2 × 0.5 mm.

1"""Simple rectangular plate."""
2
3import cadquery as cq
4
5result = cadquery.Workplane().box(2, 2, 0.5)

Notes:

  1. Line numbers are added with linenos.

  2. Line number 5 is emphasized with emphasize-lines.

Assembly

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

An assembly of two cones.

cone = cq.Solid.makeCone(1, 0, 2)

assembly = cq.Assembly()
assembly.add(
    cone,
    loc=cq.Location((0, 0, 0), (1, 0, 0), 180),
    name="cone0",
    color=cq.Color("green"),
)
assembly.add(cone, name="cone1", color=cq.Color("blue"))

show_object(assembly)

Sketch

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A sketch.

import cadquery as cq

result = (
    cq.Sketch()
    .trapezoid(4, 3, 90)
    .vertices()
    .circle(0.5, mode="s")
    .reset()
    .vertices()
    .fillet(0.25)
    .reset()
    .rarray(0.6, 1, 5, 1)
    .slot(1.5, 0.4, mode="s", angle=90)
)

Source from file

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A simple rectangular plate measuring 2 × 2 × 0.5 mm.

"""Simple rectangular plate."""

import cadquery

result = cadquery.Workplane().box(2, 2, 0.5)

Content variations

Code block: without caption or source

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

Code block: with both caption and source

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A simple rectangular plate measuring 2 × 2 × 0.5 mm.

"""Simple rectangular plate."""

import cadquery as cq

result = cadquery.Workplane().box(2, 2, 0.5)

Code block: with caption, source, and notes

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A simple rectangular plate measuring 2 × 2 × 0.5 mm.

"""Simple rectangular plate."""

import cadquery as cq

result = cadquery.Workplane().box(2, 2, 0.5)

Notes may follow the code-block.

  1. The model source code is loaded from a code-block directive.

  2. The model is captioned.

  3. The model source code is displayed.

  4. These are notes.

Source from file: without caption or source

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

Source from file: with both caption and source

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A simple rectangular plate measuring 2 × 2 × 0.5 mm.

"""Simple rectangular plate."""

import cadquery

result = cadquery.Workplane().box(2, 2, 0.5)

Source from file: with caption, source, and notes

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

A simple rectangular plate measuring 2 × 2 × 0.5 mm.

"""Simple rectangular plate."""

import cadquery

result = cadquery.Workplane().box(2, 2, 0.5)

Notes may follow the literalinclude.

Material:

stainless steel

Finish:

brushed

Options

Default color

The color option defines the default color of VTK.js render.

roll
MB1
pan
MB2
zoom
MB3
rotate
shift+MB1

Default color set to 0.5, 1, 0.8, 1.

result = cadquery.Workplane().box(2, 2, 0.5)