Bitmap Objects

Use Draw - Bitmap, then select a drawing file such as a jpeg or bitmap. CamBam will detect edges in the bitmap, allowing you to scan a drawing, or draw a shape in an external application like photoshop, then load it into CamBam and insert a machining operation based from it. Changes to the drawing will be picked up automatically by the machining operation.

The bitmap file is linked to the CamBam drawing, not saved within it, so transferring CamBam drawings containing bitmaps will also require the bitmap file to be copied.

To break the link to a bitmap file and include the vectors within the CamBam drawing, select the drawing object then use Convert To Polylines or CTRL+P.

Showing Bitmaps or Vectors

The Display Bitmaps and Display Vectors properties can be used to control what is displayed in the drawing.

Show Bitmap Only
showing bitmap only
Show Bitmap and Vectors
showing bitmap and vectors
Show Vectors Only
showing vectors only (invert=false)
Show Vectors Only Inverted
showing vectors only (invert=true)


CamBam will automatically vectorise the bitmap using a quick and simple edge detect. You can change the vectorisation method in the bitmap properties. Selecting Smoothing = True will generate a spline smoothed outline. This can take a few seconds for the spline to calculate.

Smoothing Pixels can be used to control the spline fit. Smoothing Pixels = 2 usually provides good results. Going lower than 1 can take a long time and will end up with a spline trying to follow each pixel.

Small smoothing pixel values (around 1), can take a very long time to calculate (minutes!).

We are working to make this faster and run in a background process so as not to lock up the UI, but for now smoothing pixel settings of 2 or more are recommended.

No Smoothing
no smoothing
Smooth Pixels = 1
smooth pixels = 1
Smooth Pixels = 2
smooth pixels = 2
Smooth Pixels = 5
smooth pixels = 5


Display Bitmap

True | False.

Controls whether the bitmap image is displayed.

Display Vectors

True | False.

Controls whether the detected edge vectors are displayed.


The height of the image in drawing units.

The pixel height and vertical resolution stored in the bitmap are used to calculate the default height value.


The width of the image in drawing units.

The pixel width and horizontal resolution stored in the bitmap are used to calculate the default width value.


If True the edges of lighter pixels are detected. If the image contains dark lines on a light background, the edge detect will include the bitmap outline.

If False the edges of darker pixels are detected. If the image contains dark lines on a light background, only the edges of the lines are included.


This is the X,Y,Z drawing location of the lower left corner of the bitmap.

Smooth Pixels

If Smoothing = True, Smooth Pixels controls the maximum allowed error between a spline curve and the raw outline. The error is measured in number of pixels.

Smaller values will produce splines that closely match the outline, but may take longer to calculate, produces larger splines and possibly result in unwanted detail such as jagged pixel outlines.

Larger values will produce faster, simpler, smoother curves but with less accuracy.


True | False.

If True, a spline will be used to fit the raw pixel edges.

If False, only the raw pixel edges are used.

Raw pixel edges will be faster to calculate, but result in 'jagged' pixel edges.

Source File

The path to the source bitmap file.

The following bitmap formats are supported:

The filename will be relative to the current CamBam drawing path. Saving the CamBam drawing first, before inserting bitmaps is recommend so the relative rather than full paths will be detected. Relative paths make is easier to copy the .cb file and bitmap files together without needing to change paths within the drawing.


The brightness threshold used to determine if a pixel is set when vectorizing.

A value between 0 and 1, where 0 is black and 1 is white.

Note that color images use monochrome edge detection so edges between different colors with similar brightnesses may not be detected.


A general purpose, multi-line text field that can be used to store notes or parameter data.


A 4 x 4 matrix of numbers used for general transformations of the drawing objects.

The transform matrix can be used for rotations, translations and scaling about all 3 axis.

Identity indicates no transformations will be applied to the object.

Copyright (c) 2018 HexRay Ltd