File:Tesseract tetrahedron shadow with alternating vertex colors, upper cube.png
From Wikimedia Commons, the free media repository
Jump to navigation
Jump to search
Size of this preview: 544 × 599 pixels. Other resolutions: 218 × 240 pixels | 436 × 480 pixels | 698 × 768 pixels | 930 × 1,024 pixels | 1,860 × 2,048 pixels | 3,624 × 3,990 pixels.
Original file (3,624 × 3,990 pixels, file size: 852 KB, MIME type: image/png)
File information
Structured data
Captions
Summary
[edit]DescriptionTesseract tetrahedron shadow with alternating vertex colors, upper cube.png |
Upper cube (containing opposite vertex to the projection center) in This image was created with POV-Ray. |
||
Source | Own work | ||
Author |
|
Licensing
[edit]I, the copyright holder of this work, hereby publish it under the following licenses:
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
This file is licensed under the Creative Commons Attribution 4.0 International license.
- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
You may select the license of your choice.
POV-Ray source
[edit]#version 3.6;
global_settings { assumed_gamma 1.0 }
#default{ finish{ ambient 0.1 diffuse 0.9 conserve_energy}}
#include "colors.inc"
///////////////////////////// camera and light
#declare Camera_Position = <10, 16, -50>;
camera{
location Camera_Position
right x*image_width/image_height
angle 11.3
look_at <.7, 1.1, 0>
}
light_source{ <-400, 500, -300> color White*0.9 shadowless}
light_source{ <400, 200, 100> color White*0.4 shadowless}
light_source{ Camera_Position color rgb<0.9,0.9,1>*0.2 shadowless}
sky_sphere{ pigment{ White } }
/////////////////////////////////////////////////////////////////////////////////////////////////
#declare Factor = 7;
#declare EdgeColor = <.5, .5, .5, 0>;
#declare TransparentEdgeColor = <.5, .5, .5, .95>;
#declare LightVertexColor = <.5, .8*.5, .65*.5, 0>;
#declare DarkVertexColor = <.2, .8*.2, .65*.2, 0>;
#declare TransparentLightVertexColor = <.5, .8*.5, .65*.5, .95>;
#declare TransparentDarkVertexColor = <.2, .8*.2, .65*.2, .95>;
#declare RedFaceColor = <1, 0, 0, .18>;
/////////////////////////////////////////////////////////////////////////////////////////////////
#declare VertexPoints = array[15]{ <-0.7071067811865475, -0.408248290463863, -0.28867513459481287>, <0.0, 0.0, 0.8660254037844386>, <-0.35355339059327373, -0.2041241452319315, 0.28867513459481287>, <0.0, 0.816496580927726, -0.28867513459481287>, <-0.35355339059327373, 0.2041241452319315, -0.28867513459481287>, <0.0, 0.408248290463863, 0.28867513459481287>, <-0.2357022603955158, 0.13608276348795434, 0.09622504486493762>, <0.7071067811865475, -0.408248290463863, -0.28867513459481287>, <0.0, -0.408248290463863, -0.28867513459481287>, <0.35355339059327373, -0.2041241452319315, 0.28867513459481287>, <0.0, -0.2721655269759087, 0.09622504486493762>, <0.35355339059327373, 0.2041241452319315, -0.28867513459481287>, <0.0, 0.0, -0.28867513459481287>, <0.2357022603955158, 0.13608276348795434, 0.09622504486493762>, <0.0, 0.0, 0.0> }
#declare VertexRanks = array[15]{ 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 }
#declare FakeRanks = array[5]{0, 1, 3, 6, 10};
#declare VertexRankParities = array[15]{ 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0 }
#declare TransparentVertices = array[7]{ 1, 4, 8, 5, 9, 12, 13 };
#declare SolidVertices = array[8]{ 2, 3, 6, 10, 7, 11, 14, 15 };
#declare TransparentEdges = array[16]{ array[2]{1, 3}, array[2]{4, 5}, array[2]{8, 9}, array[2]{12, 13}, array[2]{4, 6}, array[2]{5, 7}, array[2]{8, 10}, array[2]{9, 11}, array[2]{12, 14}, array[2]{13, 15}, array[2]{1, 5}, array[2]{8, 12}, array[2]{9, 13}, array[2]{1, 9}, array[2]{4, 12}, array[2]{5, 13} }
#declare SolidEdges = array[12]{ array[2]{2, 3}, array[2]{2, 6}, array[2]{2, 10}, array[2]{3, 7}, array[2]{3, 11}, array[2]{6, 7}, array[2]{6, 14}, array[2]{10, 11}, array[2]{10, 14}, array[2]{7, 15}, array[2]{11, 15}, array[2]{14, 15} }
#declare Faces = array[6]{ array[4]{6, 2, 3, 7}, array[4]{10, 2, 3, 11}, array[4]{10, 2, 6, 14}, array[4]{14, 10, 11, 15}, array[4]{14, 6, 7, 15}, array[4]{11, 3, 7, 15} }
/////////////////////////////////////////////////////////////////////////////////////////////////
union{
// TRANSPARENT VERTICES AND EDGES
merge{
union{
#for( i, 0, dimension_size(TransparentVertices, 1)-1 )
#local VertexIndex = TransparentVertices[i] - 1;
#local Rank = VertexRanks[VertexIndex];
#local FakeRank = FakeRanks[Rank];
#local Rad = .05 + pow(10-FakeRank, 2) / 600;
sphere{ VertexPoints[VertexIndex]*Factor, Rad
#if(VertexRankParities[VertexIndex])
pigment{color rgbt TransparentDarkVertexColor}
#else
pigment{color rgbt TransparentLightVertexColor}
#end
}
#end
}
union{
#for( i, 0, dimension_size(TransparentEdges, 1)-1 )
#local Edge = TransparentEdges[i];
#local VertexIndex1 = Edge[0] - 1;
#local VertexIndex2 = Edge[1] - 1;
#local Point1 = VertexPoints[VertexIndex1]*Factor;
#local Point2 = VertexPoints[VertexIndex2]*Factor;
#local Rank1 = VertexRanks[VertexIndex1];
#local Rank2 = VertexRanks[VertexIndex2];
#local FakeRank1 = FakeRanks[Rank1];
#local FakeRank2 = FakeRanks[Rank2];
#local Rad1 = (.05 + pow(10-FakeRank1, 2) / 600) / 3.5;
#local Rad2 = (.05 + pow(10-FakeRank2, 2) / 600) / 3.5;
cone{ Point1, Rad1, Point2, Rad2 }
#end
pigment{color rgbt TransparentEdgeColor}
}
}
// SOLID VERTICES
union{
#for( i, 0, dimension_size(SolidVertices, 1)-1 )
#local VertexIndex = SolidVertices[i] - 1;
#local Rank = VertexRanks[VertexIndex];
#local FakeRank = FakeRanks[Rank];
#local Rad = .05 + pow(10-FakeRank, 2) / 600;
sphere{ VertexPoints[VertexIndex]*Factor, Rad
#if(VertexRankParities[VertexIndex])
pigment{color rgbt DarkVertexColor}
#else
pigment{color rgbt LightVertexColor}
#end
}
#end
}
// SOLID EDGES
union{
#for( i, 0, dimension_size(SolidEdges, 1)-1 )
#local Edge = SolidEdges[i];
#local VertexIndex1 = Edge[0] - 1;
#local VertexIndex2 = Edge[1] - 1;
#local Point1 = VertexPoints[VertexIndex1]*Factor;
#local Point2 = VertexPoints[VertexIndex2]*Factor;
#local Rank1 = VertexRanks[VertexIndex1];
#local Rank2 = VertexRanks[VertexIndex2];
#local FakeRank1 = FakeRanks[Rank1];
#local FakeRank2 = FakeRanks[Rank2];
#local Rad1 = (.05 + pow(10-FakeRank1, 2) / 600) / 3.5;
#local Rad2 = (.05 + pow(10-FakeRank2, 2) / 600) / 3.5;
cone{ Point1, Rad1, Point2, Rad2 }
#end
pigment{color rgbt EdgeColor}
}
// FACES
union{
#for( i, 0, dimension_size(Faces, 1)-1 )
#local FaceArray = Faces[i];
#local LenOfFaceArray = dimension_size(FaceArray, 1);
polygon{ LenOfFaceArray,
#for(VertexIndexInFace, 0, LenOfFaceArray-1)
#local VertexIndexInPolytope = FaceArray[VertexIndexInFace] - 1;
VertexPoints[VertexIndexInPolytope]*Factor
#end
}
#end
pigment{color rgbt RedFaceColor}
}
rotate -90*x
rotate 4*y
rotate 4*z
}
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 20:26, 31 March 2018 | 3,624 × 3,990 (852 KB) | Watchduck (talk | contribs) |
You cannot overwrite this file.
File usage on Commons
The following 5 pages use this file:
- File:Concertina tesseract; single concertina cube, lower.png
- File:Concertina tesseract; single concertina cube, upper.png
- File:Tesseract tetrahedron shadow matrices.svg
- File:Tesseract tetrahedron shadow with alternating vertex colors, lower cube.png
- File:Tesseract tetrahedron shadow with alternating vertex colors.png
Metadata
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it. If the file has been modified from its original state, some details such as the timestamp may not fully reflect those of the original file. The timestamp is only as accurate as the clock in the camera, and it may be completely wrong.
PNG file comment |
|
---|---|
Horizontal resolution | 28.35 dpc |
Vertical resolution | 28.35 dpc |
File change date and time | 15:40, 31 March 2018 |