#! /usr/bin/python
#
# simple demo program to feed paper in the silhouette cameo.
# (C) 2015 [email protected]
#
# Requires: python-usb  # from Factory

from __future__ import print_function

import sys

sys.path.extend(['..', '.'])  # make it callable from top or misc directory.
from silhouette.Graphtec import SilhouetteCameo

dev = SilhouetteCameo()  # no dev.setup() needed here.

feed_mm = 10
if len(sys.argv) > 1:
    feed_mm = float(sys.argv[1])

if not feed_mm:
    print("Usage: %s [PAPER_FORWARD_MM]" % sys.argv[0])

dev.move_origin(feed_mm)
Example #2
0
# Requires: python-usb  # from Factory

from __future__ import print_function

import time, sys, os
sys.path.append(os.path.dirname(os.path.abspath(__file__)) +
                '/..')  # make it callable from anywhere
from silhouette.Graphtec import SilhouetteCameo

# coordinates in mm, origin int top lefthand corner
arrow1 = [(0, 5), (21, 5), (18, 0), (31, 10), (18, 20), (21, 15), (0, 15),
          (3, 10), (0, 5)]
arrow2 = [(x[0] + 263, x[1] + 0) for x in arrow1]
arrow3 = [(x[0] + 30, x[1] + 0) for x in arrow1]

dev = SilhouetteCameo()
print("status=%s" % dev.wait_for_ready(20))

tmp_fwd = 85  # enough to show 20mm of the latest drawing on the far side of the device.

dev.setup(media=113, pressure=0, trackenhancing=True)

for i in range(8):
    bbox = dev.plot(pathlist=[arrow1, [(0, tmp_fwd), (0, tmp_fwd)]],
                    mediaheight=180,
                    offset=(60, 0),
                    bboxonly=False,
                    end_paper_offset=-tmp_fwd + 1)
    dev.wait_for_ready()
    print(i, "path done.")
    time.sleep(5)
Example #3
0
#
import sys
sys.path.append('/usr/share/inkscape/extensions')
sys.path.append('/home/testy/src/github/inkscape-silhouette')
from silhouette.Graphtec import SilhouetteCameo

__version__ = '0.1'
__author__ = 'Juergen Weigert <*****@*****.**>'

k = 0.2  # knive-center offset, (0.1 is not enough)

test_sq_tr = \
[
    [(4+k, 5+k), (2, 3), (2, 1), (3, 1), (9, 5), (3, 9), (2, 9), (2, 7), (4+k, 5-k)],
    [(0, 0), (0, 10), (10, 10), (10, 0), (0, 0-k)]
]


def write_progress(done, total, msg):
    perc = 100. * done / total
    print("%d%% %s\r" % (perc, msg))


dev = SilhouetteCameo(progress_cb=write_progress, no_device=False)
state = dev.status()  # hint at loading paper, if not ready.
print "status=%s" % (state)
print "device version: '%s'" % dev.get_version()

dev.setup(media=132, pen=False, pressure=1, speed=10)
dev.plot(pathlist=test_sq_tr, offset=(30, 30))
Example #4
0
#

import sys, os
sys.path.append('/usr/share/inkscape/extensions')
sys.path.append(os.path.expanduser('~/.config/inkscape/extensions/'))
from silhouette.Graphtec import SilhouetteCameo

__version__ = '0.1'
__author__ = 'Juergen Weigert <*****@*****.**>'

k=0.2   # knive-center offset, (0.1 is not enough)

test_sq_tr = \
[
  [(4+k, 5+k), (2, 3), (2, 1), (3, 1), (9, 5), (3, 9), (2, 9), (2, 7), (4+k, 5-k)],
  [(0, 0), (0, 10), (10, 10), (10, 0), (0, 0-k)]
]


def write_progress(done, total, msg):
    perc = 100.*done/total
    print("%d%% %s\r" % (perc, msg))

dev = SilhouetteCameo(progress_cb=write_progress, dry_run=False)
state = dev.status()    # hint at loading paper, if not ready.
print("status=%s" % (state))
print("device version: '%s'" % dev.get_version())

dev.setup(media=132, pen=False, pressure=1, speed=10)
dev.plot(pathlist=test_sq_tr, offset=(30, 30))