|
In lugnet.cad.dat.parts, Steve Bliss wrote:
|
In lugnet.cad.dat.parts, Niels Karsdorp wrote:
|
Wedge part 45407 (Wedge 4 x 4 with 1 x 4 Side Plates) has similar sloped
sides as wedge parts 43720 and 43721 . When I examined
these parts in LDView, I noticed that the control points for the conditional
lines on the sloped surface might be wrong:
|
I dont think its the control points. I took a quick look at the file,
actually just one of the lines, the first in the file. The control points
used are the two unattached vertices from the triangles adjacent to the
conditional edge. That should be exactly right.
It might be more the way the sloped surface is designed. These two images
show how the conditional lines are sometimes half-needed:
I suspect that LDraw cannot outline this surface exactly correctly -- but I
havent thought it through yet; I could be wrong.
A finer-grained surface, with more polygons, would work better. But would
still have the problem of half-needed conditional lines.
|
Im not sure about that. The surface as its written is extremely
lumpy, and the conditional lines work as expected given the lumps
in the surface. You also get an ugly shading effect with flat
shading because of those lumps.
Theres gotta be a way to cut the polys through the middle of the
saddle and eliminate the problem. It looks like it might involve
a ring (or torus) primative?
|
|
Before I want to upload part 45407, I want to be sure how to create correct
conditional lines for such sloped surfaces.
|
Yes, this should be cleared up.
Steve
|
|
|
|
In lugnet.cad.dat.parts, Don Heyse wrote:
|
In lugnet.cad.dat.parts, Steve Bliss wrote:
|
In lugnet.cad.dat.parts, Niels Karsdorp wrote:
|
Wedge part 45407 (Wedge 4 x 4 with 1 x 4 Side Plates) has similar
sloped sides as wedge parts 43720 and 43721 . When I
examined these parts in LDView, I noticed that the control points for the
conditional lines on the sloped surface might be wrong:
|
I dont think its the control points. I took a quick look at the file,
actually just one of the lines, the first in the file. The control points
used are the two unattached vertices from the triangles adjacent to the
conditional edge. That should be exactly right.
It might be more the way the sloped surface is designed. These two images
show how the conditional lines are sometimes half-needed:
I suspect that LDraw cannot outline this surface exactly correctly -- but I
havent thought it through yet; I could be wrong.
A finer-grained surface, with more polygons, would work better. But would
still have the problem of half-needed conditional lines.
|
Im not sure about that. The surface as its written is extremely
lumpy, and the conditional lines work as expected given the lumps
in the surface. You also get an ugly shading effect with flat
shading because of those lumps.
Theres gotta be a way to cut the polys through the middle of the
saddle and eliminate the problem. It looks like it might involve
a ring (or torus) primative?
|
Well, I thought about this, and what I would try is changing the polygons thus:
If the top points are A1-5 and the bottom points are B1-5, keep the A2-B1, A3-B2
as currently, but instead of A2-B2 etc, use A3-B1, A4-B2, etc. I think that
would make all the edges inside curves instead of outside, and eliminate the
need for conditionals. But Im not sure. And I dunno if it would look right.
ROSCO
|
|
|
In lugnet.cad.dat.parts, Ross Crawford wrote:
|
In lugnet.cad.dat.parts, Don Heyse wrote:
|
Im not sure about that. The surface as its written is extremely
lumpy, and the conditional lines work as expected given the lumps
in the surface. You also get an ugly shading effect with flat
shading because of those lumps.
Theres gotta be a way to cut the polys through the middle of the
saddle and eliminate the problem. It looks like it might involve
a ring (or torus) primative?
|
Well, I thought about this, and what I would try is changing the polygons
thus:
If the top points are A1-5 and the bottom points are B1-5, keep the A2-B1,
A3-B2 as currently, but instead of A2-B2 etc, use A3-B1, A4-B2, etc. I think
that would make all the edges inside curves instead of outside, and eliminate
the need for conditionals. But Im not sure. And I dunno if it would look
right.
|
OK, I tried it and realise now that it doesnt solve the problem at all, just
moves the outside curves to a different spot. I think Don is right, a more
complex torus-like curve is necessary to represent it properly.
ROSCO
|
|
|
In lugnet.cad.dat.parts, Ross Crawford wrote:
|
|
If the top points are A1-5 and the bottom points are B1-5, keep the A2-B1,
A3-B2 as currently, but instead of A2-B2 etc, use A3-B1, A4-B2, etc. I think
that would make all the edges inside curves instead of outside, and
eliminate the need for conditionals. But Im not sure. And I dunno if it
would look right.
|
OK, I tried it and realise now that it doesnt solve the problem at all, just
moves the outside curves to a different spot. I think Don is right, a more
complex torus-like curve is necessary to represent it properly.
|
Im pretty sure thats going to be the problem with *any* partition of this
surface into polygons. Having a mathematical description of the surface would
be good, because then we could potentially create a primitive for the surface,
and rendering programs could substitute a smooth-curve construct for the
primitive.
In the LDraw code, I believe the appropriate fix will be to replace the current
coarse mesh with a mesh thats fine enough so that the potential error (ie, the
distance from the ideal brick surface to the LDraw conditional edge) is less
than 1 pixel (at reasonable magnifications). Im not sure how fine such a mesh
will be, we might have to settle for coming within a couple of pixels...
Steve
|
|
|
In lugnet.cad.dat.parts, Steve Bliss wrote:
|
In lugnet.cad.dat.parts, Ross Crawford wrote:
|
|
If the top points are A1-5 and the bottom points are B1-5, keep
the A2-B1, A3-B2 as currently, but instead of A2-B2 etc, use
A3-B1, A4-B2, etc. I think that would make all the edges inside
curves instead of outside, and eliminate the need for
conditionals. But Im not sure. And I dunno if it would look
right.
|
OK, I tried it and realise now that it doesnt solve the problem at
all, just moves the outside curves to a different spot. I think Don
is right, a more complex torus-like curve is necessary to represent
it properly.
|
Im pretty sure thats going to be the problem with *any* partition
of this surface into polygons. Having a mathematical description of
the surface would be good, because then we could potentially create
a primitive for the surface, and rendering programs could substitute
a smooth-curve construct for the primitive.
In the LDraw code, I believe the appropriate fix will be to replace
the current coarse mesh with a mesh thats fine enough so that the
potential error (ie, the distance from the ideal brick surface to
the LDraw conditional edge) is less than 1 pixel (at reasonable
magnifications). Im not sure how fine such a mesh will be, we
might have to settle for coming within a couple of pixels...
|
Oh, I dont know about that 1 pixel business. The problem with the
surface as its currently written, is that it flip-flops between
convex and concave every at every triangle. But if you ignore the
triangles and spin the surface around a bit, it really looks like
an inner torus surface oriented diagonally. We know how to do that
without making a lumpy mess of it. The challenge is in getting
a diamond shaped slice of torus instead of a rectangular slice.
Enjoy,
Don
|
|
|
In lugnet.cad.dat.parts, Don Heyse wrote:
|
Oh, I dont know about that 1 pixel business. The problem with the
surface as its currently written, is that it flip-flops between
convex and concave every at every triangle. But if you ignore the
triangles and spin the surface around a bit, it really looks like
an inner torus surface oriented diagonally. We know how to do that
without making a lumpy mess of it. The challenge is in getting
a diamond shaped slice of torus instead of a rectangular slice.
|
I think the key difference is the twisted nature of this surface. I think the
twist makes it impossible to partition the surface into polygons without having
a mix of convex and concave seams. Id like to be proven wrong.
I dont have one of the pieces handy, Ill have to look at some tonight, at
home.
Steve
|
|
|
In lugnet.cad.dat.parts, Steve Bliss wrote:
> I'm pretty sure that's going to be the problem with *any* partition of this
> surface into polygons. Having a mathematical description of the surface would
> be good, because then we could potentially create a primitive for the surface,
> and rendering programs could substitute a smooth-curve construct for the
> primitive.
I have made a 43720.inc for the test of the coming L3PPARTS.
The mathematical description of the surface is:
80x + 40y + yz = 0
and I have used the POV primitive quadric:
quadric {
<0,0,0>, <0,0,1>, <80,40,0>, 0
clipped_by { box { <-20,0,-40>, <0,20,40> } }
}
/Lars
|
|
|
In lugnet.cad.dat.parts, Lars C. Hassing wrote:
> In lugnet.cad.dat.parts, Steve Bliss wrote:
> > I'm pretty sure that's going to be the problem with *any* partition of this
> > surface into polygons. Having a mathematical description of the surface would
> > be good, because then we could potentially create a primitive for the surface,
> > and rendering programs could substitute a smooth-curve construct for the
> > primitive.
>
> I have made a 43720.inc for the test of the coming L3PPARTS.
> The mathematical description of the surface is:
> 80x + 40y + yz = 0
> and I have used the POV primitive quadric:
> quadric {
> <0,0,0>, <0,0,1>, <80,40,0>, 0
> clipped_by { box { <-20,0,-40>, <0,20,40> } }
> }
Looks good.
Should we create a new primitive with the next dimensions:?
2 24 0 0 1 0 1 1
2 24 1 0 -1 0 1 -1
2 24 0 0 1 1 0 -1
2 24 0 1 1 0 1 -1
and a POV-quadric version in the coming L3PPARTS.
As the outer twisted surface of the parts with this shape are
pretty the same size, the inner surface differs among these parts
(in 43720/43721 the inner surface has a z-size of 72,
in 45407 the inner suface has a z-size of 76).
With a general primitive it can be stretched to any dimension.
Niels Karsdorp
|
|
|
In lugnet.cad.dat.parts, Niels Karsdorp wrote:
> In lugnet.cad.dat.parts, Lars C. Hassing wrote:
> > In lugnet.cad.dat.parts, Steve Bliss wrote:
> > > I'm pretty sure that's going to be the problem with *any* partition
> > > of this surface into polygons. Having a mathematical description
> > > of the surface would be good, because then we could potentially
> > > create a primitive for the surface, and rendering programs could
> > > substitute a smooth-curve construct for the primitive.
> >
> > I have made a 43720.inc for the test of the coming L3PPARTS.
> > The mathematical description of the surface is:
> > 80x + 40y + yz = 0
> > and I have used the POV primitive quadric:
> > quadric {
> > <0,0,0>, <0,0,1>, <80,40,0>, 0
> > clipped_by { box { <-20,0,-40>, <0,20,40> } }
> > }
>
> Looks good.
> Should we create a new primitive with the next dimensions:?
> 2 24 0 0 1 0 1 1
> 2 24 1 0 -1 0 1 -1
> 2 24 0 0 1 1 0 -1
> 2 24 0 1 1 0 1 -1
> and a POV-quadric version in the coming L3PPARTS.
>
> As the outer twisted surface of the parts with this shape are
> pretty the same size, the inner surface differs among these parts
> (in 43720/43721 the inner surface has a z-size of 72,
> in 45407 the inner suface has a z-size of 76).
> With a general primitive it can be stretched to any dimension.
Nice, I like the idea of the quadric primitive, but we want to
add some curvature to the LDRAW version, right? I fiddled a bit
with the part a few days ago, starting with the two triangles
outlined by your primitive. I didn't exactly finish, but I think
if you take this and make a surface that follows the green X and
also follows the red stripes, you end up with something pretty
decent where the optional lines work.
Don
0 Wedge 4 x 2 Sloped Left
0 Name: 43721.dat
0 Author: Donald Sutter
0 LDRAW_ORG Part UPDATE 2004-04
0 Unofficial hack for testing purposes.
0
1 16 -10 0 30 0 0 1 0 1 0 -1 0 0 stud.dat
1 16 -10 0 10 0 0 1 0 1 0 -1 0 0 stud.dat
1 16 -10 0 -10 0 0 1 0 1 0 -1 0 0 stud.dat
1 16 -10 0 -30 0 0 1 0 1 0 -1 0 0 stud.dat
0
2 4 5 20 -20 0 0 -20
2 4 10 20 0 0 0 0
2 4 15 20 20 0 0 20
0
2 2 0 20 -40 3.75 15 -20
2 2 3.75 15 -20 5 10 0
2 2 5 10 0 3.75 5 20
2 2 3.75 5 20 0 0 40
0
2 2 0 0 -40 1.25 5 -20
2 2 1.25 5 -20 5 10 0
2 2 5 10 0 11.25 15 20
2 2 11.25 15 20 20 20 40
0
3 46 0 0 -40 0 20 -40 3.75 15 -20
3 46 0 0 -40 3.75 15 -20 5 10 0
3 46 0 0 -40 5 10 0 3.75 5 20
3 46 0 0 -40 3.75 5 20 0 0 40
0
3 45 20 20 40 0 20 -40 3.75 15 -20
3 45 20 20 40 3.75 15 -20 5 10 0
3 45 20 20 40 5 10 0 3.75 5 20
3 45 20 20 40 3.75 5 20 0 0 40
0
1 16 0 0 0 -1 0 0 0 1 0 0 0 1 s\43720s01.dat
0
|
|
|
In lugnet.cad.dat.parts, Don Heyse wrote:
> Nice, I like the idea of the quadric primitive, but we want to
> add some curvature to the LDRAW version, right? I fiddled a bit
> with the part a few days ago, starting with the two triangles
> outlined by your primitive. I didn't exactly finish, but I think
> if you take this and make a surface that follows the green X and
> also follows the red stripes, you end up with something pretty
> decent where the optional lines work.
>
> Don
>
>
>
>
> 0 Wedge 4 x 2 Sloped Left
> 0 Name: 43721.dat
> 0 Author: Donald Sutter
> 0 LDRAW_ORG Part UPDATE 2004-04
> 0 Unofficial hack for testing purposes.
> 0
> 1 16 -10 0 30 0 0 1 0 1 0 -1 0 0 stud.dat
> 1 16 -10 0 10 0 0 1 0 1 0 -1 0 0 stud.dat
> 1 16 -10 0 -10 0 0 1 0 1 0 -1 0 0 stud.dat
> 1 16 -10 0 -30 0 0 1 0 1 0 -1 0 0 stud.dat
> 0
> 2 4 5 20 -20 0 0 -20
> 2 4 10 20 0 0 0 0
> 2 4 15 20 20 0 0 20
> 0
> 2 2 0 20 -40 3.75 15 -20
> 2 2 3.75 15 -20 5 10 0
> 2 2 5 10 0 3.75 5 20
> 2 2 3.75 5 20 0 0 40
> 0
> 2 2 0 0 -40 1.25 5 -20
> 2 2 1.25 5 -20 5 10 0
> 2 2 5 10 0 11.25 15 20
> 2 2 11.25 15 20 20 20 40
> 0
> 3 46 0 0 -40 0 20 -40 3.75 15 -20
> 3 46 0 0 -40 3.75 15 -20 5 10 0
> 3 46 0 0 -40 5 10 0 3.75 5 20
> 3 46 0 0 -40 3.75 5 20 0 0 40
> 0
> 3 45 20 20 40 0 20 -40 3.75 15 -20
> 3 45 20 20 40 3.75 15 -20 5 10 0
> 3 45 20 20 40 5 10 0 3.75 5 20
> 3 45 20 20 40 3.75 5 20 0 0 40
> 0
> 1 16 0 0 0 -1 0 0 0 1 0 0 0 1 s\43720s01.dat
> 0
The following are the appropriate conditionals for Don's surface. Playing with
it you can have angles where the conditionals seem to go too far, but it's
certainly much better than the current ones.
(Note that the last 4 conditionals are only there to keep the surface smooth in
LDView. I'm not sure if that's appropriate or not, but it looks a whole lot
better in LDView with them present. It looks positively wretched without
them.)
0
5 24 0 0 -40 3.75 15 -20 0 20 -40 5 10 0
5 24 0 0 -40 5 10 0 3.75 15 -20 3.75 5 20
5 24 0 0 -40 3.75 5 20 5 10 0 0 0 40
0
5 24 20 20 40 3.75 15 -20 0 20 -40 5 10 0
5 24 20 20 40 5 10 0 3.75 15 -20 3.75 5 20
5 24 20 20 40 3.75 5 20 5 10 0 0 0 40
0
5 24 0 20 -40 3.75 15 -20 0 0 -40 20 20 40
5 24 3.75 15 -20 5 10 0 0 0 -40 20 20 40
5 24 5 10 0 3.75 5 20 0 0 -40 20 20 40
5 24 3.75 5 20 0 0 40 0 0 -40 20 20 40
0
|
|
|
In lugnet.cad.dat.parts, Travis Cobbs wrote:
> In lugnet.cad.dat.parts, Don Heyse wrote:
> > Nice, I like the idea of the quadric primitive, but we want to
> > add some curvature to the LDRAW version, right? I fiddled a bit
> > with the part a few days ago, starting with the two triangles
> > outlined by your primitive. I didn't exactly finish, but I think
> > if you take this and make a surface that follows the green X and
> > also follows the red stripes, you end up with something pretty
> > decent where the optional lines work.
>
> The following are the appropriate conditionals for Don's surface.
> Playing with it you can have angles where the conditionals seem to
> go too far, but it's certainly much better than the current ones.
Hey, thanks testing it out. You're right about the conditionals
zig-zagging a bit. I still have the feeling that if the surface
were pinned down to the concave green line those zig-zags would
go away. But I couldn't decide whether to divvy it up with cuts
sorta parallel to the convex green line (like the torus primitives)
or with another fan outta one (or two) of the other corners. I
was kinda hoping that maybe with your superior math intuition, you'd
just know the right answer... ;^)
> (Note that the last 4 conditionals are only there to keep the surface
> smooth in LDView. I'm not sure if that's appropriate or not, but it
> looks a whole lot better in LDView with them present. It looks
> positively wretched without them.)
I'd keep 'em for now. But maybe this weekend I'll try and scale it
down to the 1x1x1 primitive size and pin the surfaces down to that
concave curve. Then it'll need a whole new set of conditionals.
Don
|
|
|
In lugnet.cad.dat.parts, Niels Karsdorp wrote:
> In lugnet.cad.dat.parts, Lars C. Hassing wrote:
>
> > In lugnet.cad.dat.parts, Steve Bliss wrote:
> >
> > > I'm pretty sure that's going to be the problem with *any* partition of this
> > > surface into polygons. Having a mathematical description of the surface would
> > > be good, because then we could potentially create a primitive for the surface,
> > > and rendering programs could substitute a smooth-curve construct for the
> > > primitive.
> >
> > I have made a 43720.inc for the test of the coming L3PPARTS.
> > The mathematical description of the surface is:
> > 80x + 40y + yz = 0
> > and I have used the POV primitive quadric:
> > quadric {
> > <0,0,0>, <0,0,1>, <80,40,0>, 0
> > clipped_by { box { <-20,0,-40>, <0,20,40> } }
> > }
>
>
> Looks good.
> Should we create a new primitive with the next dimensions:?
> 2 24 0 0 1 0 1 1
> 2 24 1 0 -1 0 1 -1
> 2 24 0 0 1 1 0 -1
> 2 24 0 1 1 0 1 -1
> and a POV-quadric version in the coming L3PPARTS.
>
> As the outer twisted surface of the parts with this shape are
> pretty the same size, the inner surface differs among these parts
> (in 43720/43721 the inner surface has a z-size of 72,
> in 45407 the inner suface has a z-size of 76).
> With a general primitive it can be stretched to any dimension.
Good idea with a twist primitive (twist.dat ?).
Perhaps it would be simpler if it were only in one octant:
2 24 0 0 0 0 0 1
2 24 0 0 1 1 1 1
2 24 1 1 1 0 1 0
2 24 0 1 0 0 0 0
POV code would be:
//x - yz = 0
quadric {
<0,0,0>, <0,0,-1>, <1,0,0>, 0
clipped_by { box { <0,0,0>, <1,1,1> } }
}
/Lars
|
|
|
In lugnet.cad.dat.parts, Lars C. Hassing wrote:
> > > I have made a 43720.inc for the test of the coming L3PPARTS.
> > > The mathematical description of the surface is:
> > > 80x + 40y + yz = 0
> > > and I have used the POV primitive quadric:
> > > quadric {
> > > <0,0,0>, <0,0,1>, <80,40,0>, 0
> > > clipped_by { box { <-20,0,-40>, <0,20,40> } }
> > > }
> >
> >
> > Looks good.
> > Should we create a new primitive with the next dimensions:?
> > 2 24 0 0 1 0 1 1
> > 2 24 1 0 -1 0 1 -1
> > 2 24 0 0 1 1 0 -1
> > 2 24 0 1 1 0 1 -1
> > and a POV-quadric version in the coming L3PPARTS.
> >
> > As the outer twisted surface of the parts with this shape are
> > pretty the same size, the inner surface differs among these parts
> > (in 43720/43721 the inner surface has a z-size of 72,
> > in 45407 the inner suface has a z-size of 76).
> > With a general primitive it can be stretched to any dimension.
>
> Good idea with a twist primitive (twist.dat ?).
> Perhaps it would be simpler if it were only in one octant:
> 2 24 0 0 0 0 0 1
> 2 24 0 0 1 1 1 1
> 2 24 1 1 1 0 1 0
> 2 24 0 1 0 0 0 0
> POV code would be:
> //x - yz = 0
> quadric {
> <0,0,0>, <0,0,-1>, <1,0,0>, 0
> clipped_by { box { <0,0,0>, <1,1,1> } }
> }
> /Lars
Ok so it's been a few years, but I took another look at this.
Did anybody ever make a twist primitive? It appears like all
you need to do is something like this.
Don
0 Wedge 4 x 2 Sloped Left
0 Name: 43721.dat
0 Author: Donald Sutter
0 LDRAW_ORG Part UPDATE 2004-04
0 Unofficial hack for testing purposes.
0
1 16 0 0 0 -1 0 0 0 1 0 0 0 1 s\43720s01.dat
0
1 16 -10 0 30 0 0 1 0 1 0 -1 0 0 stud.dat
1 16 -10 0 10 0 0 1 0 1 0 -1 0 0 stud.dat
1 16 -10 0 -10 0 0 1 0 1 0 -1 0 0 stud.dat
1 16 -10 0 -30 0 0 1 0 1 0 -1 0 0 stud.dat
0
0 // Begin 4 quadrant twist patch.
0 // Is each quadrant actually the same part?
0 // Scale down to 1x1 for reuse in other parts.
0 // Can break each quadrant into 4 parts for
0 // an even finer mesh.
3 16 11.25 15 20 5 10 0 10 20 0
3 16 11.25 15 20 10 20 0 20 20 40
3 16 11.25 15 20 20 20 40 10 10 40
3 16 11.25 15 20 10 10 40 5 10 0
0
3 16 3.75 5 20 0 0 0 5 10 0
3 16 3.75 5 20 5 10 0 10 10 40
3 16 3.75 5 20 10 10 40 0 0 40
3 16 3.75 5 20 0 0 40 0 0 0
0
3 16 1.25 5 -20 0 0 -40 0 10 -40
3 16 1.25 5 -20 0 10 -40 5 10 0
3 16 1.25 5 -20 5 10 0 0 0 0
3 16 1.25 5 -20 0 0 0 0 0 -40
0
3 16 3.75 15 -20 0 10 -40 0 20 -40
3 16 3.75 15 -20 0 20 -40 10 20 0
3 16 3.75 15 -20 10 20 0 5 10 0
3 16 3.75 15 -20 5 10 0 0 10 -40
0 // End 4 quadrant twist patch.
0
|
|
|
|
Ok so its been a few years, but I took another look at this.
Did anybody ever make a twist primitive? It appears like all
you need to do is something like this.
|
Very interesting!
I am not so much comvinced by the improvement for flat shading. Looks like we
trade triangular artefacts in one direction with artefacts in the other one.
But it drastically improves the very ugly condlines artefacts!
Not sure there are so many parts that would benefit from this rectangular
twisted primitive (apart from those mentionned in this thread), but its worth
creating it nonetheless. Don, would you submit it to PT?
Philo
PS: Attached your code with triangles merged to quads (removes LDView artifacts
in smooth shading) and condlines added. (I hope that ftx only messes up code in
preview...)
0 // Begin 4 quadrant twist patch.
0 // Is each quadrant actually the same part?
0 // Scale down to 1x1 for reuse in other parts.
0 // Can break each quadrant into 4 parts for
0 // an even finer mesh.
4 16 10 20 0 11.25 15 20 5 10 0 3.75 15 -20
3 16 11.25 15 20 10 20 0 20 20 40
3 16 11.25 15 20 20 20 40 10 10 40
4 16 5 10 0 11.25 15 20 10 10 40 3.75 5 20
0
4 16 5 10 0 3.75 5 20 0 0 0 1.25 5 -20
3 16 3.75 5 20 10 10 40 0 0 40
3 16 3.75 5 20 0 0 40 0 0 0
0
3 16 1.25 5 -20 0 0 -40 0 10 -40
4 16 5 10 0 1.25 5 -20 0 10 -40 3.75 15 -20
3 16 1.25 5 -20 0 0 0 0 0 -40
0
3 16 3.75 15 -20 0 10 -40 0 20 -40
3 16 3.75 15 -20 0 20 -40 10 20 0
0 // End 4 quadrant twist patch.
0
0 // Added lines/Condlines
5 24 11.25 15 20 5 10 0 10 20 0 10 10 40
5 24 10 20 0 11.25 15 20 5 10 0 20 20 40
5 24 20 20 40 11.25 15 20 10 20 0 10 10 40
5 24 10 10 40 11.25 15 20 20 20 40 5 10 0
5 24 3.75 5 20 0 0 0 5 10 0 0 0 40
5 24 5 10 0 3.75 5 20 0 0 0 10 10 40
5 24 10 10 40 3.75 5 20 5 10 0 0 0 40
5 24 0 0 40 3.75 5 20 10 10 40 0 0 0
5 24 1.25 5 -20 0 0 -40 0 10 -40 0 0 0
5 24 0 10 -40 1.25 5 -20 0 0 -40 5 10 0
5 24 5 10 0 1.25 5 -20 0 10 -40 0 0 0
5 24 0 0 0 1.25 5 -20 5 10 0 0 0 -40
5 24 3.75 15 -20 0 10 -40 0 20 -40 5 10 0
5 24 0 20 -40 3.75 15 -20 0 10 -40 10 20 0
5 24 10 20 0 3.75 15 -20 0 20 -40 5 10 0
5 24 5 10 0 3.75 15 -20 10 20 0 0 10 -40
|
|
|
In lugnet.cad.dat.parts, Philippe Hurbain wrote:
|
PS: Attached your code with triangles merged to quads (removes LDView
artifacts in smooth shading) and condlines added. (I hope that ftx only
messes up code in preview...)
|
Unfortunately it messes up unless you inlude FTX line breaks, or fixed code box
characters (pipe). Unfortunately, both make it harder for people using email or
newsreaders, so probably best to do it as you did, browsers can just click View
Raw Message to get the nicely formatted version.
(Hmmm I thought there was a FTX group woulda set FUT there)
ROSCO
0 // Begin 4 quadrant twist patch.
0 // Is each quadrant actually the same part?
0 // Scale down to 1x1 for reuse in other parts.
0 // Can break each quadrant into 4 parts for
0 // an even finer mesh.
4 16 10 20 0 11.25 15 20 5 10 0 3.75 15 -20
3 16 11.25 15 20 10 20 0 20 20 40
3 16 11.25 15 20 20 20 40 10 10 40
4 16 5 10 0 11.25 15 20 10 10 40 3.75 5 20
0
4 16 5 10 0 3.75 5 20 0 0 0 1.25 5 -20
3 16 3.75 5 20 10 10 40 0 0 40
3 16 3.75 5 20 0 0 40 0 0 0
0
3 16 1.25 5 -20 0 0 -40 0 10 -40
4 16 5 10 0 1.25 5 -20 0 10 -40 3.75 15 -20
3 16 1.25 5 -20 0 0 0 0 0 -40
0
3 16 3.75 15 -20 0 10 -40 0 20 -40
3 16 3.75 15 -20 0 20 -40 10 20 0
0 // End 4 quadrant twist patch.
0
0 // Added lines/Condlines
5 24 11.25 15 20 5 10 0 10 20 0 10 10 40
5 24 10 20 0 11.25 15 20 5 10 0 20 20 40
5 24 20 20 40 11.25 15 20 10 20 0 10 10 40
5 24 10 10 40 11.25 15 20 20 20 40 5 10 0
5 24 3.75 5 20 0 0 0 5 10 0 0 0 40
5 24 5 10 0 3.75 5 20 0 0 0 10 10 40
5 24 10 10 40 3.75 5 20 5 10 0 0 0 40
5 24 0 0 40 3.75 5 20 10 10 40 0 0 0
5 24 1.25 5 -20 0 0 -40 0 10 -40 0 0 0
5 24 0 10 -40 1.25 5 -20 0 0 -40 5 10 0
5 24 5 10 0 1.25 5 -20 0 10 -40 0 0 0
5 24 0 0 0 1.25 5 -20 5 10 0 0 0 -40
5 24 3.75 15 -20 0 10 -40 0 20 -40 5 10 0
5 24 0 20 -40 3.75 15 -20 0 10 -40 10 20 0
5 24 10 20 0 3.75 15 -20 0 20 -40 5 10 0
5 24 5 10 0 3.75 15 -20 10 20 0 0 10 -40
|
|
|
|
|