{"id":351,"date":"2014-03-30T18:53:45","date_gmt":"2014-03-30T17:53:45","guid":{"rendered":"http:\/\/descartesjs.org\/documentacion\/?p=351"},"modified":"2021-08-08T13:05:28","modified_gmt":"2021-08-08T12:05:28","slug":"graficos-3d","status":"publish","type":"post","link":"https:\/\/reddescartes.org\/documentacion\/graficos-3d\/","title":{"rendered":"Gr\u00e1ficos 3D"},"content":{"rendered":"<p><span style=\"font-size: 14px; line-height: 1.5em;\">Se llaman gr\u00e1ficos 3D a todos los objetos que se pueden dibujar en un <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=1749\">espacio R3<\/a>: puntos, segmentos, curvas, superficies y varios cuerpos formados por caras poligonales, as\u00ed como textos y macros.\u00a0Los gr\u00e1ficos 3D de una escena pueden editarse usando el panel de configuraci\u00f3n de gr\u00e1ficos 3D, al que se accede seleccionando \u00abgr\u00e1ficos 3D\u00bb en la ventana de edici\u00f3n. Ha de se\u00f1alarse que este panel est\u00e1 accesible s\u00f3lo si hay definido al menos un espacio\u00a0R3.<\/span><\/p>\n<p>El Panel de configuraci\u00f3n de gr\u00e1ficos 3D tiene este aspecto:<\/p>\n<p><a href=\"https:\/\/descartesjs.org\/documentacion\/wp-content\/uploads\/2014\/03\/panel_graficos_3D.jpg\"><img class=\"aligncenter size-full wp-image-1352\" src=\"https:\/\/descartesjs.org\/documentacion\/wp-content\/uploads\/2014\/03\/panel_graficos_3D.jpg\" alt=\"panel_graficos_3D\" width=\"835\" height=\"544\" srcset=\"https:\/\/reddescartes.org\/documentacion\/wp-content\/uploads\/2014\/03\/panel_graficos_3D.jpg 835w, https:\/\/reddescartes.org\/documentacion\/wp-content\/uploads\/2014\/03\/panel_graficos_3D-300x195.jpg 300w\" sizes=\"(max-width: 835px) 100vw, 835px\" \/><\/a><\/p>\n<p>A la izquierda aparece la lista de todos los gr\u00e1ficos de la escena (en este caso hay uno de cada uno de los tipos b\u00e1sicos). A la derecha aparece un panel (que var\u00eda un poco con cada tipo de gr\u00e1fico) en el que se pueden editar todos los par\u00e1metros que definen al objeto gr\u00e1fico seleccionado en la lista.<\/p>\n<p>Si se hace un clic sobre la etiqueta azul Gr\u00e1ficos, aparecer\u00e1 una ventana con un \u00e1rea de texto que contiene el c\u00f3digo de todos los gr\u00e1ficos 3D incorporados a la escena, uno en cada l\u00ednea. Este texto se puede editar manualmente y, pulsando aceptar, se actualiza el editor con los cambios realizados. Los autores experimentados encontrar\u00e1n este m\u00e9todo de edici\u00f3n muy c\u00f3modo y \u00fatil para cierto tipo de modificaciones.<\/p>\n<p>Para crear un nuevo gr\u00e1fico hay que hacer un clic sobre el bot\u00f3n + . Al hacerlo aparece una ventana de di\u00e1logo con una lista en la que debe escogerse el tipo de gr\u00e1fico que se desea crear.<br \/>\n<a href=\"https:\/\/descartesjs.org\/documentacion\/wp-content\/uploads\/2014\/03\/agregar1.jpg\"><img class=\"aligncenter size-full wp-image-354\" src=\"https:\/\/descartesjs.org\/documentacion\/wp-content\/uploads\/2014\/03\/agregar1.jpg\" alt=\"agregar\" width=\"194\" height=\"226\" \/><\/a><\/p>\n<p>Con el bot\u00f3n &#8211; se podr\u00e1 eliminar el gr\u00e1fico seleccionado y con el * duplicar un gr\u00e1fico y tomarlo como referencia para, modific\u00e1ndolo, obtener otro.<br \/>\nHay diez tipos de gr\u00e1ficos 3D b\u00e1sicos:\u00a0<a href=\"https:\/\/descartesjs.org\/documentacion\/?p=580\">punto<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=582\">segmento<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=584\">pol\u00edgono<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=586\">curva<\/a>,<a href=\"https:\/\/descartesjs.org\/documentacion\/?p=588\"> tri\u00e1ngulo<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=590\">cara<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=592\">pol\u00edgono regular<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=594\">superficie<\/a>, <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=596\">texto<\/a>,\u00a0y <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=1642\">macros<\/a>. En el men\u00fa anterior tambi\u00e9n aparecen <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=598\">figuras 3D<\/a> incorporadas para mayor comodidad a la hora de construir una escena a la que queramos incorporar alguna de ellas (Cubo, paralelep\u00edpedo, tetraedro, octaedro, dodecaedro, icosaedro, esfera, elipsoide, cono y esfera).<\/p>\n<h2><strong>Campos comunes<\/strong><\/h2>\n<p>Los paneles de configuraci\u00f3n de los distintos tipos de gr\u00e1ficos 3D se parecen mucho entre s\u00ed pues tienen varios campos comunes. La imagen muestra el panel de configuraci\u00f3n de una superficie. Los campos de las primeras tres l\u00edneas m\u00e1s el color los comparten todos los gr\u00e1ficos 3D, excepto los textos que, en lugar de rotini y posini, tienen texto. La tercera l\u00ednea la tienen todos los gr\u00e1ficos bidimensionales como caras, poliregs y superficies. La \u00faltima l\u00ednea s\u00f3lo aparece en superficies, polireg, curvas y algunos gr\u00e1ficos especiales como esfera y cono. En el caso de polireg y curvas s\u00f3lo aparece Nu.<\/p>\n<p><a href=\"https:\/\/descartesjs.org\/documentacion\/wp-content\/uploads\/2014\/03\/comunes_3D.jpg\"><img class=\"aligncenter  wp-image-355\" style=\"width: 703px; height: 439px;\" src=\"https:\/\/descartesjs.org\/documentacion\/wp-content\/uploads\/2014\/03\/comunes_3D.jpg\" alt=\"comunes_3D\" width=\"850\" height=\"541\" srcset=\"https:\/\/reddescartes.org\/documentacion\/wp-content\/uploads\/2014\/03\/comunes_3D.jpg 850w, https:\/\/reddescartes.org\/documentacion\/wp-content\/uploads\/2014\/03\/comunes_3D-300x190.jpg 300w\" sizes=\"(max-width: 850px) 100vw, 850px\" \/><\/a><br \/>\nEn la siguiente tabla se explican estos campos.<\/p>\n<div align=\"center\">\n<table style=\"width: 980px; height: 1201px;\" border=\"1\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>nombre<\/b><\/p>\n<\/td>\n<td width=\"80%\">S\u00f3lo se utiliza en el caso de los macros, sin embargo a veces conviene dar nombre a otros gr\u00e1ficos para distinguirlos unos de otros. Para referirse a un par\u00e1metro p de un macro cuyo nombre es <b>nom<\/b>, se utiliza el identificador <b>nom.p.<\/b><\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>espacio<\/b><\/p>\n<\/td>\n<td width=\"80%\">Se trata de un selector que tiene la lista de los espacios de tres dimensiones que se hayan definido en la escena. Si s\u00f3lo hay un espacio de tres dimensiones y \u00e9ste no tiene nombre, la lista aparece vac\u00eda. Si hay m\u00e1s de un espacio, entonces debe seleccionarse el espacio al cual ha de pertenecer el gr\u00e1fico.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>fondo<\/b><\/p>\n<\/td>\n<td width=\"80%\">Si se selecciona fondo, el gr\u00e1fico 3D s\u00f3lo se calcula una vez y se actualiza s\u00f3lo cuando se pulsa inicio. Cuando un gr\u00e1fico 3D no depende de los controles ni de los auxiliares, conviene definirlo como de<b> fondo<\/b> pues as\u00ed se ahorra trabajo al procesador que no tendr\u00e1 que calcularlo cada vez que haya un cambio en la escena.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>color<\/b><\/p>\n<\/td>\n<td width=\"80%\">Es un bot\u00f3n que se dibuja en el color seleccionado y en el que se dibujar\u00e1 el gr\u00e1fico. En el caso de las superficies es el color del anverso del gr\u00e1fico. El color por defecto de todos los gr\u00e1ficos es magenta. Haciendo un clic sobre el bot\u00f3n aparece la ventana de configuraci\u00f3n de colores (ver <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=656\">colores<\/a>).<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>color_reverso<\/b><\/p>\n<\/td>\n<td width=\"80%\">Bot\u00f3n del color en el que se dibuja en el color seleccionado y en el que se dibujar\u00e1 el reverso del gr\u00e1fico si se trata de un pol\u00edgono, una superficie o un macro (los gr\u00e1ficos de otro tipo no tienen reverso). El color del reverso por defecto de todos los gr\u00e1ficos es rosa. Haciendo un clic sobre el bot\u00f3n aparece la ventana de configuraci\u00f3n de colores (ver <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=656\">colores<\/a>).<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>dibujar-si<\/b><\/p>\n<\/td>\n<td width=\"80%\">Campo de texto que puede contener una expresi\u00f3n booleana. El gr\u00e1fico se dibuja si la expresi\u00f3n es vac\u00eda o si la expresi\u00f3n tiene valor verdadero (o &gt;0). Si la expresi\u00f3n depende de x o y y el gr\u00e1fico es una ecuaci\u00f3n, entonces s\u00f3lo se dibujan los puntos de la gr\u00e1fica que satisfacen la expresi\u00f3n. Si el valor de x o y hace que la expresi\u00f3n no se cumpla en el momento en que se va a dibujar un objeto, entonces no se dibuja (es responsabilidad del autor controlar el valor de las variables x e y fuera de las ecuaciones).<\/p>\n<p style=\"text-align: center;\">\u00a0 \n<!-- iframe plugin v.4.5 wordpress.org\/plugins\/iframe\/ -->\n<iframe src=\"https:\/\/descartesjs.org\/repositorio\/NuevosControles-JS\/NuevosControles.html\" width=\"355\" height=\"245\" scrolling=\"yes\" class=\"iframe-class\" frameborder=\"0\"><\/iframe>\n<\/p>\n<p style=\"text-align: center;\">(puede descargar la\u00a0escena anterior desde <a href=\"https:\/\/descartesjs.org\/repositorio\/NuevosControles-JS.zip\">este enlace<\/a>)<\/p>\n<p>La escena anterior utiliza el atributo dibujar-si para cambiar el poliedro regular que presenta.\u00a0En ella se ha puesto que cada poliedro se dibuje s\u00f3lo si el n\u00famero de caras es el que le corresponde.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>expresi\u00f3n<\/b><\/p>\n<\/td>\n<td width=\"80%\">Debe ser una expresi\u00f3n cuyo contenido var\u00eda seg\u00fan el tipo de gr\u00e1fico 3D.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>familia<\/b><\/p>\n<\/td>\n<td width=\"80%\">Selector que al activarse convierte al objeto gr\u00e1fico en una familia de objetos parametrizada por la variable cuyo nombre aparece en el campo de texto a la derecha de este selector.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><strong>par\u00e1metro<\/strong><\/p>\n<\/td>\n<td width=\"80%\">Nombre de la variable con la que est\u00e1 parametrizada la familia de objetos gr\u00e1ficos 3D.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><strong>intervalo<\/strong><\/p>\n<\/td>\n<td width=\"80%\">Intervalo de variaci\u00f3n de la variable que parametriza la familia de objetos gr\u00e1ficos 3D.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><strong>pasos<\/strong><\/p>\n<\/td>\n<td width=\"80%\">N\u00famero de subintervalos en los que se subdivide uniformemente el intervalo del par\u00e1metro para definir los elementos de la familia.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>rotini<\/b><\/p>\n<\/td>\n<td width=\"80%\">Rotaci\u00f3n inicial. Vector de tres componentes (A,B,C) cuyos elementos son rotaciones (en grados sexagesimales) alrededor del eje x, del eje y y del eje z, respectivamente que se aplicar\u00e1n sobre el objeto gr\u00e1fico antes de dibujarse. Si se agrega la palabra &#8216;Euler&#8217; antes de la terna ordenada, es decir, se escribe Euler(A,B,C), entonces los \u00e1ngulos A, B y C se interpretan como rotaciones de Euler, es decir, A es una rotaci\u00f3n alrededor del eje z, B alrededor del nuevo eje x (el que se obtiene tras la primera rotaci\u00f3n) y C alrededor del nuevo eje z (el que se obtiene despu\u00e9s de las primeras dos rotaciones).Nota: Se aplica antes que la traslaci\u00f3n inicial.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>posini<\/b><\/p>\n<\/td>\n<td width=\"80%\">Es un vector de tres componentes <b>(A,B,C) <\/b>que representa una traslaci\u00f3n que se aplicar\u00e1 al objeto gr\u00e1fico antes de dibujarse. Nota: Se aplica despu\u00e9s de la rotaci\u00f3n.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>rotfin<\/b><\/p>\n<\/td>\n<td width=\"80%\">Rotaci\u00f3n final. Vector de tres componentes (A,B,C) cuyos elementos son rotaciones (en grados) alrededor del eje x, del eje y, y del eje z, respectivamente que se aplicar\u00e1n sobre el objeto gr\u00e1fico antes de dibujarse. Si se agrega la palabra &#8216;Euler&#8217; antes de la terna ordenada, es decir, se escribe Euler(A,B,C), entonces los \u00e1ngulos A, B y C se interpretan como rotaciones de Euler, es decir, A es una rotaci\u00f3n alrededor del eje z, B alrededor del nuevo eje x (el que se obtiene tras la primera rotaci\u00f3n) y C alrededor del nuevo eje z (el que se obtiene despu\u00e9s de las primeras dos rotaciones). Nota: Se aplica despu\u00e9s de la traslaci\u00f3n inicial y antes de la traslaci\u00f3n final.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>posfin<\/b><\/p>\n<\/td>\n<td width=\"80%\">Traslaci\u00f3n final.Vector de tres componentes (A,B,C) que representa una traslaci\u00f3n que se aplicar\u00e1 al objeto gr\u00e1fico antes de dibujarse. Nota: Se aplica despu\u00e9s de la rotaci\u00f3n final.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>cortar<\/b><\/p>\n<\/td>\n<td width=\"80%\">Selector que indica si la superficie debe ser cortada por los gr\u00e1ficos del mismo espacio que la preceden en la lista en caso de intersecci\u00f3n. Es recomendable mantener esta opci\u00f3n siempre activada, a menos que se est\u00e9n utilizando muchos gr\u00e1ficos que no se intersecan y convenga hacer un poco m\u00e1s r\u00e1pida la ejecuci\u00f3n.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>aristas<\/b><\/p>\n<\/td>\n<td width=\"80%\">Se aplica a caras, polireg, superficies y algunos gr\u00e1ficos especiales. Es un selector que determina si las orillas de las caras que forman el objeto deben dibujarse o no. Las orillas se dibujan en color gris.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>modelo<\/b><\/p>\n<\/td>\n<td style=\"width: 80%;\">Se aplica a caras, polireg, superficies y algunos gr\u00e1ficos especiales. Es un selector con cuatro opciones: <b>color, luz, metal<\/b> y <b>alambre<\/b>. Son las cuatro formas de dibujar las caras del objeto gr\u00e1fico.<\/p>\n<ul>\n<li><b>color<\/b> hace que se dibuje con colores fijos.<\/li>\n<li><b>luz<\/b> hace que el color sea m\u00e1s o menos brillante seg\u00fan la orientaci\u00f3n, para dar sensaci\u00f3n de iluminaci\u00f3n.<\/li>\n<li><b>metal <\/b>es como luz, pero con brillos m\u00e1s contrastados para dar la impresi\u00f3n de que la superficie es met\u00e1lica.<\/li>\n<li><b>alambre<\/b> dibuja s\u00f3lo las orillas en el color seleccionado.<\/li>\n<\/ul>\n<p>El valor por defecto del <b>modelo<\/b> es <b>metal<\/b>. <b><i>Nota:<\/i><\/b> Con modelo <b>alambre<\/b> las aristas se dibujan en el color seleccionado y no en gris como ocurre en los otros modelos.<\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>Nu<\/b><\/p>\n<\/td>\n<td width=\"80%\">Se trata de un campo de texto para definir el n\u00famero <b>Nu.<\/b> Las curvas se definen param\u00e9tricamente y en ellas se utiliza siempre u como par\u00e1metro. <b>Nu<\/b> es el n\u00famero de intervalos en los que se parte el segmento unitario <b>[0,1] <\/b>para dibujar la curva. Las superficies se definen tambi\u00e9n en forma param\u00e9trica y se utlilizan los par\u00e1metros u y v ambos recorriendo el intervalo unitario <b>[0,1].<\/b> Nu es el n\u00famero de intervalos en los que se parte el intervalo para el par\u00e1metro <b>u.<\/b><\/td>\n<\/tr>\n<tr>\n<td width=\"18%\">\n<p align=\"center\"><b>Nv<\/b><\/p>\n<\/td>\n<td width=\"80%\">Se trata de un campo de texto para definir el n\u00famero <b>Nv<\/b>. Las superficies se definen en forma param\u00e9trica y se utlilizan los par\u00e1metros u y v ambos recorriendo el intervalo unitario <b>[0,1]. Nv<\/b> es el n\u00famero de intervalos en los que se parte el intervalo para el par\u00e1metro<b> v<\/b>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h3><strong>Variables para la escala y los giros<\/strong><\/h3>\n<p>En gr\u00e1ficos 3D se cuenta con unas variables que permiten conocer y controlar los \u00e1ngulos de giro del espacio : nombre.<strong>rot.y<\/strong> y nombre.<strong>rot.z<\/strong> donde \u00abnombre\u00bb es el nombre del espacio. Tambi\u00e9n se dispone de las variables nombre<strong>.escala<\/strong> y nombre<strong>.observador<\/strong> que sirven para controlar la escala y la distancia aparente al observador, ambas se miden en p\u00edxeles. La siguiente escena ilustra expl\u00edcitamente el uso de estas variables. Observe que si el usuario cambia la escala o gira el espacio arrastrando el rat\u00f3n, los controles num\u00e9ricos se actualizan con los nuevos valores de la escala y las rotaciones.<\/p>\n<p style=\"text-align: left;\">\n<!-- iframe plugin v.4.5 wordpress.org\/plugins\/iframe\/ -->\n<iframe src=\"https:\/\/descartesjs.org\/repositorio\/documentacion_4D\/graficos_3D_JS\/EscalaYRotacion.html\" width=\"720\" height=\"520\" scrolling=\"yes\" class=\"iframe-class\" frameborder=\"0\"><\/iframe>\n<\/p>\n<h3><strong>Fondo<\/strong><\/h3>\n<p>El atributo fondo indica que el gr\u00e1fico no va a modificarse, por lo tanto si \u00abfondo=s\u00ed\u00bb entonces los cambios de valores no deben cambiar el gr\u00e1fico. Esto debe usarse siempre que sea posible para ahorrar trabajo al procesador. En realidad, s\u00f3lo cuando todos los gr\u00e1ficos R3 de un espacio tienen \u00abfondo=s\u00ed\u00bb es que se ahorra trabajo. La escena anterior es un ejemplo donde se puso \u00abfondo=s\u00ed\u00bb en todos los gr\u00e1ficos 3D. Abajo aparece la misma escena pero con fondo desactivado en uno s\u00f3lo de los gr\u00e1ficos. Puede que pueda observar (dependiendo del procesador que disponga) que la reacci\u00f3n a los giros provocados por los controles num\u00e9ricos resultan mucho m\u00e1s lentos en esta segunda escena.\u00a0La raz\u00f3n es que en este caso, cada vez que se cambia un par\u00e1metro mediante uno de los controles num\u00e9ricos, todas las superficies y sus intersecciones vuelven a calcularse, mientras que en la primera escena todo eso se evita.<\/p>\n\n<!-- iframe plugin v.4.5 wordpress.org\/plugins\/iframe\/ -->\n<iframe src=\"https:\/\/descartesjs.org\/repositorio\/documentacion_4D\/graficos_3D_JS\/EscalaYRotacion2.html\" width=\"720\" height=\"520\" scrolling=\"yes\" class=\"iframe-class\" frameborder=\"0\"><\/iframe>\n\n<p style=\"text-align: center;\">(Puede descargar esta escena y la anterior desde <a href=\"https:\/\/descartesjs.org\/repositorio\/documentacion_4D\/graficos_3D_JS.zip\">este enlace<\/a>)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Se llaman gr\u00e1ficos 3D a todos los objetos que se pueden dibujar en un espacio R3: puntos, segmentos, curvas, superficies y varios cuerpos formados por caras poligonales, as\u00ed como textos y macros.\u00a0Los gr\u00e1ficos 3D de una escena pueden editarse usando el panel de configuraci\u00f3n de gr\u00e1ficos 3D, al que se accede seleccionando \u00abgr\u00e1ficos 3D\u00bb en la ventana de edici\u00f3n. Ha de se\u00f1alarse que este panel est\u00e1 accesible s\u00f3lo si hay definido al menos un espacio\u00a0R3. El Panel de configuraci\u00f3n de gr\u00e1ficos 3D tiene este aspecto: A la izquierda aparece la lista de todos los gr\u00e1ficos de la escena (en este<\/p>\n<a class=\"more-link\" rel=\"nofollow\" href=\"https:\/\/reddescartes.org\/documentacion\/graficos-3d\/\">[Leer m\u00e1s...]<\/a>","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[39],"tags":[110],"_links":{"self":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts\/351"}],"collection":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/comments?post=351"}],"version-history":[{"count":72,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts\/351\/revisions"}],"predecessor-version":[{"id":3554,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts\/351\/revisions\/3554"}],"wp:attachment":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/media?parent=351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/categories?post=351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/tags?post=351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}