1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-01-17 22:28:16 +01:00
dotSCAD/README.md
2021-03-09 17:44:27 +08:00

16 KiB

dotSCAD 3.0 RC

Reduce the burden of mathematics/algorithm when playing OpenSCAD.

dotSCAD

license/LGPL

Introduction

This library requires OpenSCAD 2021.01 or later. Please see Release Notes.

Some of my 3D models require complex mathematics/algorithm. I extract them into dotSCAD. Hope it helps when you're playing OpenSCAD.

The idea of the name dotSCAD comes from the filename extension ".scad" of OpenSCAD.

Get Started

OpenSCAD uses three library locations, the installation library, built-in library, and user defined libraries. It's convenient to set OPENSCADPATH. Check Setting OPENSCADPATH in OpenSCAD User Manual/Libraries for details.

I set OPENSCADPATH to the src folder of dotSCAD so all examples here start searching modules or functions from src.

Every module or function is located in the file which has the same name as the module or the function. For example, if you want to use the line2d module to draw a line, use <line2d.scad>; first.

use <line2d.scad>;

line2d(p1 = [0, 0], p2 = [5, 0], width = 1);

Some module files are organized in a directory. For example, px_circle.scad exists in pixel directory. You have to prefix the directory name when including px_circle.

use <voxel/vx_circle.scad>;

points = vx_circle(radius = 10);
for(pt = points) {
    translate(pt) square(1);
}

Examples

These examples incubate dotSCAD and dotSCAD refactors these examples. See examples.

examples

Documentation

2D Module

3D Module

Transformation

2D Function

2D/3D Function

Path

Extrusion

2D Shape

2D Shape Extrusion

Util

Matrix

Point Transformation


Turtle

Voxel

Part

Surface

Noise

Voronoi

Maze