Fandango

Scripted 3D CAD engine

Description

Fandango is planned to be a full featured CAD program. It has a C++ core extensible by scripts.

It still doesn't do much CAD stuff. Currently the memory core for entity management is ready, scripting works wonderfully thanks to the ease of embedding and extending of Python. A KDE+XML user interface is now in place, controlling the keyboard and mouse.

Sierpinski triangle Organic shape Lorentz attractor leaf or shell shape Koch snowflake

Above are examples of scripting in action. The first one is the plotting of a function that builds Sierpinski's triangle up to seven recursions. The second one is a mixture of parallel and radial sine transformations over a plane. The third is Lorentz' attractor. The fourth is built on the same procedure of the second, using an additive function. The last one is Koch's snowflake.

Loops Intersections Freehand drawing

Above's thumbnails are from the latest kde3.1 interface. The first one displays a loopy fractal. The second one is a test for the improved intersection code; works in realtime on my machine. The cross button on the toolbar below activates intersection finding mode. The last one is the freehand drawing mode; activate the pencil or paintbrush icon and click on the scene, and lines or triangles are drawn.

Requirements

To run:

To compile:

Recommended hardware.
This is my development configuration:

I expect that it will run fine on slower processors; python is sometimes very memory hungry, that added to the memory needed to hold the entities data may possibly give some troubles on the RAM side, but only for complicated calculations and hundreds of thousands of points. I can't recommend running this program without hardware graphics acceleration, in that case expect undefined performance.

Download

This program is under GPL licensing version 2.

README file

Current version, KDE port (0.2)

Old version (0.1)

SourceForge.net Logo The CVS is at Sourceforge: checkout the module named 'kfandango' for the current version with GUI or 'fandango' for the obsolete core only module.

Example dotfile. Place it at your home directory. It requires the appropiate scripts on a directory named ~/lib/fandango. Tweak at will, it is a valid python script.

Example scripts:

Related links

Fandango, V0.2.3
Copyright (C) 2002, 2003 Jaime Soffer