Poincaré disk Inversion script
All  1-7  8-16

Previous
Next
 From:  Michael Gibson
6550.8 In reply to 6550.7 
Hi Brian ,

> Is there a way to script getting the center point of a circle, without picking the
> center point with the mouse?
> The center point needs to be the same data type as a picked center of a circle.

Sorry no there isn't currently any way to get the center point by script as a "picked point"... I guess you could get the x,y,z location by doing:

var bbox = circle.getBoundingBox( true /* true = use high accuracy bounding box */ );

var cen = bbox.center;

That will give a generic point, not a "picked point" which has things like object snap information included along with it though.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  bemfarmer
6550.9 In reply to 6550.8 
Thank you very much Michael.

Now I can stop trying :-)

I've already done another point picker for the center of the newly created circle, which works perfectly :-)

Next I will be adding color to newly created curves, first separating them, and later rejoining the new curves.

- Brian

And I've successfully done fast versions, with htm script, after much difficulty with code on the wrong side of a parentheses.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  bemfarmer
6550.10 
The HyperbolicHelper script creates hyperbolic polygons. The polygons may then be tessellated.
The Inversion3ptFast script does tessellation of one or more polygons. It uses Fast htm code, and also will invert points.
It still needs "Separate" and "re-Join" and Color preservation and Planar, to make tessellated surfaces easier.
The Escher circle limit art forms tessellations.
The InversionCenterFast script does tessellation using a center point and a radius point. It is Fast and has option to invert points.

The mathematical nomenclature for the tessellation is {p,q}, where p is the number of sides of a polygon, (sideCt),
and q is the number of polygons which meet at each polygon vertex, (vertexCt).
Note that a p-sided polygon may be subdivided into p regions, or 2*p hyperbolic triangles, etcetera.
Also note that there are some constraints on the minimal values for p and q, as per the table in reference #1.
p and q are positive integers, and (p - 2)(q - 2) > 4.
Lower combinations of p and q do not work for this script. (They only work for planes and spheres.)
Reference #1: http://www.d.umn.edu/~ddunham/md07tlk.pdf Creating Regular Repeating Hyperbolic Patterns.
https://cms.math.ca/cmb/v40/coxeter6871.pdf The trigonometry.
http://moniker.name/worldmaking/?p=385 Hyperbolic Geometry: Poincaré Disc Tessellation How-to.
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.133.8746&rep=rep1&type=pdf Compass and Straightedge in the Poincaré Disk.

- Brian

http://www.ma.utexas.edu/users/gilbert/M333L/chp5vers4.pdf






  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Tommy (THOMASHELZLE)
6550.11 In reply to 6550.10 
I love the result but I fear you lost me there - I tried for an hour but somehow I don't understand the tessellation part - Could you give a step by step example how you created that second image and what points I have to select for the script to work?

Thanks a ton - very inspiring!

Cheers,

Tom
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
6550.12 In reply to 6550.11 
Not yet tested but I believe that you must select all the Curves of the red & white umbrella ;)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  bemfarmer
6550.13 In reply to 6550.11 
Hi Tom,
Thank you for your question. Pilou is correct.
Hyperbolic helper only creates the uniform central hyperbolic polygon. It is up to the user to divide it up, if desired, using MoI commands
such as polyline to create a bunch of triangles. Or create outlines of Escher fishes...
The 3pt inversion script and the central inversion script do essentially the same thing, with different picks.
Using the 3pt inversion script, which starts out with much of the code of the 3 point circle tool of MoI, the two end points of one side of the polygon are picked,
and then a point on the side of the polygon in between is picked. A new circle pops up, the circle of inversion. The user then picks the center
of this circle. Then the line segments making up the central polygon are selected. They should have previously been separated.
The inversion of the selected central polygons causes them to be "replicated," (sort of mirrored), across from the side arc.

The polygons in the Poincare disk, projected onto half of a two sheeted hyperboloid which hovers above the disk. (rounded cone-like surface, sort of),
have straight lines, and are all the same size and have the same angles. They just look like they have arced sides, and look "distorted," lying flat on the
Poincare disk.

Computer programs to do such tessellations were done 30 years ago, but not with NURBS, and students are still doing projects.

I'm working on a version to do planar faces.
In the literature, there are also non-uniform tessellations, and Weierstrass projection and math, which can be relatively easy, or be written with "strange"
math symbols.

It was hard for me, but I am very happy to have the "fast" versions working, using previous help from Michael, and others. There are lots of comments
in the .js and .htm code, visible with notepad++

- Brian
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Tommy (THOMASHELZLE)
6550.14 In reply to 6550.13 
Thanks Brian, I'll try again. :-)

Cheers,

Tom
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  bemfarmer
6550.15 
Here is a cool link to "Bending Hyperbolic Kaleidoscopes," with papers by Vladimir Bulatov:
http://bulatov.org/math/1107/index.html

- Brian
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  Frenchy Pilou (PILOU)
6550.16 
Not exactly the same but... ;)

http://moi3d.com/forum/index.php?webtag=MOI_FRANCAIS&msg=353.6 (for links and videos)

by me with a Lemo's image
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
 
Show messages: All  1-7  8-16