Reference:Shapes3.inc

From POV-Wiki
Revision as of 21:38, 17 April 2013 by Flohmuller (talk | contribs)
Jump to navigation Jump to search

This file contains macros for segments of shapes, facetted shapes and others.

Segments of shapes:

Segment_of_Torus ( R_major, R_minor, Segment_Angle )
Segment of a torus around the y axis. The angle starts at positive x axis.
Segment_of_CylinderRing ( R_out, R_in, Height, Segment_Angle )
Segment of a cylindrical ring around the y axis. The angle starts at positive x axis.
Segment_of_Object ( Segment_Object, Segment_Angle )
Segment of an object around the y axis. The angle starts at positive x axis.Based on min_extend and max_extend.

Angular shapes:

Column_N (N, R_in, Height )
A regular n-sided column around the y axis, defined by the incircle radius R_in. Height is the height in y direction.
Column_N_AB (N, A, B, R_in)
A regular n-sided column from point A to point B, defined by the incircle radius R_in.
Pyramid_N (N, R_in_1, R_in_2, Height )
A regular n-sided pyramid around the y axis, defined by the incircle radii: R_in_1 at y = 0 and R_in_2 at y = Height.
Pyramid_N_AB(N, A, R_in_A, B, R_in_B)
A regular n-sided column from point A to point B, defined by the incircle radii: R_in_A at point A and R_in_B at point B.

Facetted shapes:

Facetted_Sphere (Quarter_Segments, Radial_Segments)
A facetted sphere with incircle radius 1.
Quarter_Segments = number of equitorial facetts in one quarter (1/2 of the total number).
Radial_Segments = number of radial facetts.
Facetted_Egg_Shape (Quarter_Segments, Radial_Segments, Lower_Scale, Upper_Scale)
A facetted egg shape. The number of facetts are defined analog to Facetted_Egg_Shape().
Equitorial incircle radius = 1. Lower half scaled in y by Lower_Scale, Upper half scaled in y by Upper_Scale.
Facetted_Egg (N_Quarter_Segments, N_Radial_Segments)
A facetted egg with total height = 2. Lower half scaled in y by 1.15, Upper half scaled in y by 1.55.

Round shapes:

Egg_Shape (Lower_Scale, Upper_Scale)
An egg shape with equitorial radius 1.
Lower half scaled in y by Lower_Scale, Upper half scaled in y by Upper_Scale.
Egg
Uses the macro Egg_Shape.
Lower half scaled in y by 1.15, upper half scaled in y by 1.55.

Wireframe shape (mostly also optionally filled:

Ring_Sphere (Rmaj_H, Rmaj_V, Rmin_H, Rmin_V, Number_of_Rings_horizontal, Number_of_Rings_vertical)
A wireframe sphere by vertical and horizontal torii.
Horizontal tori: equatorial radius major Rmaj_H, radius minor Rmin_H.
Vertical tori: radius major Rmaj_V, radius minor Rmin_V.
Round_Pyramid_N_out (N, A, CornerR_out_A, B, CornerR_out_B, R_Border, Filled, Merge )
A regular n-sided column from point A to point B, defined by the outcircle radii: R_in_A at point A and R_in_B at point B.
Round_Pyramid_N_in (N, A, FaceR_in_A, B, FaceR_in_B, R_Border, Filled, Merge_On )
A regular n-sided column from point A to point B, defined by the incircle radii: R_in_A at point A and R_in_B at point B..
Round_Cylinder_Tube( A, B, R_out, R_border, Filled, Merge)
A cylindrical tube from point A to point B, with the outer radius R_out and the border radius R_border. The inner radius is R_out - R_border.
With Filled = 1 we get a Round_Cylinder.
Rounded_Tube( R_out, R_in, R_Border, Height, Merge)
A cylindrical tube around the y axis with the Height in y, with the outer radius R_out, the inner radius R_in and the radius of the rounded borders R_border.
Rounded_Tube_AB( A, B, R_out, R_in, R_Border, Merge)
A cylindrical tube from point A to point B.
The outer radius is R_out, the inner radius is R_in and the radius of the rounded borders is R_border.
Round_Conic_Torus( Center_Distance, R_upper, R_lower, R_border, Merge)
A toroid ring the z axis, with the lower torus part at y = 0 and the upper part at y = Center_Distance.
The radius of the lower part is R_lower, the radius of the lower part is R_lower The minor radius of the toroid is R_border.
Round_Conic_Prism( Center_Distance, R_upper, R_lower, Length_Zminus, R_Border, Merge)
A shape of the toroidal form like Round_Conic_Torus(), but filled and in the negativ z direction with the length Length_Zminus.
Half_Hollowed_Rounded_Cylinder1( Length, R_out, R_border, BorderScale, Merge)
A hollowed half rounded cylinder with the Length in x, of the outer radius R_out, with round ends. The borders have a minor radius R_border with the scale in y BorderScale.
The inner radius is R_out - R_border.
Half_Hollowed_Rounded_Cylinder2( Length, R_out, R_corner, R_border, BorderScale, Merge)
A hollowed half rounded cylinder with the Length in x, of the outer radius R_out, with flat ends. The corners have a minor radius of R_corner, the borders have a minor radius of R_border with the scale in y BorderScale.
The inner radius is R_out - R_border, the inner lenght is Length - 2*R_border.
Round_N_Tube_Polygon (N, Tube_R, R_incircle, Edge_R, Filled, Merge)
A regular polygon with N edges (or corners) with incircle radius R_incircle, formed by a tube with the minor radius Tube_R. The corners are formed by torus segments with the major radius radius Edge_R.