Coder Social home page Coder Social logo

tonowie1 / constructive Goto Github PK

View Code? Open in Web Editor NEW

This project forked from solidboredom/constructive

0.0 0.0 0.0 1.8 MB

Extends OpenScad Language for complex and complementary mechanical parts with less mathematical code. Offers a "Stamping" approach to quickly create mechanical parts fitting and complementing one another. This is used as a replacement for Constraints known form other CAD systems

License: GNU General Public License v2.0

Shell 0.25% OpenSCAD 99.75%

constructive's Introduction

Constructive Library:

Extends OpenScad Language for complex and complementary mechanical parts with less mathematical code. Offers a "Stamping" approach to quickly create mechanical parts fitting and complementing one another. This is used as a replacement for Constraints known form other CAD systems

Easily create holes from modules and overcome many Openscad's limitiations for complex models using the library's own syntax.

Compiles directly by OpenScad. No other tools needed. Just include the: constructive-compiled.scad in your .scad file, that is all.


screeen

Constructive Library (about 1900 lines of Code) introduces a different approach to OpenScad Syntax: you rarely need difference(), for(),intersection() or their one-to-one equivalents, In the library's own dialect a for() block might look like:

pieces(4) X(every(35)) turnXY (vals(10,25,-15,40)) cube(10);

It is all valid OpenScad, you do not need any additional programs, just the OpenScad and the constructive-compiled.scad file.

The Constuctive-Syntax tries to align more with mechanical construction of parts and less with mathematical concepts like arrays, vectors and functions. (but they are heavily used behind the scenes). So it aims to be more concise and fluent for mechanical parts than vanilla OpenScad. It allows you to make holes from Modules and really good deal more.

For a basic introduction (specially if you are new to Openscad ) see the beginners tutorial it explains Constructive Syntax for main Building blocks, like tube(), box() or bentStrip() and their placement and alignment in space like stack() , align(), X(),Y(),Z() or turnXZ()

Part II tutorial shows somee basic object modification like reflectX(), cScale() ,or colors and then goes on to explain, how to work with sets of similar objects without for(), with: pieces(), span(), vals(), selectPieces(), etc..

Part III tutorial shows more advanced Features like grouping commands into a g() group, working with Parts, and combinig them into Assembly

For a more advanced use also look at the explanations inside the example below

https://github.com/solidboredom/constructive/blob/main/examples/mount-demo.scad

there is also another Example at:

https://github.com/solidboredom/constructive/blob/main/examples/pulley-demo.scad screeen

The easiest way to try out the Library is to download the kickstart.zip

Still uncovered are inverse transformations like in:

g(X(10),Y(15),turnXY(45),X(30))

g(backwards([X(10),Y(15),turnXY(45),X(30)])

    box(10);

also part inheritance, part selector prefixes, internal type Ssystem and some more features

Try it! i hope you will find it as useful as i do.

Peter

constructive's People

Contributors

solidboredom avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.