|
Usage: rotegrity [options] [input_file] Read a file in OFF format containing a roughly spherical polyhedron, or previously twisted model, and try to convert into a rotegrity. Units keep original edge colours. If input_file is not given the program reads from standard input. Options -h,--help this help message (run 'off_util -H help' for general help) --version version information -a <type> model type: rotegrity, nexorade, for nexorade followed by an optional comma and strut length -f <frac> fraction of length for end sections (default: 1/3) -t input model is already twisted (produced by this program or 'twist' program) -M <mthd> method of conversion from base model - twist, double, joined, or X (default: t) -O <type> output type for units: full (face), rotegrity (3 short struts), nexorade (long strut), Nexorade (long strut, direction vertices) (default: full). Only 'full' output can be used as input with option -t -m <maps> a comma separated list of colour maps used to transform colour indexes (default: rand), a part consisting of letters from v, e, f, selects the element types to apply the map list to (default 'vef'). -c <type> colouring type: edge (base model edges), symmetry, unit (according to shape), none (default: edge) -n <itrs> number of iterations (default 10000) -s <perc> percentage to adjust corrections on iteration (default: 98) -l <lim> minimum change of vertex distance to terminate, as negative exponent (default: 15 giving 1e-15) -z <n> status checking and reporting every n iterations, -1 for no status (default: 1000) -q quiet, do not print status messages -T reproduce output of former 'twist' program (see Notes), -f is twist factor, -O is output type, unused options silently ignored -o <file> write output to file (default: write to standard output)
rotegrity -c s -O r geo_3_1 | antiview -v 0.01
rotegrity -c s -O r -M 2 geo_2_1 | antiview -v 0.01
rotegrity -f 0.2 -c s -O r -M 3 geo_2 | antiview -v 0.01
off_color -v invisible -e invisible -f white geo_10 -o sph.off rotegrity -c s -O r -M 2 geo_3_1 | antiview -v 0.01 - sph.off
off_color -e S geo_3_3 | rotegrity | antiview -v 0.01 rotegrity geo_3_3 | off_report -C E off_report -C O geo_3_3
repel -N 83 -n 100000 | conv_hull | rotegrity -O r | antiview
zono -P 10 | rotegrity -c s -s 1 -n 100 -O f | rotegrity -t -O r | antiview -v 0.02
rotegrity -a n -c s -O n geo_3_1 | antiview -v 0.01
rotegrity -a n,0.45 -c s -O n geo_3_1 | antiview -v 0.0078889 -e 0.0078889
rotegrity -a n,0.45 -c s -O n -M 2 geo_2_1 | antiview -v 0.0079 -e 0.0079
zono -P 10 | rotegrity -a n -c s -s 1 -n 100 -O f | rotegrity -a n -t -O n | antiview -v 0.02
The program will not solve all base models, and even models which appear reasonable may scramble, jam or contract to a point. Try reducing option -s if a model scrambles or contracts (e.g. -s 0.1), and use a low number of iterations to see how the model transforms before failing.
Option -M selects different model types, and makes arrangements of units that replace an original unit. Although, -M d produces attractive models it, along with -M X, does not produce especially unique models. -M d is like applying the Conway join operator, then forming a basic rotegrity, then reversing the openings corresponding to original face centres. -M X is like applying the Conway ortho operator, then forming a basic rotegrity, then reversing the openings corresponding to original face centres. Reviewing a number of other unit replacement schemes revealed they were all like applying a Conway operator, applying -M t or -M j, then reversing openings corresponding to particular "centre" types in the Conway operator pattern.
To produce attractive raytraced images of rotegrity models
with the elements represented by straps, use the off2pov include
file share/pov_inc/rotegrity.inc included in
the Antiprism package. Control the strap width with
off2pov -v and the starp thickness
. Example command (must use rotegrity -O f
to include faces data and off2pov -t no_tri to ensure that
the faces are not triangulated)
off_color -e S geo_3_1 | rotegrity -O f | off2pov -t no_tri -v 0.02 -i rotegrity.inc -o rot_geo_3_1.pov povray +a +p +H600 +W800 rot_geo_3_1.pov
off_color -e S geo_3_1 | rotegrity -a n -O f -o nex_geo_3_1.off off2pov -t no_tri -e 0.00789 -i nexorade.inc -o nex_geo_3_1.pov nex_geo_3_1.off povray +a +p +H600 +W800 declare=strut_len=0.45 nex_geo_3_1.pov
The twisted model is like a zig-zag tensegrity, but without the zig-zag; the strut and its string loop lie on a plane.
An edge of a polyhedron has two vertices on the ends and is flanked by two faces. In the dual these faces are associated with vertices, and so an edge can be associated with four coordinates: two polyhedron vertices and two dual vertices.
An edge of a polyhedron can be associated, by the vertices above, with an edge in the dual. The planes through these two edges and the centre intersect in a line through the centre. The centre of a twist edge, the same size as the polyhedron edge can be put on this line and the twist edge rotated about the line by f*90 degrees. Finally, the twist edge is translated by the proportion f between the centre of the polyhedron edge and the centre of the dual edge.
Finally, the twist edge segment is extended to see where it intersects the planes through its edge neighbours, then the extended edge is scaled (using the model centre) back to the original size.
Up:
Programs and Documentation
Next:
EXTRA: kaleido - uniform polyhedra (Zvi Har'El)