File Icon
 
 

717

 

15192

Living Hinge Creator

A new version is available for Inskcape 1.0 and higher. Search the extension repository for "Living Hinge Creator for Inkscape 1.0"

This extension creates cut lines to make a living hinge when laser cutting material. Options include the length of the cuts, the separation between sequential cuts, and the separation between adjacent cuts. All parameters are stored in the "Object Properties" field of the resulting object.

Installation
Download and unzip the file.
Copy living_hinge.inx and src/living_hinge.py to your extension directory.

--Linux
Run the shell script copy_files.sh. This will copy living_hinge.inx and src/living_hinge.py to ~/.config/inkscape/extensions

Instructions on how to use the extension can be found here:
http://wiki.lvl1.org/Inkscape_Extension_to_Render_a_Living_Hinge

Inkscape Extensions

Size
18.9 KB
Created
Type
application/zip
General Public License v3 (GPLv3)
Maren Hachmann wrote :

Thanks for sharing here! Works well in 0.91.

Lars Beck wrote :

Thank you Drphonon! very usefull!

Alvaro_Conejo wrote :

Extension isn't working on version 1.0 for Mac.

Brett208 wrote :

This extension looks great but it doesn't appear to work with version 1.0 of Inkscape on Windows either.

@drphonon, is do you plan on updating to work with the newer version of Inkscape?

Attempting to generate a living hinge while having a 200 x 200 mm box selected with standard hinge settings created the following issues:

living_hinge.py:49: DeprecationWarning: Effect.OptionParser or `optparse` has been deprecated and replaced with `argparser`.You must change `self.OptionParser.add_option` to `self.arg_parser.add_argument`; the arguments are similar.
self.OptionParser.add_option('--unit',action='store',type='string', dest='unit',default='mm',help='units of measurement')
living_hinge.py:50: DeprecationWarning: Effect.OptionParser or `optparse` has been deprecated and replaced with `argparser`.You must change `self.OptionParser.add_option` to `self.arg_parser.add_argument`; the arguments are similar.
self.OptionParser.add_option('--cut_length',action='store',type='float', dest='cut_length',default=0,help='length of the cuts for the hinge.')
living_hinge.py:51: DeprecationWarning: Effect.OptionParser or `optparse` has been deprecated and replaced with `argparser`.You must change `self.OptionParser.add_option` to `self.arg_parser.add_argument`; the arguments are similar.
self.OptionParser.add_option('--gap_length',action='store',type='float', dest='gap_length',default=0,help='separation distance between successive hinge cuts.')
living_hinge.py:52: DeprecationWarning: Effect.OptionParser or `optparse` has been deprecated and replaced with `argparser`.You must change `self.OptionParser.add_option` to `self.arg_parser.add_argument`; the arguments are similar.
self.OptionParser.add_option('--sep_distance',action='store',type='float', dest='sep_distance',default=0,help='distance between successive lines of hinge cuts.')
living_hinge.py:180: DeprecationWarning: Effect.affect is now `Effect.run()`. The `output` argument has changed.
effect.affect()
living_hinge.py:58: DeprecationWarning: Effect.unittouu is now a method in the svg document. Use `self.svg.unittouu(str)` instead.
l = self.unittouu(str(self.options.cut_length) + unit)
living_hinge.py:60: DeprecationWarning: Effect.unittouu is now a method in the svg document. Use `self.svg.unittouu(str)` instead.
d = self.unittouu(str(self.options.gap_length) + unit)
living_hinge.py:63: DeprecationWarning: Effect.unittouu is now a method in the svg document. Use `self.svg.unittouu(str)` instead.
dd = self.unittouu(str(self.options.sep_distance) + unit)
living_hinge.py:66: DeprecationWarning: Effect.selected is now a dict in the svg. Use `self.svg.selected`.
if self.selected:
living_hinge.py:68: DeprecationWarning: Effect.current_layer is now a method in the svg. Use `self.svg.get_current_layer()` instead.
parent = self.current_layer
living_hinge.py:69: DeprecationWarning: Effect.selected is now a dict in the svg. Use `self.svg.selected`.
for id, node in self.selected.iteritems():
Traceback (most recent call last):
File "living_hinge.py", line 180, in <module>
effect.affect()
File "C:\Program Files\Inkscape\share\inkscape\extensions\inkex\deprecated.py", line 180, in affect
return self.run(args=args)
File "C:\Program Files\Inkscape\share\inkscape\extensions\inkex\base.py", line 123, in run
self.save_raw(self.effect())
File "living_hinge.py", line 69, in effect
for id, node in self.selected.iteritems():
AttributeError: 'collections.OrderedDict' object has no attribute 'iteritems'

Guthrieden wrote :

Please Please Please update for inkscape 1.0 +

Mario Voigt wrote :

there you get: i did it some days ago:https://gitea.fablabchemnitz.de/MarioVoigt/mightyscape-1.X/src/branch/master/extensions/fablabchemnitz_living_hinge.py

TinaB wrote :

@Mario Voigt
Jij hebt het geupdate? Maar je link blijkt niet te werken?
"De pagina die u probeert te bereiken bestaat niet of u bent niet gemachtigd om het te bekijken."

Kirstie wrote :

@Mario Voigt,
Thank you so much for the complete extensions repository! That is an awesome job you did there.

@Tina, look here and dowload the complete mightyscape-1.x as a zip file to your computer:
https://gitea.fablabchemnitz.de/MarioVoigt/mightyscape-1.X/src/branch/master

Unzip it and you find many extensions in there.
Just copy the ones you need (every extension has an .inx and .py file) to your user's extensions folder.
There are 3 variations of a living hinge extension.

After installation, you find them under menu > extensions > fablab chemnitz.

DeanoTheDeano wrote :

Hi. Have you done this for Inkscape 1.3.2 please?

Please log in to leave a comment!