Fundamentals

Core principles of parametric 3D printing design

Why FullControl?

Traditional 3D printing workflow involves creating a 3D model in CAD software, then using a slicer to convert it to G-code. FullControl takes a different approach:

Traditional Workflow

CAD Model
Slicer
G-code
  • Limited control over toolpath
  • Fixed layer heights
  • Standard infill patterns
  • Planar layers only

FullControl Workflow

Python Code
G-code
  • Complete toolpath control
  • Variable layer heights
  • Custom infill patterns
  • Non-planar printing
  • Mathematical precision

Core Principles

Code-First Design

Instead of drawing shapes, you describe them mathematically. This enables precise, repeatable, and parametric designs that can be easily modified.

Example: A circle isn't drawn—it's defined by radius, center point, and number of segments.

Direct Toolpath Control

You specify exactly where the print head moves, when to extrude, and how fast to move. This gives unprecedented control over the printing process.

Example: Create custom infill patterns that follow mathematical functions or optimize for specific mechanical properties.

Layer Independence

Each layer can have different properties—height, speed, temperature, or even geometry. Layers don't need to be planar or uniform.

Example: Gradually increase layer height as you go up, or create curved layers for organic shapes.

Parametric Design

Use variables, loops, and functions to create designs that can be easily customized. Change one parameter to resize the entire design.

Example: A parametric box where changing the size variable automatically adjusts all dimensions and infill density.

Design Philosophy

🎯 Precision Over Convenience

FullControl prioritizes precise control over ease of use. While it requires more technical knowledge than traditional CAD, it enables designs that are impossible with conventional tools.

🔬 Scientific Approach

Treat 3D printing as a controlled manufacturing process. Every aspect—from material flow to thermal management—can be precisely controlled and optimized.

🔄 Iterative Development

Design, test, measure, and refine. The code-based approach makes it easy to version control your designs and make incremental improvements.

🎨 Creative Freedom

Break free from traditional manufacturing constraints. Create impossible geometries, gradient materials, and structures that adapt to their intended function.

When to Use FullControl

✅ Ideal Use Cases

  • Custom infill patterns and structures
  • Non-planar or curved layer printing
  • Parametric designs with many variables
  • Mathematical art and patterns
  • Functional parts with specific properties
  • Research and experimental printing
  • Educational demonstrations

⚖️ Consider Alternatives For

  • Simple geometric shapes
  • Quick prototyping
  • Decorative items without functional requirements
  • When you need visual modeling
  • Large, complex assemblies

Learning Path

Mastering FullControl is a journey. Here's a recommended learning progression:

1

Foundation

Learn Python basics, understand coordinates, and create simple shapes

Python syntax3D coordinatesBasic shapes
2

Control

Master printer controls, understand extrusion, and manage layers

Extrusion controlSpeed settingsLayer management
3

Parametrics

Create designs with variables, loops, and functions

VariablesFunctionsLoops
4

Advanced

Explore non-planar printing, custom algorithms, and optimization

Non-planarAlgorithmsOptimization

Next Steps

Ready to dive deeper? Choose your next learning path: