Sorry for this page layout: but I try to spend more time to create better scripts and work with Sketchup than to create a better page.
I have written the scripts for my personal use, so don't expect anything.



Creates a file containing information about edges. Might be used as example how to access lots of information.


Simple recursive explode. (Useful for the result of svg.rb)
Adds a Context Menu entry that will only be shown if you select a group.


Plugin that allows to push/pull all faces in the selection by the same distance.
Multiple instances of components are only pulled once.
The faces can be filtered by the material.
A second material can be used to pull other faces by the same distance but to the opposite direction.


Outliner creates (groups of) Paths for faces:
The paths will have a configurable distance to the contour (or outline) of the face.
One group is generated for each face, containing all "loops": So all holes of that face are found in the same group
One purpose of this script is to create a milling path for existing faces:
A (very simple) kind of CAM (Computer Aided Manufacturing)
Can be a starting point for "path2gcode" below.


This script allows to use Inkscape to create 2D images and to create Sketchup group(s) from the SVG File Inkscape has written.
The script requires rexml: You will find the files in a standard ruby environment: Copy the rexml Folder to your Sketchup Plugins Folder.
You will also need the forwardable.rb and set.rb from ruby in your Plugins Folder.


An important step for simple CAM usage:
I'm (also) using Sketchup with WINE in my LinuxCNC environment. This script allows to create files that can be read directly by the Milling-Software.
There are nice tools like STL export and to use Pycam, but this is a different approach: The idea is that the sketchup model also keeps the CAM Information about the model.
The initial idea was to be able to place drill positions (with lines) to my model, but it also works well for removing material with a milling cutter.

How to use:
Draw lines to your model, group them, and this script generates G-Code Sequences out of them and save them to a .ngc file.
The script requires your paths to be in groups (or components).
The groups are sorted by their name (can be set in the entity-information).
The paths within one group are sorted by their Z-Position: The vertice with the highest Z will be the start of the first path.
The line-paths generated by outliner.rb are somewhat useful, but you have to edit them: These paths don't have a start, so just open the loop, and add a line upwards.
The generated G-Code file will just contain G00 (to go the first vertice of the path) and G01 commands, so it doesn't look for arcs etc. Another G00 Command is added to the end of a path that goes up to the starting Z-Coordinate.
To get more commands into the G-Code file you can add attributes (using a different script, see below) to groups and edges: the values will also be written to the file.
At least a speed like "F100" should be added to file to be able to use the file directly withtout editing.


To make the script path2gcode (above) really useful, you need at least a speed in your ngc file:
This script allows this, in a very basic way: It adds entries to the context menu to set attributes:
For Groups and Edges: Set the speed (Fxxx)
For Groups only: Set the Tool
The script simply adds a "gcode" dictionary, with different keys. The export script "path2gcode" only writes the values.
If something is missing: You should be able to edit the source and add more G-Code commands.