<InPhase>
Now they just need to make those Z80s actually functional. Perhaps set them to run a very small LLM generating magic spells.
LordOfBikes has quit [Ping timeout: 246 seconds]
LordOfBikes has joined #openscad
mmu_man has quit [Ping timeout: 276 seconds]
SANSd20 has joined #openscad
<SANSd20>
hey all. I am just starting with OpenSCAD and have shape that I am wanting to add an Chamfer to the inner edge. Could someone point me to where I can get that info?
<peeps>
oh did solstice happen? it was like 70F today lol
epony has quit [Remote host closed the connection]
epony has joined #openscad
<teepee>
SANSd20: what kind of shape is it? adding chamfers to a finished design is sometimes not that easy
<SANSd20>
translate([17.5,17.5,0])
<SANSd20>
linear_extrude(height = 13.75) {
<SANSd20>
difference() {
<SANSd20>
square(35, center = true); //Outer size
<SANSd20>
square(27, center = true); //Inner size
<SANSd20>
}
<SANSd20>
}
<SANSd20>
or is there a better way to do this?
<teepee>
that's actually perfect :)
<teepee>
try this infront of the square for the cutout:
<teepee>
offset(3) offset(-3)
<teepee>
of course you can also just use the offset(3) and change the 27 to 21
<SANSd20>
ok, so what i want, is the chamfer along the top of the cutout
<teepee>
and for some higher resolution: $fa = 2; $fs = 0.5;
<teepee>
for more complicated stuff, it might be easier to just use a library providing objects with chamfers
<teepee>
it first shows the conversion correctly but somehow it then switches the F box to random other numbers
<teepee>
probably confused by the , vs. . ?
<peeps>
wow, that's nuts
<teepee>
yep, it's showing german decimal "," putting cursor into that field and somewhere else makes it convert 21111 to F
<teepee>
considering that's the state of one of the richest companies, I'm very worried about all that AI talk :/
<SANSd20>
ok, so if i want the chamfer to edge to be 2mm from the outside edge...
<teepee>
you can just make the extrude larger than the 3 units now and adjust the scale
<teepee>
so lets say the initial square is 25 and the final one would be 37
<teepee>
linear_extrude(6, scale = 37/25) square(25, center = true);
<teepee>
how much it's cutting then only depends on how high you place it
<SANSd20>
i guess i am not understanding how scale and linear_extrued interact
<peeps>
the bottom of linear extrude is the original shape, the top is after the scale value is applied
* t4nk_fn
is secretly lurking from the bushes
<t4nk_fn>
.. oops ;)
<SANSd20>
ok... I think i get it...
<SANSd20>
I think
<SANSd20>
linear_extrude(2.5, scale = 33/25) square(25, center = true)
<SANSd20>
is what i want...
<peeps>
the height of the extrude should correspond with (numerator - denominator)/2 in order to get 45 degree angle
teepee_ has joined #openscad
<peeps>
or inversely: define the numerator in terms the square's dimension + 2 * extrude height
teepee has quit [Ping timeout: 240 seconds]
teepee_ is now known as teepee
<SANSd20>
only if it could actually import an STL and not link to it...
<t4nk_fn>
it's really nice man, I never used any of this stuff like this.. just got by being more 'primitive' ;)
<SANSd20>
ok, so here is what i have...
<SANSd20>
Width = 4;//[1:20]
<SANSd20>
Height = 4;//[1:20]
<SANSd20>
makeLoops(Width);
<SANSd20>
module makeLoops(Width) {
<SANSd20>
for(i=[0:Width]) {
<SANSd20>
translate([(35) * i, 0, 0])
<SANSd20>
makeLoop();
<SANSd20>
}
<SANSd20>
}
<SANSd20>
module makeLoop() {
<SANSd20>
difference(){
<SANSd20>
translate([17.5,17.5,6.5])
<SANSd20>
difference(){
<SANSd20>
cube([35,35,13.754], center=true);
<SANSd20>
cube([27,27,13.76], center=true);
<SANSd20>
}
<SANSd20>
translate([17.5,017.5,11.754])
<SANSd20>
linear_extrude(9, scale = 1.732) square(27, center = true);
<SANSd20>
so I have it repeating n in x, how do i get all of that to repeat in the y?
<SANSd20>
so a times in x, now i need to get it to repeat b times in y
<peeps>
SANSd20: like this? for(i=[0:Width-1], j=[0:Height-1]) { translate([(35) * i, (35) * j, 0]) makeLoop(); }
<SANSd20>
Yes! thank you so much!
<peeps>
you makin waffles? :P
<SANSd20>
lol, nah
foul_owl has quit [Ping timeout: 245 seconds]
<SANSd20>
its for a tile system for RPGs called Dungeon Blocks. they only have a 3*3, and well, I want to custom sizes.
foul_owl has joined #openscad
<peeps>
ah, tabletop games?
<peeps>
SANSd20: btw, for future reference its best to use a pastebin service (e.g. https://bpa.st/ ) if you are sharing more than a couple lines of code over IRC
<SANSd20>
thanks, I think the last time I was on IRC was like 6 years ago...
guso78k has joined #openscad
SANSd20 has quit [Quit: Client closed]
JakeSays_ is now known as JakeSays
misterfish has joined #openscad
hyperair has quit [Ping timeout: 256 seconds]
hyperair has joined #openscad
misterfish has quit [Ping timeout: 252 seconds]
hyperair has quit [Ping timeout: 268 seconds]
hyperair has joined #openscad
misterfish has joined #openscad
misterfish has quit [Ping timeout: 276 seconds]
epony has quit [Remote host closed the connection]
arebil has joined #openscad
<pca006132>
my current bytecode implementation should be in the right direction, with manually written bytecode (haven't implemented the translation yet), I can things like tail recursive functions running about 10x faster than openscad, 25% slower than V8 without JIT (because enabling JIT will automatically optimize away the simple code)
<guso78k>
pca006132 maybe your bytecode interpreter and the python language can interface to a common socket ?
<guso78k>
this preview F5 preview feature with the goldfeather algorithm is saves you lots of rendering time during model creation. you dont want to miss that!
<pca006132>
no, the interpreter is completely separated from other parts of openscad
<pca006132>
preview should be split into something like a geometry library
<pca006132>
currently I don't think about how to interface with existing code in openscad... if the abstraction is good enough it should not be too hard
<pca006132>
and integrating it back to openscad is a long term goal, I am not in a hurry about that :)
<cbmuser>
teepee: ping, chat please ;-)
arebil has quit [Quit: arebil]
pca006132 has quit [Remote host closed the connection]
<pca006132>
wondering if we should just remove the uni-build-dependencies.sh as it is basically impossible to maintain...
<pca006132>
nix is a package manager that is supported across linux and mac, its flake is deterministic and reproducible, I wonder if we should move to having a build script for that
<pca006132>
I can help with that, I use nix regularly
guso78k has joined #openscad
califax has quit [Remote host closed the connection]
califax has joined #openscad
J24k50 has quit [Quit: Client closed]
J24k50 has joined #openscad
arebil has joined #openscad
L29Ah has quit [Ping timeout: 260 seconds]
oldlaptop has quit [Remote host closed the connection]
arebil has quit [Ping timeout: 256 seconds]
teepee_ has joined #openscad
teepee has quit [Ping timeout: 240 seconds]
teepee_ is now known as teepee
misterfish has joined #openscad
oldlaptop has joined #openscad
L29Ah has joined #openscad
oldlaptop has quit [Remote host closed the connection]
misterfish has quit [Ping timeout: 240 seconds]
epony has quit [Remote host closed the connection]
oldlaptop has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
misterfish has joined #openscad
<t4nk_fn>
I've been making some pens/pen-holders to put on my cnc, inserted into the spindle itself, works 'fine'
<t4nk_fn>
I've used some parts of a pen that screws together, but now I'd like to make that part myself. so two tubes, say, that screw into one-another
<t4nk_fn>
haven't done that much, and I'm wondering what the best way would be to make them fit together, and what kind of thread to use.. I'm looking at that BOSL2 library for inspiration
<t4nk_fn>
and there's e.g. something like this: npt_threaded_rod(size=3/4, hollow=true, $fn=96);
<t4nk_fn>
and then use npt_threaded_rod(size=3/4, $fn=96, internal=true, $slop=0.1, anchor=TOP); to create the other part
<t4nk_fn>
(nono, it's gonna be printed of course)
<t4nk_fn>
https://dpaste.com/6HTQSWQZS I was looking at this for example, but the receiving part is based on a cuboid.. when I try to change that to some other form I get
<t4nk_fn>
assert($parent_geom != undef, "No object to position relative to.");
<t4nk_fn>
and I don't really understand what does that
<teepee>
I have not used that threading stuff, the library from InPhase makes it so easy to get threads that are trivially printed