Archivo original (Imagen SVG, nominalmente 520 × 333 píxeles; tamaño de archivo: 1,15 MB)
Resumen
DescripciónDna-SNP.svg
Inglés: Un polimorfismo de un solo nucleótido es un cambio de un nucleótido en una ubicación de un solo par de bases en el ADN. Creado con OpenSCAD v2021.01 e Inkscape v1.0.2.
Fecha
Fuente
Propio trabajo
Autor
David Eccles ( Gringer )
Proceso de construcción
Este archivo se derivó de un modelo 3D de ADN, convertido a SVG y coloreado usando el script STL2SVG de David Eccles :
Luego, los modelos de ADN se combinaron y anotaron usando Inkscape. La columna vertebral del ADN del modelo es un pentágono extruido sobre una onda sinusoidal utilizando el guión de extrusión de ruta guiada de David Eccles . El archivo de origen del modelo (en formato OpenSCAD) se muestra a continuación:
use ;hl = 100; // longitud de la hélicehp = 33,2; // paso de hélice [en angstroms]hr = 10; // radio de hélice [en angstroms]bbr = 1,5; // radio de la columna vertebralbucles = hl / hp;// bases aleatorias// bases = rands (0, 4, ceil (360 * bucles / 34.3), 1);// * GRINGENE * - TAA GGN MGN ATH AAY GGN GAR AAY GAR TGA// - TAA GGC AGG ATC AAC GGC GAG AAC GAG TGA// A = 0; G = 1; C = 2; T = 3// [diferente de mi orden habitual,// para simplificar la lógica del modelo 3D]bases = [3,3,3, 1,1,2, 0,1,1, 0,3,2, 0,0,2, 1,1,2, 1,0,1, 0,0,2, 1,0,1, 3,1,0];bAng = atan2 (sin (120) - sin (0), cos (120) - cos (0));drawMode = "todos";módulo lineTo (x1, x2) { cáscara(){ trasladar (x1) esfera (r = 0.25, $ fn = 5); trasladar (x2) esfera (r = 0.25, $ fn = 5); }}backbone_profile = [for (th = [0: 72: 359]) [bbr * cos (th), bbr * pecado (th) * 1]];inc = piso ($ t * 30);thf = ($ t * 30) - inc;h1limit = (360 * bucles);h1jump = (360 * bucles);helix_1 = [para (th = [(thf * 34.3) :( 34.3 / 2): h1jump]) [hr * cos (th), hr * sen (th), hl * th / (360 * bucles)]];helix_2 = [para (th = [120: (34.3 / 2) :( 360 * bucles + 120)]) [hr * cos (th), hr * sen (th), hl * (th-120) / (360 * bucles)]];módulo purine () { linear_extrude (altura = 0,75, centro = verdadero) { // longitud media del enlace de hidrógeno en el agua: 1,97 A // https://en.wikipedia.org/wiki/Hydrogen_bond#Structural_details traducir ([- 0.985,0]) // escala: promedio de CC y C = C longitud de enlace escala (1.435) trasladar ([- 2,0]) rotar (12) rotar (18) { rotar (-30) trasladar ([1,0]) círculo (r = 1, $ fn = 6); color azul") rotar (36) trasladar ([- 1 / (2 * sin (36)), 0]) círculo (r = 1 / (2 * sin (36)), $ fn = 5); } }}módulo pirimidina () { linear_extrude (altura = 0,75, centro = verdadero) { // longitud media del enlace de hidrógeno en el agua: 1,97 A // https://en.wikipedia.org/wiki/Hydrogen_bond#Structural_details traducir ([- 0.985,0]) escala (1.435) traducir ([- 2, 0]) traducir ([1,0]) círculo (r = 1, $ fn = 6); }}$ vpt = [0, 0, 0];// $ vpr = [310, 105, 10];$ vpr = [0, 0, 0];rotar ([310, 105, 130]) traducir ([0,0, -hl / 2]) { if (drawMode == "all" || drawMode == "helix1") color ("azul claro") mapExtrude ("vertCylinder", backbone_profile, helix_1); if (drawMode == "all" || drawMode == "helix2") color ("rosa") mapExtrude ("vertCylinder", backbone_profile, helix_2); para (thb = [inc: (360 * bucles / 34,3 + inc)]) { thi = thb-inc; th = (thi-thf) * 34,3; thisBase = bases [piso (thb% 30)]; doPur = (thisBase <2); // el enlace base tiene un ángulo de -1,2 °; // no estoy muy seguro de cómo implementar eso baseFrac = (doPur? 0,55: 0,45); baseFInv = 1 - baseFrac; traducir ([0,0, hl * th / (360 * bucles)]) rotar ([- 1.2,0,0]) { if (drawMode == "all" || drawMode == "helix2") color ("rosa") lineTo ([hr * cos (th) * (baseFrac-0.15) + hr * cos (th + 120) * (baseFrac + 0.15), hr * sin (th) * (baseFrac-0.15) + hr * sin (th + 120) * (baseFrac + 0.15)], [hr * cos (th + 120), hr * sen (th + 120)]); si (th <(h1jump)) if (drawMode == "all" || drawMode == "helix1") color ("azul claro") lineTo ([hr * cos (th), hr * sin (th)], [hr * cos (th) * (baseFrac + 0.15) + hr * cos (th + 120) * (baseFrac-0.15), hr * sin (th) * (baseFrac + 0.15) + hr * sen (th + 120) * (baseFrac-0.15)]); if (drawMode == "all" || (drawMode == "A" && thisBase == 0) || (drawMode == "G" && thisBase == 1) || (drawMode == "C" && thisBase == 2) || (drawMode == "T" && thisBase == 3) ) color ((thisBase <1)? "verde": (thisBase <2)? "oro" : (thisBase <3)? "azul" : "rojo") traducir ([hr * cos (th) * baseFrac + hr * cos (th + 120) * baseFInv, hr * sin (th) * baseFrac + hr * sin (th + 120) * baseFInv]) rotar (180 + bAng + th) if (doPur) { purina (); } else {pirimidina (); }; if (drawMode == "all" || (drawMode == "A" && thisBase == 3) || (drawMode == "G" && thisBase == 2) || (drawMode == "C" && thisBase == 1) || (drawMode == "T" && thisBase == 0) ) si (th <(h1jump)) color ((thisBase <1)? "rojo": (thisBase <2)? "azul" : (thisBase <3)? "oro" : "verde") traducir ([hr * cos (th) * baseFrac + hr * cos (th + 120) * baseFInv, hr * sin (th) * baseFrac + hr * sin (th + 120) * baseFInv]) rotar (bAng + th) if (doPur) { pirimidina (); } else {purine (); }; } } if (drawMode == "all" || drawMode == "helix1") color ("azul claro") { traducir (helix_1 [len (helix_1) -1]) esfera (r = bbr, $ fn = 5); traducir (helix_1 [0]) esfera (r = bbr, $ fn = 5); } if (drawMode == "all" || drawMode == "helix2") color ("rosa") { traducir (helix_2 [0]) esfera (r = bbr, $ fn = 5); traducir (hélice_2 [len (hélice_2) -1]) esfera (r = bbr, $ fn = 5); }}
Licencia
Yo, el titular de los derechos de autor de este trabajo, lo publico bajo las siguientes licencias:
Se concede permiso para copiar, distribuir y / o modificar este documento bajo los términos de la Licencia de documentación libre GNU , Versión 1.2 o cualquier versión posterior publicada por la Free Software Foundation ; sin Secciones Invariantes, sin Textos de Portada y sin Textos de Contraportada. Se incluye una copia de la licencia en la sección titulada Licencia de documentación libre GNU .http://www.gnu.org/copyleft/fdl.htmlGFDLLicencia de documentación libre GNUciertocierto
compartir - copiar, distribuir y transmitir el trabajo
remezclar - adaptar el trabajo
Bajo las siguientes condiciones:
atribución : debe otorgar el crédito correspondiente, proporcionar un enlace a la licencia e indicar si se realizaron cambios. Puede hacerlo de cualquier manera razonable, pero no de ninguna manera que sugiera que el licenciante lo respalda a usted o su uso.
https://creativecommons.org/licenses/by/4.0 CC BY 4.0 Reconocimiento 4.0 de Creative Commons ciertocierto
Puede seleccionar la licencia de su elección.
Subtítulos
Agregue una explicación de una línea de lo que representa este archivo
inception<\/a>"}},"text\/plain":{"en":{"":"inception"}}},"{\"value\":{\"time\":\"+2014-12-18T00:00:00Z\",\"timezone\":0,\"before\":0,\"after\":0,\"precision\":11,\"calendarmodel\":\"http:\\\/\\\/www.wikidata.org\\\/entity\\\/Q1985727\"},\"type\":\"time\"}":{"text\/html":{"en":{"P571":"18 December 2014"}},"text\/plain":{"en":{"P571":"18 December 2014"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P571 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
comienzo
18 de diciembre de 2014
Historial del archivo
Haga clic en una fecha / hora para ver el archivo tal como apareció en ese momento.
{{Información | Descripción = Un polimorfismo de un solo nucleótido es un cambio de un nucleótido en una ubicación de un solo par de bases en el ADN. Creado con Inkscape v0.45.1. [modificado para eliminar las colas largas en el ADN] | Fuente = hecho a sí mismo | Fecha = 2007-07-06 | Autor = David Hall (~~
{{Información | Descripción = Un polimorfismo de un solo nucleótido es un cambio de un nucleótido en una ubicación de un solo par de bases en el ADN. Creado con Inkscape v0.45.1. | Fuente = hecho a sí mismo | Fecha = 2007-07-06 | Autor = David Hall (~~~) | other_versions =}}
Uso de archivos
Las siguientes páginas de la Wikipedia en inglés utilizan este archivo (no se enumeran las páginas de otros proyectos):