Antiprism Up Next
Home
Programs
Examples
Album
Download
Development
Forum
About

EXTRA: rotegrity - make rotegrity and nexorede models

Usage    |    Examples    |    Notes

Usage



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 or nexorade.
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 -O f)
  -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)
  -s <perc> percentage to adjust corrections on iteration (default: 98)
  -n <itrs> maximum number of iterations, -1 for unlimited (default: 10000)
  -l <lim>  minimum change of distance/width_of_model to terminate, as 
               negative exponent (default: 15 giving 1e-15)
  -z <nums> number of iterations between status reports (implies termination
            check) (0 for final report only, -1 for no report), optionally
            followed by a comma and the number of iterations between
            termination checks (0 for report checks only) (default: 1000,1)
  -o <file> write output to file (default: write to standard output)

Examples

Rotegrity Examples

See also, rotegrity examples with images.

Convert a geodesic sphere into a nexorade and colour by symmetry

rotegrity -c s -O r geo_3_1 | antiview -v 0.01


Make a rotegrity with double units. It has alternate winding around base faces and base vertices.
rotegrity -c s -O r -M 2 geo_2_1 | antiview -v 0.01


Make a rotegrity with triple units. It has alternate winding around base faces and base vertices.
rotegrity -f 0.2 -c s -O r -M 3 geo_2 | antiview -v 0.01


Add a central white sphere to make models easier to view
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


Class I and II geodesic spheres have edges related by mirror symmetry, and these appear to become rotegrity units of the same length (there are ten shorter edge lengths, and ten edge orbits in this example). The colours of the rotegrity here are taken from the edge colours of the base model
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


The convex hull of a random collection of points will generally jam during solution.
repel -N 83 -n 100000 | conv_hull | rotegrity -O r | antiview


A previously processsed model can be processed again by specifying by using full face outout with rotegrity -O f and rereading with rotegrity -t
zono -P 10  | rotegrity -c s -s 1 -n 100 -O f | rotegrity -t -O r | antiview -v 0.02


Nexorade Examples

Convert a geodesic sphere into a nexorade and colour by symmetry
rotegrity -a n -c s -O n geo_3_1 | antiview -v 0.01


Having seen the report written to the screen by the previous command, recreate the model with the given radius (antiview -e 0.0078889) and a strut length slightly longer than the minimum (rotegrity -a n,0.45)
rotegrity -a n,0.45 -c s -O n geo_3_1 | antiview -v 0.0078889 -e 0.0078889


Make a nexorade with double struts.
rotegrity -a n,0.45 -c s -O n -M 2 geo_2_1 | antiview -v 0.0079 -e 0.0079


A previously processsed model can be processed again by specifying by using full face outout with rotegrity -O f and rereading with rotegrity -t
zono -P 10  | rotegrity -a n -c s -s 1 -n 100 -O f | rotegrity -a n -t -O n | antiview -v 0.02


Notes

There are some relevant threads on the GeodesicHelp group: Tensegrities, nexorades & rotegrities, Nexorades/Rotegrities - Frequencies 1 through 3 and New Nexorade/Rotegrity project.

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


To produce attractive raytraced images of nexorade models with the elements represented by rods, use the off2pov include file share/pov_inc/nexorade.inc included in the Antiprism package. Check the solution report to choose an edge radius and strut length. 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 -a n -O f -o nex_geo_3_1.off
off2pov -t no_tri -v 0.00789 -e 0.45 -i nexorade.inc -o nex_geo_3_1.pov nex_geo_3_1.off
povray +a +p +H600 +W800 nex_geo_3_1.pov



     Next: EXTRA: sweep_edges - sweep edges to make a surface
     Up: Programs and Documentation


Home   |   Programs   |   Examples   |   Album   |   Download   |   Development   |   Forum   |   About

Contact: adrian@antiprism.com      -      Modified 1.6.2022