Skip to main content

Render polygons, polylines, and mesh cross sections to SVG

Project description

hobart

version license build docs build code style

Render polygons, polylines, and mesh cross sections to SVG.

Features

  • Render 2D and 3D polygons and polylines to SVG, with automatic computation of the bounding rectangle.
  • Render cross sections of lace-style polygonal meshes.

Installation

pip install numpy hobart

Usage

python -m hobart.cli horizontal-xs \
    --reference vitra_with_xs.dae \
    examples/vitra/vitra_without_materials.obj \
    15 30 45 60
import numpy as np
import vg
from lace.mesh import Mesh
from polliwog import Plane
from hobart import render_longest_xsection_to_svg

mesh = Mesh(filename="mesh.obj")

plane = Plane(
    point_on_plane=np.array([0.0, 30.0, 0.0]),
    unit_normal=vg.basis.y)

render_longest_xsection_to_svg(
    mesh=mesh,
    plane=plane,
    filename="cross_section.svg")
from lace.mesh import Mesh
from polliwog import Plane
from hobart import render_longest_xsection_to_svg

mesh = Mesh(filename="examples/vitra/vitra_without_materials.obj")
plane = Plane(
    point_on_plane=np.array([-0.869231, 60.8882, -20.1071]),
    unit_normal=vg.normalize(np.array([0., 0.1, -1.])))
xs = render_longest_xsection_to_svg(
    mesh=mesh,
    plane=plane,
    filename="vitra_cross_section.svg")

mesh.add_lines([xs])
mesh.write("vitra_with_cross_section.dae")

Contribute

Pull requests welcome!

Support

If you are having issues, please let us know.

License

The project is licensed under the two-clause BSD license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for hobart, version 0.2.1
Filename, size File type Python version Upload date Hashes
Filename, size hobart-0.2.1-py3-none-any.whl (8.0 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size hobart-0.2.1.tar.gz (6.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page