textfiles/programming/CARDS/pyramix

241 lines
15 KiB
Plaintext

----------------------------------------------------------------
| |
| |
| |
| TTTTTTT H H EEEEEEE |
| T H H E |
| T H H E |
| T HHHHHHH EEEEE |
| T H H E |
| T H H E |
| T H H EEEEEEE |
| |
| |
| PPPPPP Y Y RRRRRR A M M III X X |
| P P Y Y R R A A MM MM I X X |
| P P Y Y R R A A M M M M I X X |
| PPPPPP Y RRRRRR AAAAAAA M M M I X |
| P Y R R A A M M I X X |
| P Y R R A A M M I X X |
| P Y R R A A M M III X X |
| |
| |
| |
| |
| A Solution to the Pyramix |
| |
| |
| |
| |
| |
| |
| u |
| |
| /|\ |
| / | \ |
| / | \ |
| / | \ |
| / | \ |
| / | \ |
| / Lu | Ru \ |
| / | \ |
| /________|________\ |
| /| /|\ |\ |
| / | / | \ | \ |
| / | LBR / | \ RLB | \ |
| B / | / | \ | \ B |
| / | / | \ | \ |
| / | / | \ | \ |
| / LB | / LR | RL \ | RB \ |
| / |/ | \| \ |
| /________/________|________\________\ |
| /| /| /|\ |\ |\ |
| / | / | / | \ | \ | \ |
| / | LDB / | LRD / | \ RDL | \ RBD | \ |
| / | / | / | \ | \ | \ |
| / | / | / | \ | \ | \ |
| / | / | / | \ | \ | \ |
| / Ll | / LD | / Lf | Rf \ | RD \ | Rr \ |
| / |/ |/ | \| \| \ |
| /________/________/________|________\________\________\ |
| |
| l D f D r |
| |
| |
| |
| |
| |
|Written by Jonathan Bowen |
| Programming Research Group |
| Oxford University Computing Laboratory |
| 8-11 Keble Road |
| Oxford OX1 3QD |
| England |
| |
| Tel +44-865-273840 |
| |
|Created January 1982 |
|Updated April 1985 |
|Issue 1.1 |
----------------------------------------------------------------
----------------------------------------------------------------
| Notation |
|--------------------------------------------------------------|
| |
|1. Description |
| ----------- |
| |
| The pyramix is a tetrahedral pyramid. Each face is |
| divided into nine triangular segments. Any face and |
| its adjacent segments on the other faces may be |
| rotated relative to the rest of the pyramid. |
| Alternatively the first two levels of segments from a |
| vertex may be rotated relative to the opposite face. |
| Additionally the extreme vertex segments may be |
| rotated. |
| |
|2. Faces |
| ----- |
| |
| The following uppercase letters are used to denote the |
| four faces of the pyramid: |
| |
| B for the back face, |
| L for the lefthand face, |
| R for the righthand face, |
| D for the downward face. |
| |
| The following lowercase letters are used to denote the |
| four vertices of the pyramid: |
| |
| f for the front vertex, |
| l for the lefthand vertex, |
| r for the righthand vertex, |
| u for the upward vertex. |
| |
| f l r u denote a clockwise rotation of the |
| first two levels through 120 |
| degrees about the indicated vertex. |
| |
| f- l- r- u- denote a similar rotation in an |
| anticlockwise direction. |
| |
|3. Segments |
| -------- |
| |
| Each segment of each face is represented by a string |
| of one to three letters. The first letter indicates |
| the face on which the segment is situated. The |
| following letters indicate the adjacent face or faces |
| (the order is not important). Note that the segments |
| immediately adjacent to the vertices may be considered |
| the same as the segments immediately adjacent on each |
| face since the outer vertex segments may simply be |
| rotated without affecting the rest of the pyramix. |
| However these may be specified by the face (uppercase) |
| followed by the vertex (lowercase) if desired. The |
| The following are examples of segments: |
| |
| RD the segment on the righthand face in the |
| centre of the edge next to the downward |
| face. |
| |
| LBR or LRB the segment on the lefthand face at the |
| touching the back and righthand faces. |
| |
| Bu the segment on the back face at the |
| extreme upper vertex. |
| |
|4. Operation notation |
| ------------------ |
| |
| Segments in brackets denote movement of the segments |
| specified. Elements in the brackets are a cyclic group |
| and rotate round one place from right to left when the |
| operation is performed. E.g. (RL,LB,BR) is transformed |
| to (LB,BR,RL). Note that the first element moves to |
| the last position. |
| |
| |
----------------------------------------------------------------
----------------------------------------------------------------
| Operation |
|--------------------------------------------------------------|
| |
|1. Rotate each of the extreme vertex segments until they |
| match across to the adjacent segments. |
| |
|2. Make the vertex segments match on one face. First |
| match two adjacent vertex segments. If the third |
| vertex will not match, rotate the vertices round to |
| to the adjacent face. The third vertex may now be |
| rotated to match. |
| |
|3. Complete the face by rotating a vertex on the face, |
| rotating the fourth vertex as necessary and then |
| rotating the vertex on the face back again. The |
| following moves are useful and will leave the lefthand |
| face unaffected apart from one specified segment: |
| |
| (i) (LR,BR,...): f r- f- |
| |
| (ii) (LR,DR,...): u- r u |
| |
| (iii) (LR,RL) and ...: f r- f- r u- r u |
| |
|4. Now position completed face at the bottom and match |
| the upper central portion to the bottom segments. |
| Rotate the segments on the middle of the three upper |
| edges using one of the following moves for a |
| clockwise/anticlockwise rotation respectively: |
| |
| (iv) (RL,LB,BR): f u- f- u- f u- f- |
| |
| (v) (BR,LB,RL): f u f- u f u f- |
| |
|5. Flip the segments so that they are orientated |
| properly using the following move: |
| |
| (vi) (RL,LR) and (RB,BR): f r- f- r u- r u r- |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
----------------------------------------------------------------