Skip to content

emanuelemessina/cjfit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CJFIT: Cylindrical Jig Fit Test

Implementation of the CJFIT algorithm as a Blender Add-on.

The current implementation uses iterative roto-translation with fixed step size to remove intersections.

Install

Requires Blender >= 4.2

Normal procedure for installing an extension from disk.
From within Blender: Edit -> Preferences -> Get Extensions -> (top right dropdown arrow) -> Install from disk -> (select the release zip for your os)

Usage

Once installed you will see the extension's panel in the Sidebar of the 3D Viewport:

panel default

You can adjust the cylinder's radius and height.
A cylinder is created in the viewport to visualize the changes in real time.
You can hide/delete the cylinder from the Outliner:

outliner

When a Mesh object is selected and active, the Test button activates.
Clicking Test, well, initiates the test.
The test is blocking because, as of now, it runs on the draw thread.
You will, however, visualize the rotation/adjustments of the object in realtime, as the algorithm tries to solve the problem.

When the test finishes, the original object will be parented to its convex hull, parented to its bounding box:

outliner final

A notification will appear with the test result:

fits

The object will be in the solving orientation and position:

solved

Or in case of a negative outcome, like:

doesn't fit

the object will be in the last orientation and position where the algorithm concluded the object does not fit.

Build from source

blender --command extension build --split-platforms --source-dir src --output-dir build

About

Cylindrical Jig Fit Test for Blender

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages