Home
- POV-Ray Tutorial
- POV-Ray Examples
Index of Content
- Geometry
- Architecture
- House
- Roof
- Tower
- Castle
- Window + Door
- Stairs
- Pyramid
- Columns
- Archs
- Fences
- Furnitur
- Engineering
|
|
Ribbed Column
Objects: "cone"
Methods: "#macro", "#local", "difference"
The construction in details:
From a truncated cone as the raw shape of a column we subract a ring of smaller truncated cones
(With the number of the rips we wish).
The result of this difference gets a coninuous stone texture!
An include file to use this object as a read-made object you can find
at my POV-Ray Objects page.
|
The kernel of the column:
//---------------- texture -----------------
#declare Column_Kernel_Texture =
texture { T_Grnt16
normal { agate 0.35 scale 0.05}
finish { phong 0.2 }
scale 1
} // end of texture
//------------------------ dimensions --------------
#declare C_Height___ = 2.00; // column kernel height
#declare C_Base_Radius___ = 0.30; //
#declare C_Top_Radius___ = 0.30; //
//------------------------------------------------------
cone { <0,0,0>, C_Base_Radius___,
<0,C_Height___,0>, C_Top_Radius___
} // end of cone ---------------------------------- |
|
The raw truncated cone!
|
A single rip for subtracting:
//---------------- the rips dimensions --------------
#local Column_Subdivision___ = 16 // number of rips
//---------------------------------------------------
#local R_Top_R___ = // rip top radius
2*pi*C_Top_Radius___ /Column_Subdivision___*1/sqrt(2);
#local R_Base_R___= //rip base radius
2*pi*C_Base_Radius___/Column_Subdivision___*1/sqrt(2);
#local R_Top_D___ = // rip top distance
C_Top_Radius___ +Rip_Top_R___ *1/sqrt(2);
#local R_Base_D___= // rip base distance
C_Base_Radius___ +Rip_Base_R___*1/sqrt(2);
#local R_over = +Rip_Base_R___*0.1;
//----------------------- single rip ----------------
cone { <R_Base_D___,-R_over, 0>, R_Base_R___,
<R_Top_D___ ,C_Height___+R_over,0>, R_Top_R___
texture { pigment{ color rgb< 1, 1, 1>*1.2 }
} // end of texture
} // end of cone for rips ---------------- |
|
A single rip:
|
The rips arranged by a while loop:
//---------------- a ring of rips -------------------
#local Nr = 0; // start
#local EndNr = Column_Subdivision___; // end
#while (Nr< 1) // EndNr)
cone{ <R_Base_D___,-R_over, 0>,R_Base_R___,
<R_Top_D___ ,C_Height___+R_over,0>,R_Top_R___
rotate<0,Nr * 360/EndNr,0>
texture { pigment{ color rgb< 1, 1, 1>*1.2 }
} // end of texture just for testing
} // end of cone -------------------------------
#local Nr = Nr + 1; // next Nr
#end // --------------- end of loop
//--------------------------------------------------- |
|
The rips arranged by a while loop.
|
Kernel of the column minus rips:
//---------------- column kernel - rips --------------
difference{ //
cone { <0,0,0>, C_Base_Radius___,
<0,C_Height___,0>, C_Top_Radius___
} // end of cone -------------------------------
// subtractin the rips:
#local Nr = 0; // start
#local EndNr = Column_Subdivision___; // end
#while (Nr< 1) // EndNr)
cone{ <R_Base_D___,-R_over, 0>,R_Base_R___,
<R_Top_D___ ,C_Height___+R_over,0>,R_Top_R___
rotate<0,Nr * 360/EndNr,0>
} // end of cone --------------------------------
#local Nr = Nr + 1; // next Nr
#end // --------------- end of loop
texture { pigment{ color rgb< 1, 1, 1>*1.2 }
} // end of texture just for testing
} // end of difference
//---------------------------------------------------- |
|
Kernel of the column minus the rips.
|
A special texture for columns:
//----------------------------------------------------
#declare Stone_Texture = // Column kernel stone texture
texture { T_Grnt16
normal { agate 0.35 scale 0.05}
finish { phong 0.2 }
scale 1
} // end of texture
// ..........-............. with vertical subdivisions
#declare Column_Kernel_Texture =
texture { gradient<0,1,0>
scale <1,0.67,1> turbulence 0.01
texture_map{
[0.00 Stone_Texture ]
[0.001 pigment{ color rgb<1,1,1>*.1}]
[0.005 pigment{ color rgb<1,1,1>*.1}]
[0.006 Stone_Texture ]
[1.00 Stone_Texture ]
} // end of texture_map
} // end of texture -----------------------
//---------------------------------------------------- |
|
The final image:
Texture with horizontal stripes.
Click here for the complete scene description as a macro for POV-Ray:
".txt" file or
".pov" file
|
Ready-made POV-Ray objects as
include files and example files you'll find
at the POV-Ray Objects Page
|