File:Mandelbox front 17072019.jpg
Original file (7,000 × 7,000 pixels, file size: 45.43 MB, MIME type: image/jpeg)
This is a file from the Wikimedia Commons. The description on its description page there is shown below. |
Summary
DescriptionMandelbox front 17072019.jpg |
Deutsch: Die Standard-Mandelbox von vorne. Werte können in den Metadaten eingesehen werden. Skalierungswert beträgt 2.
}
Formel: void MandelboxIteration(CVector4 &z, const sFractal *fractal, sExtendedAux &aux) { if (fractal->mandelbox.rotationsEnabled) { CVector4 zRot; // cast vector to array pointer for address taking of components in opencl double *zRotP = reinterpret_cast<double *>(&zRot); const double *colP = reinterpret_cast<const double *>(&fractal->mandelbox.color.factor); for (int dim = 0; dim < 3; dim++) { // handle each dimension x, y and z sequentially in pointer var dim double *rotDim = (dim == 0) ? &zRotP[0] : ((dim == 1) ? &zRotP[1] : &zRotP[2]); const double *colorFactor = (dim == 0) ? &colP[0] : ((dim == 1) ? &colP[1] : &colP[2]); zRot = fractal->mandelbox.rot[0][dim].RotateVector(z); if (*rotDim > fractal->mandelbox.foldingLimit) { *rotDim = fractal->mandelbox.foldingValue - *rotDim; z = fractal->mandelbox.rotinv[0][dim].RotateVector(zRot); aux.color += *colorFactor; } else { zRot = fractal->mandelbox.rot[1][dim].RotateVector(z); if (*rotDim < -fractal->mandelbox.foldingLimit) { *rotDim = -fractal->mandelbox.foldingValue - *rotDim; z = fractal->mandelbox.rotinv[1][dim].RotateVector(zRot); aux.color += *colorFactor; } } } } else { if (fabs(z.x) > fractal->mandelbox.foldingLimit) { z.x = sign(z.x) * fractal->mandelbox.foldingValue - z.x; aux.color += fractal->mandelbox.color.factor.x; } if (fabs(z.y) > fractal->mandelbox.foldingLimit) { z.y = sign(z.y) * fractal->mandelbox.foldingValue - z.y; aux.color += fractal->mandelbox.color.factor.y; } if (fabs(z.z) > fractal->mandelbox.foldingLimit) { z.z = sign(z.z) * fractal->mandelbox.foldingValue - z.z; aux.color += fractal->mandelbox.color.factor.z; } } const double r2 = z.Dot(z); z += fractal->mandelbox.offset; if (r2 < fractal->mandelbox.mR2) { z *= fractal->mandelbox.mboxFactor1; aux.DE *= fractal->mandelbox.mboxFactor1; aux.color += fractal->mandelbox.color.factorSp1; } else if (r2 < fractal->mandelbox.fR2) { const double tglad_factor2 = fractal->mandelbox.fR2 / r2; z *= tglad_factor2; aux.DE *= tglad_factor2; aux.color += fractal->mandelbox.color.factorSp2; } z -= fractal->mandelbox.offset; if (fractal->mandelbox.mainRotationEnabled) z = fractal->mandelbox.mainRot.RotateVector(z); z = z * fractal->mandelbox.scale;aux.DE = aux.DE * fabs(fractal->mandelbox.scale) + 1.0; English: The standard Mandelbox seen from the front. Values can be found in the Meta. Scale of Mandelbox is 2. Formula:
}void MandelboxIteration(CVector4 &z, const sFractal *fractal, sExtendedAux &aux) { if (fractal->mandelbox.rotationsEnabled) { CVector4 zRot; // cast vector to array pointer for address taking of components in opencl double *zRotP = reinterpret_cast<double *>(&zRot); const double *colP = reinterpret_cast<const double *>(&fractal->mandelbox.color.factor); for (int dim = 0; dim < 3; dim++) { // handle each dimension x, y and z sequentially in pointer var dim double *rotDim = (dim == 0) ? &zRotP[0] : ((dim == 1) ? &zRotP[1] : &zRotP[2]); const double *colorFactor = (dim == 0) ? &colP[0] : ((dim == 1) ? &colP[1] : &colP[2]); zRot = fractal->mandelbox.rot[0][dim].RotateVector(z); if (*rotDim > fractal->mandelbox.foldingLimit) { *rotDim = fractal->mandelbox.foldingValue - *rotDim; z = fractal->mandelbox.rotinv[0][dim].RotateVector(zRot); aux.color += *colorFactor; } else { zRot = fractal->mandelbox.rot[1][dim].RotateVector(z); if (*rotDim < -fractal->mandelbox.foldingLimit) { *rotDim = -fractal->mandelbox.foldingValue - *rotDim; z = fractal->mandelbox.rotinv[1][dim].RotateVector(zRot); aux.color += *colorFactor; } } } } else { if (fabs(z.x) > fractal->mandelbox.foldingLimit) { z.x = sign(z.x) * fractal->mandelbox.foldingValue - z.x; aux.color += fractal->mandelbox.color.factor.x; } if (fabs(z.y) > fractal->mandelbox.foldingLimit) { z.y = sign(z.y) * fractal->mandelbox.foldingValue - z.y; aux.color += fractal->mandelbox.color.factor.y; } if (fabs(z.z) > fractal->mandelbox.foldingLimit) { z.z = sign(z.z) * fractal->mandelbox.foldingValue - z.z; aux.color += fractal->mandelbox.color.factor.z; } } const double r2 = z.Dot(z); z += fractal->mandelbox.offset; if (r2 < fractal->mandelbox.mR2) { z *= fractal->mandelbox.mboxFactor1; aux.DE *= fractal->mandelbox.mboxFactor1; aux.color += fractal->mandelbox.color.factorSp1; } else if (r2 < fractal->mandelbox.fR2) { const double tglad_factor2 = fractal->mandelbox.fR2 / r2; z *= tglad_factor2; aux.DE *= tglad_factor2; aux.color += fractal->mandelbox.color.factorSp2; } z -= fractal->mandelbox.offset; if (fractal->mandelbox.mainRotationEnabled) z = fractal->mandelbox.mainRot.RotateVector(z); z = z * fractal->mandelbox.scale;aux.DE = aux.DE * fabs(fractal->mandelbox.scale) + 1.0; |
Date | |
Source | Own work |
Author | PantheraLeo1359531 |
CGI.
Licensing
- 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.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
This image has been assessed using the Quality image guidelines and is considered a Quality image.
العربية ∙ جازايرية ∙ беларуская ∙ беларуская (тарашкевіца) ∙ български ∙ বাংলা ∙ català ∙ čeština ∙ Cymraeg ∙ Deutsch ∙ Schweizer Hochdeutsch ∙ Zazaki ∙ Ελληνικά ∙ English ∙ Esperanto ∙ español ∙ eesti ∙ euskara ∙ فارسی ∙ suomi ∙ français ∙ galego ∙ עברית ∙ हिन्दी ∙ hrvatski ∙ magyar ∙ հայերեն ∙ Bahasa Indonesia ∙ italiano ∙ 日本語 ∙ Jawa ∙ ქართული ∙ 한국어 ∙ kurdî ∙ Lëtzebuergesch ∙ lietuvių ∙ македонски ∙ മലയാളം ∙ मराठी ∙ Bahasa Melayu ∙ Nederlands ∙ Norfuk / Pitkern ∙ polski ∙ português ∙ português do Brasil ∙ rumantsch ∙ română ∙ русский ∙ sicilianu ∙ slovenčina ∙ slovenščina ∙ shqip ∙ српски / srpski ∙ svenska ∙ தமிழ் ∙ తెలుగు ∙ ไทย ∙ Tagalog ∙ Türkçe ∙ toki pona ∙ українська ∙ vèneto ∙ Tiếng Việt ∙ 中文 ∙ 中文(简体) ∙ 中文(繁體) ∙ +/− |
17 July 2019
image/jpeg
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 13:56, 24 July 2019 | 7,000 × 7,000 (45.43 MB) | PantheraLeo1359531 | Downsized to 6000px (Mandelbox area) and added a new area around Mandelbox. | |
20:36, 17 July 2019 | 10,000 × 10,000 (80.77 MB) | PantheraLeo1359531 | User created page with UploadWizard |
File usage
The following page uses this file:
Metadata
This file contains additional information, probably added from the digital camera or scanner used to create or digitize it.
If the file has been modified from its original state, some details may not fully reflect the modified file.
Horizontal resolution | 216 dpi |
---|---|
Vertical resolution | 216 dpi |
Software used | paint.net 4.2 |