POV-Ray : Newsgroups : povray.advanced-users : Ok, seriously, I need help here.. : Re: Ok, seriously, I need help here.. Server Time
8 Jul 2024 19:04:07 EDT (-0400)
  Re: Ok, seriously, I need help here..  
From: Patrick Elliott
Date: 4 Mar 2008 13:36:08
Message: <MPG.2237445cbaa1418798a114@news.povray.org>
In article <47ccb208$1@news.povray.org>, ele### [at] netscapenet 
says...
> Patrick Elliott nous apporta ses lumieres en ce 2008/03/03 20:20:
> > In article <47cb5fa6$1@news.povray.org>, tim### [at] comcastnet says...
> >> The center's a bit off, but this should work if
> >> you don't cut it too deep.
> >>
> >> #local A = <-1,0,0>;
> >> #local B = <1,0,0>;
> >> #local C = <0,sqrt(2),0>;
> >> #local D = <0,0,1>;
> >> #local RAD = 0.075;
> >>
> >> #declare tetra = mesh {
> >>    triangle {A,B,C}
> >>    triangle {B,C,D}
> >>    triangle {C,D,A}
> >>    triangle {D,A,B}
> >>    inside_vector (A+B+C+D)/4
> >>    translate <0,0,-RAD>
> >> }
> >>
> >> #declare octaside = union {
> >>     sphere {A,RAD}
> >>     sphere {B,RAD}
> >>     sphere {C,RAD}
> >>     cylinder {A,B,RAD}
> >>     cylinder {C,B,RAD}
> >>     cylinder {A,C,RAD}
> >>     object{tetra}
> >>     rotate <45,0,0>
> >>     translate <0,0,-1>
> >> };
> >>
> >> #declare pyramid = union {
> >>    object {octaside}
> >>    object {octaside rotate <0,90,0>}
> >>    object {octaside rotate <0,180,0>}
> >>    object {octaside rotate <0,270,0>}
> >> };
> >>
> >> #declare octagon = union {
> >>    object {pyramid}
> >>    object {pyramid rotate <180,0,0>}
> >> };
> >>
> > Strictly speaking, the last version I posted was intended to be 100% 
> > solid, with ior for crystal. The version works fine, as a solid color,
 
> > where I only plan to cut into the surface a bit to leave behind color.
 
> > I.e., when I don't need 100% of it to be solid. The problem here is, I
 
> > am not sure the result is what it *should* look like for a solid 
> > crystal. I threw together the scene rather quickly, so I don't know if
 
> > the odd streaking is a result of the shape, the simple scene, or 
> > mistakes in my merges. :(
> > 
> It contain an inner cavity. The top and bottom meshes intersect. The 4 me
shes of 
> the top never meet, creating a large cross shaped opening. If you want a
 
> transparent octaedron, you must fill that, in addition to using merge.
> 
> If you look at the way I proposed (intersection of planes), you'll see th
at 
> there are no iner opening.
> #declare SQ = sqrt(2);
> #declare Octabase =//create the base solid octaedron
> 	intersection{plane{<0,1,SQ>,1
> 		plane{<0,1,SQ>,1 }
> 		plane{<0,1,SQ>,1 }
> 		plane{<0,1,SQ>,1 }
> 		plane{<0,-1,SQ>,1}
> 		plane{<0,-1,SQ>,1 rotate<0,90,0>}
> 		plane{<0,-1,SQ>,1 rotate<0,180,0>}
> 		plane{<0,-1,SQ>,1 rotate<0,270,0>}
> 		}
> 
> #local Cut = SQ; //adjust for larger or smaller flatening of edges
> #declare CutOctaedron =
> 	intersection{
> 		object{Octabase}// each of the next 3 box cut 4 edges
> 		box{<Cut,2,Cut>,<-Cut,-2,-Cut>}
> 		box{<2,Cut,Cut>,<-2,-Cut,-Cut>rotate<45,45,0>}
> 		box{<2,Cut,Cut>,<-2,-Cut,-Cut>rotate<-45,-45,0>}
> 		box{Cut, -Cut rotate 45*y}//to cut the remaining tips
> 		//last box is optional
> 		}
> 
Was about to start looking at how to do cuts instead. Thanks. Tim also 
has one that might be interesting too. I had figured I might have gaps, 
but I sliced it open with a cross section while resizing the central 
part, so that it would overlap the fills I had already done. I guess I 
missed something some place. lol I think we can say that rounding 
"some" objects is less than trivial. lol

-- 
void main () {

    if version = "Vista" {
      call slow_by_half();
      call DRM_everything();
    }
    call functional_code();
  }
  else
    call crash_windows();
}

<A HREF='http://www.daz3d.com/index.php?refid=16130551'>Get 3D Models,
 
3D Content, and 3D Software at DAZ3D!</A>


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.