K
kenclark@ameritech.net
Mon, Jul 4, 2022 11:50 AM
I’m trying to make an insert for a planter, to reduce the size of a fill bin and make it easier to plant smaller quantities of seed. The problem is that the bin is too big, and doesn’t allow seed small amounts of smaller seed to ever be picked up by the pickup wheel. In the distant past, seeders often had a small insert that fit into the bin to reduce the space and push smaller seed better up against the pickup wheel. I’m trying to make that kind of space filling, removable insert for this seeder.
First attachment is the bin I’m trying to partially fill. Second attachment is the surface I started with to fill that, third attachment is a difference between the first surface and a second four units below it (I used two surface calls on two files, but probably could have done a difference on a translate of the original.) It makes artifacts all over the place below the bottom surface.
I’m completely new to 3D printing and OpenSCAD. I figured it would be a total pain to come up with some kind of formula that produced the shape I wanted, but surface sounded great. But then I thought I’d be wasting a whole lot of resin making it a solid cup, so what I really want is a thick-enough-to-print-but-thinner piece, and came up with the top and bottom surface, and a difference between them. Very close to what I’d want, but I’m concerned the artifacts mean I’m headed the wrong way. Suggestions?
I’m trying to make an insert for a planter, to reduce the size of a fill bin and make it easier to plant smaller quantities of seed. The problem is that the bin is too big, and doesn’t allow seed small amounts of smaller seed to ever be picked up by the pickup wheel. In the distant past, seeders often had a small insert that fit into the bin to reduce the space and push smaller seed better up against the pickup wheel. I’m trying to make that kind of space filling, removable insert for this seeder.
First attachment is the bin I’m trying to partially fill. Second attachment is the surface I started with to fill that, third attachment is a difference between the first surface and a second four units below it (I used two surface calls on two files, but probably could have done a difference on a translate of the original.) It makes artifacts all over the place below the bottom surface.
I’m completely new to 3D printing and OpenSCAD. I figured it would be a total pain to come up with some kind of formula that produced the shape I wanted, but surface sounded great. But then I thought I’d be wasting a whole lot of resin making it a solid cup, so what I really want is a thick-enough-to-print-but-thinner piece, and came up with the top and bottom surface, and a difference between them. Very close to what I’d want, but I’m concerned the artifacts mean I’m headed the wrong way. Suggestions?
T
trygve@totallytrygve.com
Mon, Jul 4, 2022 12:15 PM
You are doing a difference using a copy ofthe first object, just lowered?
Yeah, that won't work.
If you draw a cube([10,10,10])
then do a difference with another cube of the same size, just lowered, you also get artifacts.
difference()
{cube([10,10,10]);
translate([0,0,-4])
cube([10,10,10]);}
It MIGHT get sorted out in the final render, but it'll take a lot more time...
And the artifacts are where the walls of the two cubes overlaps. The renderer has issues trying to find out what is or isn't present.
To avoid this we make certain the object being used to remove something is larger than the original where it matters.
With the cube, I would have used
{cube([10,10,10]);
translate([-1,-1,-4])
cube([12,12,10]);}
Trygve
Den 4. juli 2022 kl. 13.50.23 +02.00 skrev kenclark@ameritech.net:
I’m trying to make an insert for a planter, to reduce the size of a fill bin and make it easier to plant smaller quantities of seed. The problem is that the bin is too big, and doesn’t allow seed small amounts of smaller seed to ever be picked up by the pickup wheel. In the distant past, seeders often had a small insert that fit into the bin to reduce the space and push smaller seed better up against the pickup wheel. I’m trying to make that kind of space filling, removable insert for this seeder.
First attachment is the bin I’m trying to partially fill. Second attachment is the surface I started with to fill that, third attachment is a difference between the first surface and a second four units below it (I used two surface calls on two files, but probably could have done a difference on a translate of the original.) It makes artifacts all over the place below the bottom surface.
I’m completely new to 3D printing and OpenSCAD. I figured it would be a total pain to come up with some kind of formula that produced the shape I wanted, but surface sounded great. But then I thought I’d be wasting a whole lot of resin making it a solid cup, so what I really want is a thick-enough-to-print-but-thinner piece, and came up with the top and bottom surface, and a difference between them. Very close to what I’d want, but I’m concerned the artifacts mean I’m headed the wrong way. Suggestions?
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
You are doing a difference using a copy ofthe first object, just lowered?
Yeah, that won't work.
If you draw a cube([10,10,10])
then do a difference with another cube of the same size, just lowered, you also get artifacts.
difference()
{cube([10,10,10]);
translate([0,0,-4])
cube([10,10,10]);}
It MIGHT get sorted out in the final render, but it'll take a lot more time...
And the artifacts are where the walls of the two cubes overlaps. The renderer has issues trying to find out what is or isn't present.
To avoid this we make certain the object being used to remove something is larger than the original where it matters.
With the cube, I would have used
{cube([10,10,10]);
translate([-1,-1,-4])
cube([12,12,10]);}
Trygve
Den 4. juli 2022 kl. 13.50.23 +02.00 skrev kenclark@ameritech.net:
> I’m trying to make an insert for a planter, to reduce the size of a fill bin and make it easier to plant smaller quantities of seed. The problem is that the bin is too big, and doesn’t allow seed small amounts of smaller seed to ever be picked up by the pickup wheel. In the distant past, seeders often had a small insert that fit into the bin to reduce the space and push smaller seed better up against the pickup wheel. I’m trying to make that kind of space filling, removable insert for this seeder.
> First attachment is the bin I’m trying to partially fill. Second attachment is the surface I started with to fill that, third attachment is a difference between the first surface and a second four units below it (I used two surface calls on two files, but probably could have done a difference on a translate of the original.) It makes artifacts all over the place below the bottom surface.
> I’m completely new to 3D printing and OpenSCAD. I figured it would be a total pain to come up with some kind of formula that produced the shape I wanted, but surface sounded great. But then I thought I’d be wasting a whole lot of resin making it a solid cup, so what I really want is a thick-enough-to-print-but-thinner piece, and came up with the top and bottom surface, and a difference between them. Very close to what I’d want, but I’m concerned the artifacts mean I’m headed the wrong way. Suggestions?
>
>
> _______________________________________________
> OpenSCAD mailing list
> To unsubscribe send an email to <discuss-leave@lists.openscad.org>
>
J
jon
Mon, Jul 4, 2022 12:38 PM
You could try using scale() to make the bottom part a little larger,
remembering to translate() it a tad to center it on the original object.
Jon
On 7/4/2022 8:15 AM, trygve@totallytrygve.com wrote:
You are doing a difference using a copy ofthe first object, just lowered?
Yeah, that won't work.
If you draw a cube([10,10,10])
then do a difference with another cube of the same size, just lowered,
you also get artifacts.
difference()
{cube([10,10,10]);
translate([0,0,-4])
cube([10,10,10]);}
It MIGHT get sorted out in the final render, but it'll take a lot more
time...
And the artifacts are where the walls of the two cubes overlaps. The
renderer has issues trying to find out what is or isn't present.
To avoid this we make certain the object being used to remove
something is larger than the original where it matters.
With the cube, I would have used
{cube([10,10,10]);
translate([-1,-1,-4])
cube([12,12,10]);}
Trygve
Den 4. juli 2022 kl. 13.50.23 +02.00 skrev kenclark@ameritech.net:
I’m trying to make an insert for a planter, to reduce the size of a
fill bin and make it easier to plant smaller quantities of seed. The
problem is that the bin is too big, and doesn’t allow seed small
amounts of smaller seed to ever be picked up by the pickup wheel. In
the distant past, seeders often had a small insert that fit into the
bin to reduce the space and push smaller seed better up against the
pickup wheel. I’m trying to make that kind of space filling,
removable insert for this seeder.
First attachment is the bin I’m trying to partially fill. Second
attachment is the surface I started with to fill that, third
attachment is a difference between the first surface and a second
four units below it (I used two surface calls on two files, but
probably could have done a difference on a translate of the
original.) It makes artifacts all over the place below the bottom
surface.
I’m completely new to 3D printing and OpenSCAD. I figured it would be
a total pain to come up with some kind of formula that produced the
shape I wanted, but surface sounded great. But then I thought I’d be
wasting a whole lot of resin making it a solid cup, so what I really
want is a thick-enough-to-print-but-thinner piece, and came up with
the top and bottom surface, and a difference between them. Very close
to what I’d want, but I’m concerned the artifacts mean I’m headed the
wrong way. Suggestions?
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
You could try using scale() to make the bottom part a little larger,
remembering to translate() it a tad to center it on the original object.
Jon
On 7/4/2022 8:15 AM, trygve@totallytrygve.com wrote:
> You are doing a difference using a copy ofthe first object, just lowered?
> Yeah, that won't work.
>
> If you draw a cube([10,10,10])
>
> then do a difference with another cube of the same size, just lowered,
> you also get artifacts.
>
> difference()
> {cube([10,10,10]);
> translate([0,0,-4])
> cube([10,10,10]);}
>
> It MIGHT get sorted out in the final render, but it'll take a lot more
> time...
> And the artifacts are where the walls of the two cubes overlaps. The
> renderer has issues trying to find out what is or isn't present.
>
> To avoid this we make certain the object being used to remove
> something is larger than the original where it matters.
>
> With the cube, I would have used
>
> {cube([10,10,10]);
> translate([-1,-1,-4])
> cube([12,12,10]);}
>
> Trygve
>
>
> Den 4. juli 2022 kl. 13.50.23 +02.00 skrev kenclark@ameritech.net:
>>
>> I’m trying to make an insert for a planter, to reduce the size of a
>> fill bin and make it easier to plant smaller quantities of seed. The
>> problem is that the bin is too big, and doesn’t allow seed small
>> amounts of smaller seed to ever be picked up by the pickup wheel. In
>> the distant past, seeders often had a small insert that fit into the
>> bin to reduce the space and push smaller seed better up against the
>> pickup wheel. I’m trying to make that kind of space filling,
>> removable insert for this seeder.
>>
>> First attachment is the bin I’m trying to partially fill. Second
>> attachment is the surface I started with to fill that, third
>> attachment is a difference between the first surface and a second
>> four units below it (I used two surface calls on two files, but
>> probably could have done a difference on a translate of the
>> original.) It makes artifacts all over the place below the bottom
>> surface.
>>
>> I’m completely new to 3D printing and OpenSCAD. I figured it would be
>> a total pain to come up with some kind of formula that produced the
>> shape I wanted, but surface sounded great. But then I thought I’d be
>> wasting a whole lot of resin making it a solid cup, so what I really
>> want is a thick-enough-to-print-but-thinner piece, and came up with
>> the top and bottom surface, and a difference between them. Very close
>> to what I’d want, but I’m concerned the artifacts mean I’m headed the
>> wrong way. Suggestions?
>>
>>
>> _______________________________________________
>> OpenSCAD mailing list
>> To unsubscribe send an email to discuss-leave@lists.openscad.org
>
>
> _______________________________________________
> OpenSCAD mailing list
> To unsubscribe send an email todiscuss-leave@lists.openscad.org
K
kenclark@ameritech.net
Mon, Jul 4, 2022 12:39 PM
I think that’s my problem, but a lot of what you wrote doesn’t make any sense to me. In your example, where the walls of the two cubes meet you get problems. But these are two surfaces that don’t meet anywhere. So I would make the bottom larger - where? I could see your point if they overlapped, but they don’t.
I think that’s my problem, but a lot of what you wrote doesn’t make any sense to me. In your example, where the walls of the two cubes meet you get problems. But these are two surfaces that don’t meet anywhere. So I would make the bottom larger - where? I could see your point if they overlapped, but they don’t.
K
kenclark@ameritech.net
Mon, Jul 4, 2022 1:22 PM
I think the part I was missing is that surface creates edges for you that you didn’t actually specify. So, if you make a surface of 10 x 10 with a height of 10, you’ve essentially created a 10, 10, 10 cube translated up a bit. It’s clear from what actually gets rendered, but not clear from how it gets discussed in the manual. In my example, all of the vertical edges were created by the rendering engine, even though I didn’t actually say they were there. So when I make the bottom edge, they shared all of the vertical edges, which was your point.
I think the part I was missing is that *surface* creates edges for you that you didn’t actually specify. So, if you make a surface of 10 x 10 with a height of 10, you’ve essentially created a 10, 10, 10 cube translated up a bit. It’s clear from what actually gets rendered, but not clear from how it gets discussed in the manual. In my example, all of the vertical edges were created by the rendering engine, even though I didn’t actually say they were there. So when I make the bottom edge, they shared all of the vertical edges, which was your point.
T
trygve@totallytrygve.com
Mon, Jul 4, 2022 1:23 PM
Oh, it's definitely some sort of overlap issue.
There's may be a problem with the model itself that doesn't show up intil you do the difference operation.
Could you post the code of the part?
Trygve
Den 4. juli 2022 kl. 14.39.39 +02.00 skrev kenclark@ameritech.net:
I think that’s my problem, but a lot of what you wrote doesn’t make any sense to me. In your example, where the walls of the two cubes meet you get problems. But these are two surfaces that don’t meet anywhere. So I would make the bottom larger - where? I could see your point if they overlapped, but they don’t.
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Oh, it's definitely some sort of overlap issue.
There's may be a problem with the model itself that doesn't show up intil you do the difference operation.
Could you post the code of the part?
Trygve
Den 4. juli 2022 kl. 14.39.39 +02.00 skrev kenclark@ameritech.net:
> I think that’s my problem, but a lot of what you wrote doesn’t make any sense to me. In your example, where the walls of the two cubes meet you get problems. But these are two surfaces that don’t meet anywhere. So I would make the bottom larger - where? I could see your point if they overlapped, but they don’t.
>
> _______________________________________________
> OpenSCAD mailing list
> To unsubscribe send an email to <discuss-leave@lists.openscad.org>
>
K
kenclark@ameritech.net
Mon, Jul 4, 2022 1:28 PM
Funny, but scale didn’t seem to work. I tried scale([1.1, 1.1, 0]) and seemed to completely lose my bottom edge. I got the whole thing - oh, crud. I bet I did do 1.1, 1.1, 0. That would flatten it to a flat plane at the bottom, wouldn’t it? That’s what I got. Shoot.
Well, anyway, I modified my python to make my bottom surface extend one place in the X and Y dimensions farther than my bottom, and that did the same thing. Looks much better now.
Is there a better approach though?
Funny, but scale didn’t seem to work. I tried scale(\[1.1, 1.1, 0\]) and seemed to completely lose my bottom edge. I got the whole thing - oh, crud. I bet I did do 1.1, 1.1, 0. That would flatten it to a flat plane at the bottom, wouldn’t it? That’s what I got. Shoot.
Well, anyway, I modified my python to make my bottom surface extend one place in the X and Y dimensions farther than my bottom, and that did the same thing. Looks much better now.
Is there a better approach though?
K
kenclark@ameritech.net
Mon, Jul 4, 2022 1:32 PM
Very little to the code. It’s all in the surface dat file.
//surface.scad
difference() {
surface(file = "testsurface1.dat", center = true, convexity = 5);
surface(file = "testsurface2.dat", center = true, convexity = 5);
}
“testsurface1.dat” has the base surface. “testsurface2.dat” gets generated from the first one, now with extra values to get rid of the artifacts.
Very little to the code. It’s all in the surface dat file.
//surface.scad
difference() {
surface(file = "testsurface1.dat", center = true, convexity = 5);
surface(file = "testsurface2.dat", center = true, convexity = 5);
}
“testsurface1.dat” has the base surface. “testsurface2.dat” gets generated from the first one, now with extra values to get rid of the artifacts.
T
trygve@totallytrygve.com
Mon, Jul 4, 2022 1:33 PM
Ah, yeah, the manual isn't entirely perfect.
Then you've found the problem, and probably found how to fix it, too.
(I've staid away from such commands as surface, so I'm no help there)
;-)
Trygve
Den 4. juli 2022 kl. 15.22.41 +02.00 skrev kenclark@ameritech.net:
I think the part I was missing is that surface creates edges for you that you didn’t actually specify. So, if you make a surface of 10 x 10 with a height of 10, you’ve essentially created a 10, 10, 10 cube translated up a bit. It’s clear from what actually gets rendered, but not clear from how it gets discussed in the manual. In my example, all of the vertical edges were created by the rendering engine, even though I didn’t actually say they were there. So when I make the bottom edge, they shared all of the vertical edges, which was your point.
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Ah, yeah, the manual isn't entirely perfect.
Then you've found the problem, and probably found how to fix it, too.
(I've staid away from such commands as surface, so I'm no help there)
;-)
Trygve
Den 4. juli 2022 kl. 15.22.41 +02.00 skrev kenclark@ameritech.net:
> I think the part I was missing is that surface creates edges for you that you didn’t actually specify. So, if you make a surface of 10 x 10 with a height of 10, you’ve essentially created a 10, 10, 10 cube translated up a bit. It’s clear from what actually gets rendered, but not clear from how it gets discussed in the manual. In my example, all of the vertical edges were created by the rendering engine, even though I didn’t actually say they were there. So when I make the bottom edge, they shared all of the vertical edges, which was your point.
>
> _______________________________________________
> OpenSCAD mailing list
> To unsubscribe send an email to <discuss-leave@lists.openscad.org>
>
T
trygve@totallytrygve.com
Mon, Jul 4, 2022 1:40 PM
Yes, there's a better way, now that I think about it...
I assume that the points are based off of the shape of the original hopper?
Anyway, make a second point cloud that extends '1' beyond the original both in the X and Y plane, and set each value to 'top z' value.
Run that through the surface command, and you suddenly have a shape you can use difference() with.
;-)
Trygve
Barmy ideas? that's a me!
Den 4. juli 2022 kl. 15.28.39 +02.00 skrev kenclark@ameritech.net:
Funny, but scale didn’t seem to work. I tried scale([1.1, 1.1, 0]) and seemed to completely lose my bottom edge. I got the whole thing - oh, crud. I bet I did do 1.1, 1.1, 0. That would flatten it to a flat plane at the bottom, wouldn’t it? That’s what I got. Shoot.
Well, anyway, I modified my python to make my bottom surface extend one place in the X and Y dimensions farther than my bottom, and that did the same thing. Looks much better now.
Is there a better approach though?
OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
Yes, there's a better way, now that I think about it...
I assume that the points are based off of the shape of the original hopper?
Anyway, make a second point cloud that extends '1' beyond the original both in the X and Y plane, and set each value to 'top z' value.
Run that through the surface command, and you suddenly have a shape you can use difference() with.
;-)
Trygve
Barmy ideas? that's a me!
Den 4. juli 2022 kl. 15.28.39 +02.00 skrev kenclark@ameritech.net:
> Funny, but scale didn’t seem to work. I tried scale([1.1, 1.1, 0]) and seemed to completely lose my bottom edge. I got the whole thing - oh, crud. I bet I did do 1.1, 1.1, 0. That would flatten it to a flat plane at the bottom, wouldn’t it? That’s what I got. Shoot.
> Well, anyway, I modified my python to make my bottom surface extend one place in the X and Y dimensions farther than my bottom, and that did the same thing. Looks much better now.
> Is there a better approach though?
>
> _______________________________________________
> OpenSCAD mailing list
> To unsubscribe send an email to <discuss-leave@lists.openscad.org>
>