Blog: http://www.theiling.de/cnc/
Homepage: http://www.theiling.de/henrik.html
100x Faster Slicing of SCAD Files for 3D Printing
License: GNU General Public License v3.0
Blog: http://www.theiling.de/cnc/
Homepage: http://www.theiling.de/henrik.html
At the current tip of master, 5611971, I get this:
$ build font
...
./fontgen.exe
Nozzl3 Sans: 434 glyphs
fontgen.exe: src/csg2-bool.c:1279: divide_segment_: Assertion `p != e->other->p' failed.
Makefile:613: recipe for target 'out-font/.stamp' failed
Hello, please can you provide a precompiled version of hob3l for mac. I’m not able to compile it. Of course I can pay for this. Thanks in advance
Add this bug as a reproducible thing in case someone in the future works on hob3l, because it's awesome, and waiting for CGAL is painful sometimes :-)
shaft.scad:
`include <threads.scad>
// 54 threads
// length 3.5 inches
// outer diameter 1 inch
// about 2 threads missing from top and bottom so 56 threads over 3.5 inches = 16 threads / inch
inch_in_mm = 25.4;
difference() {
english_thread(1 * 26.5 / 25.1, 16, 4);
//cylinder(100, d=20);
english_thread(0.8,16,1,internal=true);
translate([0,0,inch_in_mm]) {
//cylinder(4*inch_in_mm,d=22);
}
}`
Uses threads library from here: https://www.dkprojects.net/openscad-threads/
Create csg:
$ openscad shaft.scad -o shaft.csg ECHO: "mm_diameter: 26.8167" ECHO: "mm_pitch: 1.5875" ECHO: "mm_length: 101.6" ECHO: "mm_diameter: 20.32" ECHO: "mm_pitch: 1.5875" ECHO: "mm_length: 25.4"
Run hob3l:
$ ./hob3l.exe shaft.csg -o shaft.stl Info: Z: min=0.1, step=0.2, layer_cnt=508, max=101.5 hob3l.exe: src/csg2-bool.c:705: chain_flush_vertex: Assertion
((c->vert.size & 1) == 0) && "Odd number of edges meet in one point"' failed.
Aborted`
I was wondering if you're planning to support more complex operations sometime in the future? I'm excited about using hob3l, but my projects make heavy use of hull
(eg. for constructing rounded cubes from 8 spheres). I have no idea how difficult that would be to implement, though.
Hi. I'm building on Windows 10 using MinGW. Impossible to get fontgen to compile. Result from "make" in font directory is:
Thanks for helping out.
Best,
Franck
mv libhob3lbase.a.new.a libhob3lbase.a
process_begin: CreateProcess(NULL, move libhob3lbase.a.new.a libhob3lbase.a, ...) failed.
make (e=2): Le fichier spécifié est introuvable.
make[1]: *** [libhob3lbase.a] Erreur 2
make[1]: quittant le répertoire « D:/projects/hob3l-master »
make: *** [all] Erreur 2
Would you like to add more error handling for return values from functions like the following?
Hello,
I was able to finally build hobl3l on Windows. Tried hob3l with one of my SCAD file. Hob3l cannot generate an STL with following error (whereas it is working just great in OpenSCAD).
$ ./hob3l.exe d:/tmp/test.scad -o d:/tmp/test.stl
d:/tmp/test.scad:6:7: Error: Expected '(', found '='.
Unexpected token, found '='.
pi=3.1415926535897932384626433832795028841971693993751058209;
^
Here is an extract of the SCAD file:
//WELCOMEATS3DKEY
//include <newdata.txt>
/////////////////WRITE
//Write
pi=3.1415926535897932384626433832795028841971693993751058209;
pi2=pi*2;
//default settings
center=false;
h = 4; //mm letter height
t = 1; //mm letter thickness
space =1; //extra space between characters in (character widths)
rotate=0; // text rotation (clockwise)
font = "D:/projects/keymanager_new/bin/profiles/letters.dxf"; //default for aditional fonts
module write(word){
rotate(rotate,[0,0,-1]){
for (r = [0:len(word)]){ // count off each character
// if the letter is lower case, add an underscore to the end for file lookup
if ((word[r] == "a" ) || (word[r]== "b") || (word[r]== "c")
|| (word[r]== "d") || (word[r]== "e") || (word[r]== "f")
|| (word[r]== "g") || (word[r]== "h") || (word[r]== "i")
|| (word[r]== "j") || (word[r]== "k") || (word[r]== "l")
|| (word[r]== "m") || (word[r]== "n") || (word[r]== "o")
|| (word[r]== "p") || (word[r]== "q") || (word[r]== "r")
|| (word[r]== "s") || (word[r]== "t") || (word[r]== "u")
|| (word[r]== "v") || (word[r]== "w") || (word[r]== "x")
|| (word[r]== "y" )|| (word[r]== "z")){
if (center == true) {
translate([0,-h/2,0]){
scale([.125h,.125h,t]){
translate([ (-len(word)5.5space/2) + (r5.5space),0,0])
linear_extrude(height=1,convexity=10,center=true){
import(file = font,layer=str(word[r],"_"));
}
I would like to point out that identifiers like “__CP_CSG2_TRIANGLE_H
” and “__cp_ring_replace
” do not fit to the expected naming convention of the C language standard.
Would you like to adjust your selection for unique names?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.